在gVim中自动生成c代码

时间:2015-09-07 15:30:24

标签: vim

在gVim的 *。c 文件中,当我输入for(时,我希望Vim生成其余的基本 for loop 结构,如下所示。 / p>

for(;;)
{
}

我已经借助_vimrc中的以下缩写实现了这一目标。

ab for( for(;;)<CR>{<CR>}

但是,我希望这个缩写仅在c文件中有效。

是否存在我可以在_vimrc中使用的条件,以便在所有文件中禁用缩写但在 *。c 文件中?

2 个答案:

答案 0 :(得分:6)

此功能通常称为&#34;摘要&#34;。

它受到SirVer/ultisnips

等各种Vim插件的支持

答案 1 :(得分:1)

使用vim实现此目的的一个好方法是使用autocommand,例如:

autocmd FileType c      abb <buffer> for( for(;;)<CR>{<CR>}

autocommand非常强大,documentation非常好。 在此示例中,请谨慎使用abb<buffer>参数,因为您希望此缩写仅在c源文件缓冲区上处于活动状态。例如,请参阅abbreviate-local文档。