
编辑器之神Vim
本系列教程针对对Vim编辑器感兴趣,并使用过一些时间,想自己开发Vim插件的小伙伴。有任何问题(无论您是新手还是老手)都可以留言私信我,一定尽力帮忙,如果您觉得有用请帮忙点个赞。我会不定时发一些技术文章,您可以关注我,查看我的更新状态。
Vim 的设计哲学是:如果用户曾经为某件事物写过一次,那就不需要再写第二次。设置字体
1.设置字体
- Linux 中设置字体:、
set guifont=Courier\ 14
- Windows 中设置字体:
set guifont=Courier:14
- 如果不确定字体是否存在,可以设置多个字体,用 , 分割。
set guifont=Courier\ New\ 12,Arial\ 10
设置配色方案
:colorscheme 'schemename'
个性化高亮
与高亮相关的技术 匹配 ( matching )。
:match group / pattern /
- group : 彩色组名字。
- /pattern/ : 模式。
例子:
:match ErrorMsg /^Error/
自定义彩色组:
:highlight MyGroup ctermbg=red guibg=red gctermfg=yellow guifg=yellow term=bold
- ctermbg: 控制台环境下的背景色
- guibg:Gvim环境下的背景色
- ctermfg:控制台环境下的文本颜色
- guifg:Gvim下文本颜色
- gui:Gvim下字体格式
- term:控制台下字体格式
示例1: 用彩色标记某列后面的文字:
:match ErrorMsg /\%>73v.\+/
- \%> : 匹配该列之后的内容,列号要紧跟在尖括号右边。
- 73 : 列号。
- v : 只能工作在可见的列上面。
- .\+ : 匹配一个或多个任意的字符。
示例2: 标记代码中未被用作缩进的制表符:
:match ErrorMsg /[^\t]\zs\t\+/
- [^ : 字符组的开始标记,组中的字符将不会被匹配到。
- \t : 制表符。
- ] : 字符组的结束标记。
- \zs : 一个宽度为0的匹配,它把'匹配'置于一行的开始,并忽略任意的空格。
- \t\+ : 匹配一个或多个制表符。
示例3: 检查IP地址的有效性:
:match errorMsg /\(2[5][6-9]\|2[6-9][0-9]\|[3-9][0-9][0-9]\)[.] \[0-9]\{1,3\}[.][0-9]\{1,3\}[.][0-9]\{1,3\}\| \[0-9]\{1,3\}[.]\(2[5][6-9]\|2[6-9][0-9]\|\ \\ \[3-9][0-9][0-9]\)[.][0-9]\{1,3\}[.][0-9] \\{1,3\}\|\[0-9]\{1,3\}[.][0-9]\{1,3\}[.]\(2[5] \\ \[6-9]\|\2[6-9][0-9]|[3-9][0-9][0-9]\)[.][0-9]\{1,3\} \\|[0-9]\{1,3\}[.][0-9]\{1,3\}[.][0-9]\{1,3\}[.] \\(2[5][6-9]\|2[6-9][0-9]\|\[3-9][0-9][0-9]\)/