使用vim时,在插入模式下按C-p可以自动补全并获取缓冲区中任何单词列表。
在emacs中是否有类似的命令?
在emacs中是否有类似的命令?
hippie-expand
之外,这里还有另外两种标准的Emacs单词自动完成方法:
M- /
或C-M- /
- 动态缩写扩展(也称为dabbrev
)。请参阅Emacs手册,节点Dynamic Abbrev Expansion
。
M-RET
或在dynamic-completion-mode
中按C-RET
- 标准的Emacs库completion.el
。
库completion.el
很古老,显然不太知名,但它非常好用。您不仅可以完成同一缓冲区中的单词,还可以完成过去(程序符号等)中使用过的单词,包括过去的Emacs会话。
您最常用的完成优先级最高。当打开dynamic-completion-mode
时,记录在磁盘上的“数据库”中会记录您的操作,例如您键入或遍历的单词等。要充分利用库completion.el
,请阅读文件中的Commentary
。没有其他文档,但Commentary
非常清晰(如果不是完全最新的话)。
库Icicles增强了上述两种单词自动完成方法:dabbrev
和complete
。当有多个可能的完成时,它可以让您使用更好的匹配选项(例如子字符串、正则表达式,而不仅仅是前缀)来选择一个。
hippie-expand
命令进行自动完成。要绑定到Alt + /,请使用:(global-set-key "\M-/" 'hippie-expand)
(global-set-key (kbd "M-/") 'hippie-expand)
。 - Squidly