我想创建使用Vim complete()
函数在每个制表位上自定义完成的片段。这是我想要实现的一个简单例子。
snippet date "Date snippet"
day of month: ${1:`!v complete(col('.'), [1, 2, 3, 4])`}
month: ${2:`!v complete(col('.'), ['Jan', 'Feb', 'March'])`}
year: ${3:`!v complete(col('.'), ['2012', '2013', '2014', '2015'])`}
endsnippet
在第一个标签页上,我想查看带有[1, 2, 3, 4]
项目的Vim自动完成菜单。同样适用于其他制表位。但是,当我实际运行此片段时,我得到以下输出
day of month: Jan0an0
month: 201200120
year:100
可能还有其他方法可以实现自动完成功能,如屏幕投射Episode 4: Python Interpolation所示。但是,我很想看到Vim在UltiSnips中自动完成。
请有人建议如何实现这一目标。
答案 0 :(得分:1)
不幸的是,由于Vim的设计,今天香草Vim + UltiSnips无法实现这一点。一旦neovim解决了交互问题,它可能是可行的。