【发布时间】:2014-05-25 21:48:42
【问题描述】:
假设我想安装一个新包。为此,我需要记住 M-x package-install RET package-name 是键入 emacs 以执行此操作的击键序列。
如果我忘记了这个按键,我的解决方法是搜索我想要完成的操作并浏览结果,直到找到正确的命令。
我怀疑有更好的方法来查找 emacs 命令以及它们的作用。如果是这样,有人可以指点我吗?
谢谢!
【问题讨论】:
标签: emacs
假设我想安装一个新包。为此,我需要记住 M-x package-install RET package-name 是键入 emacs 以执行此操作的击键序列。
如果我忘记了这个按键,我的解决方法是搜索我想要完成的操作并浏览结果,直到找到正确的命令。
我怀疑有更好的方法来查找 emacs 命令以及它们的作用。如果是这样,有人可以指点我吗?
谢谢!
【问题讨论】:
标签: emacs
为此,第一个 goto 命令是 apropos-command,它通过使用 C-h a(或 M-x apropos-command)调用,然后键入该命令的搜索查询。
如果您知道函数的名称,则可以使用运行 describe-function 命令的C-h f 来获取有关该命令的更多详细信息。
最后,如果您知道键序列,并且想了解有关您运行的命令的更多详细信息,您可以使用 C-h k - describe-key 让 emacs 在键入序列时告诉您该命令的命令和文档键。
您可以通过输入C-h ?获得更完整的帮助命令列表。
【讨论】:
C-h k 是C-h c 的信息更丰富的版本(如果您有函数名而不是键绑定,则显示与C-h f 相同的详细信息)。另请注意,您可以在使用 describe-function 输入函数名称时使用制表符补全,因此当您不记得整个名称时,您可以使用该机制来提供帮助。
内置手册是其他显而易见的地方,您可以使用其索引搜索每个手册,或搜索手册的全文。
【讨论】:
如果您使用Icicles,则每个读取命令名称的命令都内置了等效的apropos-command,您可以动态更改模式以调整匹配集。见apropos completion。
而对于apropos-command,您需要在一开始就提供正则表达式或要匹配的关键字的完整列表(并且您需要正确设置它们),而使用 Icicles 您可以修改/更正它们增量,您可以逐步添加更多模式 (progressive completion)。
当您的模式有一组匹配项时,您可以看到完整的 doc for each on demand,而不是搜索来自 apropos-command 的输出(无论如何只显示部分文档)。
此外,Icicles extends the standard apropos 以各种方式命令。
【讨论】: