Vim教程网之前介绍过的vim-surround插件可以高效地方在字符两边插入各种符号,本文介绍可对各种符号(括号、引号)进行自动补齐和智能匹配的Vim插件 delimitMate (伙伴定界? 用于界定符自动补齐, 从英文单词的直译便可看出该插件的核心功能)。

例如,使用 delimitMate 插件,可以在 Vim 插入模式下,输入前大括号后自动补全后大括号,在一对括号之间回车,自动分为 3 行并调整缩进,

一、delimitMate 插件安装

Vim 支持多种方法安装 delimitMate 插件,推荐使用 Vundlevim-plug 进行插件安装。

如果使用 Vundle 安装 delimitMate 插件,只需要在 ~/.vimrc 文件的合适位置添加 Plugin 'Raimondi/delimitMate' 后再在 Vim 的命令行模式下执行 :PluginInstall 命令即可完成插件的安装。

如果使用 vim-plug 安装 delimitMate 插件,只需在 ~/.vimrc 文件的合适位置添加 Plug 'Raimondi/delimitMate' 后再在 Vim 的命令行模式下执行 :PlugInstall 即可完成插件的安装。

关于插件的安装细节,可参考 Vim教程网上关于Vim插件管理的相关文章。

二、delimitMate 配置和使用

安装完 delimitMate 插件后,当 Vim 启动时会自动加载该插件,不需要进行额外的配置就可使用 delimitMate 提供的功能。

delimitMate 插件提供的是一种 被动 技能,即:在 Vim 插入模式下,输入一个双引号、单引号、单号、圆括号 或 方括号的左半部分时,都会触发 delimitMate 自动补齐对应右半部分。可以按 组合键将光标移动到补全后的符号后面继续编辑。

delimitMate 插件提供了多种配置选项(delimitMate_autoclose、delimitMate_nesting_quotes、delimitMate_smart_matchpairs)进行个性化设置,例如,可以使用 let b:delimitMate_autoclose = 0 选项关闭 delimitMate 插件。

au FileType python let b:delimitMate_autoclose = 0 使用 autocmd 命令关闭 delimitMate 对 python 文件的自动补齐功能。

au FileType python let b:delimitMate_nesting_quotes = ['"']

在 Vim 命令行模式下执行 :help delimitMate 可查看 delimitMate 插件提供的完整官方文档。

vim-delimitMate

嗯,扫一扫就可以找到小女子我啦~