关于编辑:你如何学习合适的Emacs?

How do you learn proper Emacs?

我即将学习Emacs,已经完成了教程,并借用了有关Emacs的O'Reilly书籍。 但问题仍然是 - 你如何学习良好的Emacs工作流程? 我想,你不会像你使用的那样使用Emacs,例如Vim。

我的这个问题似乎很有意思:
- 我在哪里可以找到使用Emacs的专业人士视频?


我无法相信没有人提到这一点,但阅读与Emacs捆绑在一起的信息页面是了解隐藏功能的好方法。无论何时需要中断编码,请点击M-x info并选择随机页面进行阅读。您的emacs功能将极快地提高。

了解emacs的自我记录如何帮助您工作也很重要。比如说,您想知道如何缩放字体大小。您可以询问emacs,而不是打断您的流量并在此处,或在IRC或Google上询问!只需点击C-h a(M-x command-apropos)并输入搜索词,在我们的例子中为scale。如果存在匹配的功能,则会显示其名称,键绑定和文档。有,现在你刚刚发现text-scale-increasetext-scale-decrease

还有其他自学文档功能可以学习C-h m将告诉您当前主要和次要模式中可用的键绑定和命令。这是发现您不知道的功能的好方法。

"通过渗透学习"的另一种方法是M-x customize-group用于您经常使用的模式。 (customize是几乎所有模式都支持的交互式配置编辑器。)

最后要做的是学习Emacs Lisp。使用现有工具很好,但有时您需要自己的工具。如果你试图避免学习Lisp,那么你将永远陷入不太正常的事情,这是一种耻辱。

Emacs是一个很好的自定义环境。 Emacs包含两个可通过M-x info查看的Lisp手册。它是自我记录的,因此您可以说C-h fM-x describe-function来获取任何功能的文档。您甚至可以按TAB ENT跳转到该功能的源代码,看看它是如何实现的。当你想到"我希望我有一些像foo这样的东西,但只是略有不同的东西时,这是很棒的。"您可以阅读foo的实现方式,在*scratch*缓冲区中进行更改,然后查看是否喜欢此更改。没有编辑/编译/测试周期。您按一个键,您的emacs会话立即具有您刚才写的功能。

学习emacs的工作量越多,emacs就越能让你的工作更轻松。


一旦掌握了基础知识(打开/关闭文件,导航,基本编辑),就可以使用它。和许多其他工具一样,练习也很完美......

但是,我会花一些时间来改进你当前使用编辑器的方法,但是作为正常工作流程的一部分,而不是仅仅为了切入正切而学习东西。

我发现一些有用的资源是EmacsWiki和Planet Emacsen博客。我使用两者,主要是通过使用Planet Emacsen获取"灵感",然后徘徊到EmacsWiki并在那里进行特定主题的拖网。我发现,除非你至少有一个模糊的想法,你想要的是什么,可用的信息只会淹没你而不是实际上有用。

更不用说StackOverflow上有一些非常有用的资源,例如这里的问题。 Emacs是一个非常强大的工具,它往往能够比单个人需要做更多的工作,但最终可以让您精确挑选所需的部件。


我的建议就是停止使用除Emacs之外的任何东西,当遇到问题时,看看你是否可以在Emacs中解决它,然后再回头(如果你没有时间或者它不起作用)。至于工作流程,它与你通常工作的几乎相同。即对于正常的ide会话,您将正常打开/编辑文件,然后正常提交(在C-x v v中)。


我同意这里的其他海报,你只需要使用它!我是这样做的:

一旦我掌握了基础知识(可以在缓冲区之间,打开/保存文件等),我打印出一张参考卡并保持方便。这个不错。查看它只是为了让你知道它上面有什么,然后每当你发现自己在卡片上反复做某事时,就开始使用快捷方式!在你知道它之前,你会记住相当多的命令。但请记住,可能没有人使用emacs可以做的所有事情。

当你最终发现自己在做一些没有捷径的事情时,那是学习键盘宏的好时机。一旦你得到它们,你会发现它们随处可见!从那里开始写一个elisp(如果你是一个程序员)。

关于emacs的好处是你不需要"emacs工作流程",emacs适用于你的工作流程!


您无需学习emacs工作流程。一旦你完成了教程并掌握了必需品,你将不得不采用某种程度的一夫一妻制,除了Emacs之外别无他法。最终你会想到你真正希望存在的功能;大部分时间其他人都会拥有,而解决方案只需一次搜索!随着时间的推移,你会忍不住学习,最终你会发现你将开发自己的个人工作流程。

如果你想加速这个过程,Emacs wiki有各种各样的技巧,但最好的方法就是用Emacs来做。


你可以看一下Bram Molenaar关于高效短信的讨论,http://video.google.com/videoplay?docid = 2538831956647446078& ei = EqiGSau8KZ -QiQLi-Nn8Cg& q = bram+molenaar+editing

虽然他是一个vim家伙(他写的),你可能会得到一些关于如何最好地使用适用于emacs的文本编辑器的想法。


说实话,我所做的只是学习我需要的键绑定。我没有充分利用emacs,因为我不需要它的全部潜力。我的建议是只学习你需要的东西,不要担心你不需要的东西。每天学习一个新的键绑定,在大约300年内你会全部了解它们;)


你如何为任何事物学习"良好的工作流程"?通过使用它,了解它,使它成为你的。没有"正确"使用Emacs。

至于了解它:问Emacs - 使用它的帮助系统。这也有帮助:http://www.emacswiki.org/emacs/EmacsNewbieWithIcicles


如前所述,最好的建议是在明年只使用Emacs。一旦你开发了手指记忆,事情变得容易多了。


我现在正在使用所有平台上的旧Amiga时代使用emacs。

使用emacs的最佳方式是好奇心。我仍然经常使用apropos(C-h a)和M-x(用于长函数名而不是键绑定)来查找功能。

"正确使用"Emacs的一个关键概念是,学习非常简单的elisp(一个简单的lisp派生词)并编写自己的小助手(自己的评论风格,下划线,模板),并知道在哪里寻找改变价值观(标签大小,编译器,电子邮件)

第三件事:一切都在emacs中:我使用dired(目录编辑器)来浏览文件。我为所有文本文件使用了大量缓冲区(对于每种类型的文件(c,ruby,list,sql,latex,...)都有适当的模式),这些模式在退出emacs时存储并在调用时恢复。我从emacs启动编译器并使用跳转到错误功能。

宏是日常工作(通过代码进行扫描并在途中进行更改)。

我喜欢图片模式,它允许向下键入替换,这样可以轻松重新编号常量块(很好的旧c #defines))

有一座休山可以登山,但是如果你到达山顶,你可以看到整个世界都在你的脚下,再也不想错过这种体验。我知道,周围有许多优秀的编辑(我通过Eclipse工作)


这就是Emacs的强大功能,您可以按照自己喜欢的方式使用它。你只需要根据自己的喜好进行配置。