让YASnippet和viper-mode在emacs中协同工作

时间:2010-09-11 00:02:57

标签: plugins emacs viper-mode

我在emacs中使用viper-mode,但我也想使用YASnippet。但是,当我启用viper-mode并尝试通过YASnippet使用tab-completion时,没有任何反应。我如何让他们俩一起工作?

1 个答案:

答案 0 :(得分:2)

使用没有任何自定义的Emacs(emacs -q),我得到以下工作:

(load-file "c:/cygwin/home/Trey/scratch/yasnippet-bundle.el")
M-x viper-mode
(define-key viper-insert-global-user-map (kbd "<tab>") 'yas/expand)
C-x C-f a.cpp
i
main<TAB>

试试看,看看它是否有效(如果你的.emacs中有什么东西搞砸了)。另外,请检查Emacs认为您的 TAB 键是什么。在我的Windows系统上,tab键绑定到&lt; tab&gt; 而不是 TAB - 尝试执行 Mx describe-key TAB 并查看*Help*缓冲区将其转换为。 yasnippet似乎绑定到 TAB ,所以我需要&lt; tab&gt; 的额外绑定才能让事情发挥作用。

有关Emacs如何处理 TAB 的更多信息,请阅读documentation for function keys