用户工具

站点工具


linux:vim:abbreviate

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。

:abbreviate JB Jack Berry

如果你编写程序,那么利用以下设置,可以加快添加注释的速度:

:abbreviate #b /**********************

:abbreviate #e **********************/

如果你设计网页,那么利用以下缩写可以快速增加标签。其中<CR><LF>将在标签间自动插入换行,以方便你继续输入内容。

:iabbrev p <p><CR><LF></p>

利用以下命令,我们甚至还可以定位光标所处的位置:

:iabbrev icode <code class="inset">!cursor!

<Esc>:call search('!cursor!','b')<CR>cf! </code>

我们还可定义命令缩写。例如以下命令,将在新的标签页中显示帮助信息:

:cabbrev h tab h

查看缩写

abbreviate

使用:abbreviate命令,将列出所有缩写定义,其中第一列显示缩写的类型:

标记 模式
! 插入模式,命令行模式
i 插入模式
c 命令模式

取消缩写

可以使用以下命令,移除某个缩写:

:unabbreviate ad

针对不同模式下的缩写,需要使用与其相对应的unabbreviate命令。

例如:使用:iunabbreviate命令,取消插入模式下的缩写,而:iabclear命令则会清除所有插入模式的缩写定义;

依此类推,取消和清除命令行模式下的缩写,则需要使用:cunabbreviate和:cabclear命令。

如果想要清除所有缩写,可以使用以下命令:

:abclear

参考

linux/vim/abbreviate.txt · 最后更改: 2010/12/15 03:01 (外部编辑)