Plugins 让YASnippet和viper模式在emacs中协同工作

Plugins 让YASnippet和viper模式在emacs中协同工作,plugins,emacs,viper-mode,Plugins,Emacs,Viper Mode,我在emacs中使用viper模式,但我也想使用YASnippet。然而,当我启用viper模式并尝试通过YASnippet使用制表符完成时,什么都没有发生。如何让这两个组件协同工作?使用没有任何定制的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 "

我在emacs中使用viper模式,但我也想使用YASnippet。然而,当我启用viper模式并尝试通过YASnippet使用制表符完成时,什么都没有发生。如何让这两个组件协同工作?

使用没有任何定制的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>
(加载文件“c:/cygwin/home/Trey/scratch/yasnippet bundle.el”)
M-x毒蛇模式
(定义键viper插入全局用户映射(kbd“”)“yas/expand)
C-x C-f a.cpp
我
主要的
试试看,看看它是否有效(比如,如果你的
.emacs
中有什么东西把事情搞砸了)。另外,查看Emacs认为您的TAB键是什么。在我的windows系统上,tab键绑定到而不是tab-尝试执行M-x描述键选项卡,查看
*帮助*
缓冲区将其转换为什么<代码>yasnippet似乎绑定到选项卡,因此我需要额外的绑定才能正常工作


有关Emacs如何处理选项卡的更多信息,请阅读。

Perfect,它使viper模式和YASnippet协同工作。唯一的问题是,现在,当我按
TAB
实际插入一个选项卡时,它只插入一个空格。当它没有调用YASnippet来完成时,我怎么能让它插入一个标签呢?更正,它实际上插入了一个奇怪的字符,甚至没有空格。我该如何解决这个问题?