vim中自动补全插件snipmate使用

时间:2019-08-29
本文章向大家介绍vim中自动补全插件snipmate使用,主要包括vim中自动补全插件snipmate使用使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

vim中自动补全插件snipmate使用

1、下载snipMatezip:
https://github.com/msanders/snipmate.vim/archive/master.zip

2、解压master.zip

unzip master.zip -d ~/.vim  (若是没有此目录,就自己建一个)

cd ~/.vim

mv snipmate.vim-master/* ./

3、定制自己的快捷键,在~/.vim/snippets/python.snippets 文件中有着各种快捷键的定义,自己也可以添加配置,当然除了c语言之外snipmate还支持其他的各种语言如:shell、ruby、python等, 下面是一个python语言snippets文件

cat /root/.vim/snippets/python.snippets 
snippet #!
    #!/usr/bin/env python

snippet imp
    import ${1:module}
# Module Docstring
snippet docs
    '''
    File: ${1:`Filename('$1.py', 'foo.py')`}
    Author: ${2:`g:snips_author`}
    Description: ${3}
    '''
snippet wh
    while ${1:condition}:
        ${2:# code...}
snippet for
    for ${1:needle} in ${2:haystack}:
        ${3:# code...}
# New Class
snippet cl
    class ${1:ClassName}(${2:object}):
        """${3:docstring for $1}"""
        def __init__(self, ${4:arg}):
            ${5:super($1, self).__init__()}
            self.$4 = $4
            ${6}
# New Function
snippet def
    def ${1:fname}(${2:`indent('.') ? 'self' : ''`}):
        """${3:docstring for $1}"""
        ${4:pass}
snippet deff
    def ${1:fname}(${2:`indent('.') ? 'self' : ''`}):
        ${3}
# New Method
snippet defs
    def ${1:mname}(self, ${2:arg}):
        ${3:pass}
# New Property
snippet property
    def ${1:foo}():
        doc = "${2:The $1 property.}"
        def fget(self):
            ${3:return self._$1}
        def fset(self, value):
            ${4:self._$1 = value}
# Lambda
snippet ld
    ${1:var} = lambda ${2:vars} : ${3:action}
snippet .
    self.
snippet try Try/Except
    try:
        ${1:pass}
    except ${2:Exception}, ${3:e}:
        ${4:raise $3}
snippet try Try/Except/Else
    try:
        ${1:pass}
    except ${2:Exception}, ${3:e}:
        ${4:raise $3}
    else:
        ${5:pass}
snippet try Try/Except/Finally
    try:
        ${1:pass}
    except ${2:Exception}, ${3:e}:
        ${4:raise $3}
    finally:
        ${5:pass}
snippet try Try/Except/Else/Finally
    try:
        ${1:pass}
    except ${2:Exception}, ${3:e}:
        ${4:raise $3}
    else:
        ${5:pass}
    finally:
        ${6:pass}
# if __name__ == '__main__':
snippet ifmain
    if __name__ == '__main__':
        ${1:main()}
# __magic__
snippet _
    __${1:init}__${2}

 

原文地址:https://www.cnblogs.com/putihuakai/p/11427968.html