这里会显示出您选择的修订版和当前版本之间的差别。
— |
linux:vim:abbreviate [2010/12/15 03:01] (当前版本) |
||
---|---|---|---|
行 1: | 行 1: | ||
+ | ====== VIM中的缩写 ====== | ||
+ | ===== 设置缩写 ===== | ||
+ | |||
+ | |||
+ | 利用:ab[breviate]缩写命令,我们可以用一个缩写来代替一组字符,此后只要输入缩写,就可以自动插入其代表的字符串。 | ||
+ | |||
+ | 使用以下命令,将定义ad来代替advertisement: | ||
+ | |||
+ | :abbreviate ad advertisement | ||
+ | |||
+ | 当想要输入advertisement时,只要输入ad,然后Ctrl-]键就可以输入advertisement了;如果点击Esc键,将插入扩展字符并返回命令模式;如果按下Space或Enter键,那么将在插入扩展字符后,自动增加空格或回车。 | ||
+ | |||
+ | ===== 不同模式下的缩写 ===== | ||
+ | |||
+ | |||
+ | 使用下表中不同形式的abbreviate命令,可以针对特定的模式设置缩写: | ||
+ | ^Command命令 ^Insert Only插入模式 ^Command Line命令行模式^ | ||
+ | |:abbreviate |y |y | | ||
+ | |:iabbrev |y | | ||
+ | |:cabbrev | |y | | ||
+ | |||
+ | |||
+ | |||
+ | ===== 缩写实例 ===== | ||
+ | |||
+ | |||
+ | 我们可以为多个单词设置缩写。例如以下命令,将设置Jack Berry的缩写为JB。 | ||
+ | |||
+ | <code> | ||
+ | :abbreviate JB Jack Berry | ||
+ | </code> | ||
+ | |||
+ | 如果你编写程序,那么利用以下设置,可以加快添加注释的速度: | ||
+ | |||
+ | <code> | ||
+ | :abbreviate #b /********************** | ||
+ | |||
+ | :abbreviate #e **********************/ | ||
+ | </code> | ||
+ | |||
+ | 如果你设计网页,那么利用以下缩写可以快速增加标签。其中<CR><LF>将在标签间自动插入换行,以方便你继续输入内容。 | ||
+ | |||
+ | <code> | ||
+ | :iabbrev p <p><CR><LF></p> | ||
+ | </code> | ||
+ | |||
+ | 利用以下命令,我们甚至还可以定位光标所处的位置: | ||
+ | |||
+ | <code> | ||
+ | :iabbrev icode <code class="inset">!cursor!</code><Esc>:call search('!cursor!','b')<CR>cf! | ||
+ | </code> | ||
+ | |||
+ | 我们还可定义命令缩写。例如以下命令,将在新的标签页中显示帮助信息: | ||
+ | |||
+ | <code> | ||
+ | :cabbrev h tab h | ||
+ | </code> | ||
+ | |||
+ | ===== 查看缩写 ===== | ||
+ | |||
+ | abbreviate | ||
+ | |||
+ | 使用:abbreviate命令,将列出所有缩写定义,其中第一列显示缩写的类型: | ||
+ | |||
+ | {{:linux:vim:vim-abb-list.jpg|}} | ||
+ | |||
+ | ^标记 ^模式 ^ | ||
+ | |! |插入模式,命令行模式| | ||
+ | |i |插入模式 | | ||
+ | |c |命令模式 | | ||
+ | |||
+ | |||
+ | ===== 取消缩写 ===== | ||
+ | |||
+ | |||
+ | 可以使用以下命令,移除某个缩写: | ||
+ | <code> | ||
+ | :unabbreviate ad | ||
+ | </code> | ||
+ | |||
+ | 针对不同模式下的缩写,需要使用与其相对应的unabbreviate命令。 | ||
+ | |||
+ | 例如:使用:iunabbreviate命令,取消插入模式下的缩写,而:iabclear命令则会清除所有插入模式的缩写定义; | ||
+ | |||
+ | 依此类推,取消和清除命令行模式下的缩写,则需要使用:cunabbreviate和:cabclear命令。 | ||
+ | |||
+ | 如果想要清除所有缩写,可以使用以下命令: | ||
+ | |||
+ | <code> | ||
+ | :abclear | ||
+ | </code> | ||
+ | |||
+ | ===== 参考 ===== | ||
+ | * http://yyq123.blogspot.com/2010/12/vim-abbreviation.html | ||