vim自定义语法高亮(syntax highlight)设置流程

这里用一个非常简单的例子来展示vim自定义自己的语法并高亮显示的设置流程。

所使用的实例语言是python,为了区分vim自带的python语法,我们把文件名保存为test.me,其内容如下图所示:

现在我们希望能够设置自己的语法,来高亮显示这段代码。
总共有三步,如下:


定义语法规则

首先要创建自己的语法规则:
进入目录~/.vim/syntax,在该目录下新建文件mysyntax.vim(名称随意,.vim结尾即可)
windows用户目录为$VIM_INSTALL/vimfiles/syntax($VIM_INSTALL为vim的安装目录)

之后在mysyntax.vim中输入:

syn keyword Conditional if
syn keyword InternalFunction print input

这里我们指定了if为关键词Conditional,print与input为关键词InternalFunction,Conditional与InternalFunction为我们自己定义的变量名。
暂时就添加这两行,先看看效果。


设置识别文件类型

接下来要设置vim在读入.me文件时,自动识别其语法为我们刚才定义的mysyntax:
进入目录~/.vim/ftdetect,在该目录下新建文件mysyn.vim(名称随意,.vim结尾即可)
windows用户目录为$VIM_INSTALL/vimfiles/ftdetect

之后在mysyn.vim中输入:

au BufRead,BufNewFile *.me set filetype=mysyntax

filetype的名字即为上一步新建的文件的文件名


给定义的语法变量指定颜色

在vim中输入:colorscheme查看当前使用的color文件名,例:molokai
然后打开~/.vim/colors/molokai.vim

在其中添加如下两行新定义的变量的颜色

hi Conditional guifg=#8DA5ED
hi InternalFunction guifg=Orchid

然后再重新打开test.me,流程走完


更多语法设置以及颜色设置可参见引用

ref:
http://vim.wikia.com/wiki/Creating_your_own_syntax_files
http://yyq123.blogspot.com/2011/02/vim-syntax.html

posted @ 2014-11-18 20:45  MindProbe  阅读(18850)  评论(2编辑  收藏  举报