使用Emacs有各种各样的优点,但对于那些对通常的Win32应用程序感到满意的人来说,它带有类似墙的学习曲线.对于大多数其他编辑器,可以开始使用它们,然后随时了解其他功能和增强功能.
如何直接使用Emacs,目的是达到你真正喜欢使用Emacs而非其他编辑器或应用程序的地步?
编辑 - 尝试澄清问题:我已经完成了教程,阅读了一些文档等等,然后很快我想快速编辑一些文本后,我就更容易使用另一个编辑器,我已经知道了.我需要做什么,这样我不仅可以选择其他更简单的编辑器,而且我实际上更喜欢使用Emacs,以及如何尽快到达这里?如果是Emacs的训练轮怎么办?
Jon*_*ell 43
学习如何使用Emacs的最重要的事情是...(鼓励请)学习如何使用Emacs.
好的,好的,好的.这是一个愚蠢的答案,这是一个重言式,但这是真的.如果你启动Emacs,并想一想自己"我怎样才能在源代码树中找到'foobar'这个词的每个实例?" 你可以做的最糟糕的事情是点击Alt+ Tab并访问谷歌.
认真.
学习帮助系统及其工作原理是您可以做的最好的事情.只需轻轻一按,我就可以轻松获取所需的所有信息.
你可以做的下一个最好的事情就是安装一个名为Icicles的精美小包,它有一些非常常规的完成功能.安装完成后,只要知道迷你缓冲器要求某种输入,你现在可以使用正则表达式.
这将如何适用于查找源树中的每个文件?好吧,你打了Mx,然后输入"find".在那之后,你可以点击(例如)Shift+ Tab并且Icicles会启动,找到每个带有"find"前缀的命令.或者,你可以做Mx.找.它会给你任何带有find的命令.
建立一个备忘单.只需保存一个保存的缓冲区,其中包含您经常使用的所有键盘快捷键.彻底删除你知道的那些,并拿起新的.在大多数情况下,当您执行Mx命令时,消息缓冲区将告诉您该命令的键盘快捷键是什么(如果有的话).
学习.键盘.宏.
学习.Emacs的.Lisp.
Steven Huwig关于使用一些杀手级应用程序的想法很好.当您想要使用它时,Emacs更易于使用.对我来说,这是Planner Mode.(我刚刚转到Org模式,它甚至更好.)
Ste*_*wig 14
我认为最容易找到一个"杀手级应用程序"或两个在Emacs中效果最好的应用程序.对我来说,这是Oracle的SQL编辑和交互模式.一旦你已经将Emacs用于这个杀手级应用程序,那么在Emacs而不是其他编辑器中打开其他文档会更具吸引力.
潜在的杀手级应用:
学习有效地使用Emacs本质上是一个缓慢的过程,但它是值得的.
立即设置.emacs文件.你会想要自定义它.这听起来很愚蠢,但对该文件进行某种源代码控制也会有所帮助.
为了更容易了解Emacs的内脏,请添加到.emacs:
(defalias 'ap 'apropos)
然后当你想看看是否有命令做"某事"时,输入"[Alt-x] ap [输入]某事[输入]".Emacs有自己的名字,所以有时很难找到东西("猛拉"?严肃地说?像其他人一样把它称为"切"!)
"[Ctrl-h f] function-name [enter]"查找该功能的帮助.
"[Ctrl-h m]"显示有关当前模式的详细信息,例如特定于该模式的键绑定.
学习使用Ctrl-s和Ctrl-r进行增量搜索.所有文本编辑器都需要具备此功能.
将键绑定添加到.emacs中,例如:
(define-key global-map (kbd "M-z") 'redo) (define-key global-map (kbd "C-z") 'undo)
获取redo.el包使Emacs的重做更少.
iswitchb-mode非常宝贵.它允许您同时打开几十个缓冲区,并在眨眼之间切换它们.设置iswitchb并添加到.emacs:
(iswitchb-mode) (define-key global-map (kbd "M-RET") 'iswitchb-buffer)
要评估emacs-lisp表达式,请将表达式键入缓冲区,将光标放在其后面,然后键入"[Ctrl-x Ctrl-e]".这使您可以轻松地尝试不同的自定义.
请记住,在键入类似的序列时,您不必放弃ctrl.
使用"occurrence"函数查看字符串在缓冲区中的位置.以下是一些方便的功能和键绑定:
(defun word-at-point ()
(thing-at-point 'word)
)
(defun word-at-point-or-selection ()
(if mark-active
(regexp-quote (buffer-substring (mark) (point)))
(concat "\\")
)
)
(defun find-word-at-point ()
(interactive)
(occur (word-at-point-or-selection))
)
(define-key global-map (kbd "C-o") 'find-word-at-point)
(define-key isearch-mode-map (kbd "C-o")
(lambda ()
(interactive)
(let ((case-fold-search isearch-case-fold-search))
(occur (if isearch-regexp isearch-string
(regexp-quote isearch-string))))))
关于如何加快速度的想法:
我已经使用Emacs超过15年了,我每天通过做上述事情来学习新东西.
| 归档时间: |
|
| 查看次数: |
14741 次 |
| 最近记录: |