vim下使用UltiSnips

vim下使用UltiSnips

最近在学习Linux编程,相应的也在学vim。vim中的UltiSnips插件可以实现比一般的代码补全更为强大的效果。这里就记录一下吧。

UltiSnips安装、基础及进阶:https://vimzijun.net/2016/10/30/ultisnip/

  1. C++中常用的一些、已经内置的snips

    1. inc:#include<xxx.h>,也就是引入c的库
    2. incc:#include,引入C++的库
    3. main:主函数
  2. 自定义的snips

    ~/.vim/UltiSnips文件夹中新建xx.snippets,xx表示你希望这些snips应用到的文件格式,如果是 LaTex 的文件,那就是 tex.snippets,以此类推如果希望应用到所有的格式中就写all.snippets。

    在这些文件中定义snip的格式:

    snippet 关键词 “说明” 设定
    内容
    endsnippet
    

设定如下:

  • b 代表只有关键词出现在行首的时候,才可以被展开
  • A 代表自动展开
  • w 代表可以展开这个 “词”,具体 “词” 的定义可以查看 :help iskeyword。直观感觉就是,这个关键词是单独的,和其他文字分开的。比如前后都是空格。
  • i 代表可以忽略前后字节,直接展开关键词。(这个设定比 w 要更松)

其他的还有 r, s, t, m 等等,都可以通过这个命令在自带文档里找到:

:help ultisnip

之后只要在vim中输入关键词,再按下tab就能自动填充了。

更加进阶的内容请看上面大佬的博客

posted @ 2019-10-13 14:11  别再闹了  阅读(2603)  评论(0编辑  收藏  举报