vim中的代码片段 - 返回上一个参数的任何选项?

For*_*ker 3 parameters vim code-snippets vim-plugin

我正在使用neocomplcache以及neosnippet和honza的vim-snippets.它们很棒,除了当我按下时Ctrl-k,我可以转到下一个参数,但我无法返回上一个参数.

所以例如,如果我插入'for'代码段并在索引变量上输入错误,但我已经按下了Ctrl-k,我搞砸了吗?我必须修改所有参数然后再回来做更换操作吗?或者是否有选择模式的映射,我可以在这种情况下帮助我?目前TabS-Tab没有做任何事情.

最后,所有片段插件都是这样的吗?或neocomplcache只是缺少这个功能(开箱即用,至少)?

Ale*_*aev 10

我鼓励你试试UltiSnips.它比vim-snippetsor 更强大,更成熟neosnippet.例如,由于UltiSnips基于Python,因此它具有很强的可扩展性.关于你的问题:是的,你可以用UltiSnips来回跳.最后,请务必查看截屏视频(在链接中列出),以查看您可以使用它进行的所有精彩内容.

例如,我使用以下配置:

let g:UltiSnipsSnippetsDir        = '~/.vim/snippets/'
let g:UltiSnipsSnippetDirectories = ['UltiSnips', 'snippets']

let g:UltiSnipsExpandTrigger       = '<C-CR>'
let g:UltiSnipsJumpForwardTrigger  = '<A-d>'
let g:UltiSnipsJumpBackwardTrigger = '<A-a>'
Run Code Online (Sandbox Code Playgroud)

注意: ~/.vim/snippets/是我的自定义代码段目录.

正如我已经提到的,UltiSnips广泛使用Python,因此需要使用Python支持构建Vim.如果您使用的是Windows(尤其是x64),那可能会遇到麻烦,这是我很久以前遇到的问题.为了节省宝贵的时间并避免沮丧,您可以考虑下载我的Vim for Windows.提供了x86和x64体系结构,它同时支持Python 2和Python 3.我可以向你保证它很稳定.要正确安装,请按照说明操作.这些版本经常更新.