我定义了两个 UltiSnips 触发器,它们以一种我想阻止的特定方式匹配。第一个触发器定义如下:
snippet "exa(ct)?" "Exact" r
第二个像这样:
snippet "getct|ct" "Get( CurrentTime )" rw
正在打字 exact<tab>
给我 UltiSnips 的选择消息来选择以上之一。不应该 w
第二个代码段末尾的选项会阻止它触发,除非它被非单词字符包围?
最佳答案
解决方案是在正则表达式的开头使用 \b
并放弃 w
选项,因为 r
总是覆盖另一个选项。
snippet "\bexa(ct)?" "Exact" r
...
snippet "\bgetct|ct" "Get( CurrentTime )" r
关于vim - 防止重复的 UltiSnips 匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24603057/