vim的代碼片段補全插件有名氣的有vim-snipmate和Ultsnips,我的環境中snipmate因為沖突一直沒法使用,所以使用的是Ultisnips。他們都是采用一樣的vim-snippets做為配置文件,並且分別存放在對應名稱的目錄下。他們的格式基本上是相同的,但是也有少許差別,個人感覺ultisnips提供了更多的擴展。
UltiSnipsEdit快速打開編輯配置文件,名字為<當前文件的擴展名>.snippets
基本格式:
snippet "注解"
${1:name}
${1/(\w+).*/${1}/}
endsnippet
支持直接用shell script,也可以通過!v
嵌入vimscript或者!p
嵌入python
snippet date "date"
`echo $(date)`
end snippet
通過global !p
直接嵌入python腳本
global !p
endglobal
python的變量
fn:
文件名
path:
路徑
t:
占位符t[1]
snip:
提供方法
示例:
snippet def "def"
def ${1:name}:
${2:`!p `}
endsnippet
snippet "rep (\d+) (\w+)" "def" r
def ${1:name}:
${2:`!p snip.rv=int(match.group(1))*match.group(2)`}
endsnippet
extends c
引用其他配置