我该从ErgoEmacs开始学习Emacs吗?

17

我刚开始接触Emacs,完成了教程。作为长期使用Windows的用户(我在Win7上运行Emacs),快捷键感觉不太直观,但我已经做好了学习这些命令的准备。

但是,最近我发现了ErgoEmacs包,我在想是否应该:

  • 从ErgoEmacs开始,然后过渡到普通的快捷键
  • 永远使用ErgoEmacs
  • 一开始坚持使用普通绑定,然后在我的技能提高后根据自己的需要自定义它们?

你认为哪个选项可以让我在未来多年的使用中更加高效

尽管我目前使用Windows,但我计划在未来12个月内转向Mac或Linux进行日常使用。

顺便说一句,我是否建议安装http://github.com/technomancy/emacs-starter-kit/?这会与ErgoEmacs产生冲突吗?

我使用Emacs的原因是尝试Org-Mode,但我希望将其用作未来一段时间内的所有编辑器,并且可能还会用于电子邮件等其他事情。

如果有人可以帮忙解决Windows上的配置问题并帮助设置color-theme,那就太好了-https://superuser.com/questions/167110/how-to-use-emacs-color-theme-on-windows-and-help-with-the-emacs-emacs-d

6个回答

21
我不建议从ErgoEmacs开始学习。
我建议从vanilla Emacs开始。试用一下看看你是否喜欢。绑定方面已经有了相当多的思考,默认绑定是自洽的,且在主要模式下表现一致。如果你发现某些绑定让你非常不满意,那么就改变它们——通过加载你喜欢的功能(ErgoEmacs,CUA模式,(恶心)Viper)。
成为最有效率的使用者的方法是将其定制以适应你的需求。这需要时间才能实现。我已经使用Emacs 17年了,仍在定制它以提高我的工作流程。认为你只需采用像ErgoEmacs这样的工具就能成为最有效率的Emacs(或任何工具)使用者是幼稚的。
关于ErgoEmacs,对于那些只使用简单文本编辑器或经常使用鼠标的人来说,键绑定可能更容易。通过覆盖C-cC-x前缀映射,你失去了许多其他功能的访问权,否则你可能不会学到或知道。此外,通过远离标准的Emacs术语,ErgoEmacs使你无法与Emacs社区中的其他人进行良好的沟通。
此外,通过熟悉Emacs的默认绑定,当你需要在另一个人的环境中工作时,你就不会觉得那么困难。

ErgoEmacs 是一个人关于如何在 Emacs 中获得最舒适体验的观点,欢迎您使用。但如果您的目标是成为一名熟练的 Emacs 用户,仅依靠这个观点可能会有所限制。


2
事物是会变化的。如果一款工具几年不进行维护,人们就会开始放弃它。同样地,随着最近的软件包系统集成到Emacs 24中,很快就不再需要理解emacswiki风格的术语了。如果我们不是强迫新手使用旧的术语和人机交互方式,而是更新函数名称、快捷键和文档等方面,比如只在最流行的几个软件包中进行更新,那么一切可能会比我们想象的更快恢复正常。 - amynbe

21

我不同意这些评论。虽然我只使用Emacs 15年,但当我出现"emacs pinky"(手指疼痛)的情况时,我就转向ErgoEmacs键(没有使用他们提供的Windows二进制文件)。Emacs界面很糟糕,其中一部分是历史原因导致的,另一部分则是糟糕的设计思想(移动键应该按照空间布局而非首字母排序)。我认为ErgoEmacs并不完美,但比Emacs好得多。ErgoEmacs也经过深思熟虑。Yank/Kill功能给你Emacs的全部功能(大多数),但提供了更合理的接口。他也成功地重载了一些函数,使其根据上下文执行正确的操作(大写、去除空格和其他操作)。

我已根据自己的需求对其进行了一些定制(这就是Emacs的用途),我禁用了C-c/x/v等快捷键,因为我愿意只使用M-c/x/v。CUA现在似乎工作得很好,但为什么要冒险呢?

我建议的另一件事是将Ctrl键移动到Alt键旁边。最好在空格键两侧都有一个Alt和Ctrl键。这将大大改善你的手部情况。


4
我喜欢交换大写锁定键和Ctrl键,这样我就可以用小指按Ctrl键。 - aaronasterling

7

我很惊讶没有人提到将 CAPS LOCK 键重新映射为 CTRL。对我来说这感觉更好,但我已经知道一些命令。它不能避免 Emacs 小指疲劳,但如果你弹吉他,你可能会注意到一些小指力量和灵活性的溢出效益!


6
我没有使用过ErgoEmacs。但是有一些关于其有效性的推荐,还有一种部分采用它的细致方法。它似乎接受了一些用户中心测试。听起来很有吸引力,我想自己试试。
话虽如此,作为一位多年的Emacs老手,我大部分时间都在Windows版本上使用,我认为学习Emacs的古怪键(例如C-a、C-e、C-w)和键前缀(如C-x和C-c)非常有益。(例如在Emacs中,像emacsers那样粘贴)。尽管它是一个非常“可配置”的编辑器,但Emacs和像org-mode这样的主要添加组件具有绑定的严格约定。也许可以改变这种行为,甚至可能很容易,但这听起来像是为了Emacs而学习Emacs。
学习kill/yank键有助于在使用bash/zsh shell和其他欢迎Emacs用户的老式程序时,实现兼容按键。例如,在zsh上,M-y实现了类似Emacs的多次粘贴功能。
我的一些绑定已经定制好了。我不能没有C-z上的撤销操作。我将C-q和C-l重新绑定为自己的前缀映射,并放置任何我想要的内容。
就org-mode本身而言,您将使用大量的大纲可见性进行TAB操作,并按下C-c C-c进行上下文敏感命令。我记不住每个基于C-c的小按键。因此,我建议保留菜单栏。

5

我认为很难找到那些在多年使用中都有着普通Emacs和Ergo Emacs丰富经验的人。我自己从未听说过后者,但我同意piyo的看法,它听起来非常有趣,尽管我不太可能使用它——我已经习惯了标准键,不想改变(这就是为什么我认为很难找到那些有着丰富经验的人)。

如果ErgoEmacs确实是一种更符合人体工程学的使用Emacs的方式,那么使用它显然有明显的健康益处,所以当然可以考虑将其作为永久使用的选择。除了按键绑定之外,其他更改似乎都集中在更直观地从其他编辑器过渡到Emacs上,但是如果你打算花费多年时间学习Emacs,那么我认为并没有太多可获得的收益。不过,如果ErgoEmacs的菜单可以使有用的功能更加清晰明了,那么至少浏览一下也会有价值。

像Trey一样,我怀疑使用ErgoEmacs会使与更广泛的Emacs社区互动变得更加困难。这可能可以通过确保您“了解”ErgoEmacs与普通Emacs的差异,以便您可以在两者之间进行转换来缓解(再次强调,我认为Ergo Emacs的可能人体工程学优势是其主要优点,因此可能值得额外的学习以保留这一点)。


2
短答案是“不”。您的前提是您已经决定花时间学习Emacs。ErgoEmacs的前提有两个:它被认为更符合人体工程学,它被认为更简单、更现代化,因此吸引了更广泛的用户群体。
前者是一个棘手的说法。说某件事更符合人体工程学很容易,但实际上做到这一点很难。在Emacs的情况下,符合人体工程学的方法是使用程序员键盘(如Kinesis)和双脚垫(一个用于Meta,一个用于Control),从而避免大多数多指组合的需要。像我这样的人已经有20多年的使用经验。
他们的第二个前提是要吸引更广泛的受众,这与您无关。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接