这里用一个非常简单的例子来展示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

vim自定义语法高亮(syntax highlight)设置流程的更多相关文章

  1. VIM 自定义语法高亮配置

    VIM 没有自动支持语法高亮,自己动手搞一搞,网上查了一堆资料,终于配置成功, 记录一下,以便后期查看. 总共两步: step1 : 定义语法规则 1)需要创建一个定义语法规则的文件,这个 actio ...

  2. VIM C++语法高亮配色

    因工作需求,必须在终端下远程下代码,vim打开cpp/h文件,看到一连串的字母就傻了,根本无法阅读. 后来才知道VIM这高大上的文本编辑器支持很多的功能,很多的功能.首先最基本的就是语法高亮配色 1. ...

  3. vim 配置语法高亮 行号标示

    配置VIM主要是开启VIM的语法高亮和行号标示,因为默认在用户目录(~)下没有vimrc,所以需要先去复制一个,然后再编辑 cp /etc/vim/vimrc ~/.vimrc vim .vimrc ...

  4. Fedora CentOS Red Hat中让vim支持语法高亮设置

    Fedora / CentOS / Red Hat这三个系统里默认的vi是没有语法高亮显示的,白色的字体看起来很不舒服. 首先用命令行cat /etc/os-release查看当前linux系统的类型 ...

  5. 如何设置nesC在vim中语法高亮

    默认的vim没有支持nesC语法高亮,给阅读源码带来不便.不过可以通过装NesC Syntax Highlighting插件来解决这个问题,具体操作如下:   步骤一:下载插件 在http://www ...

  6. vim的语法高亮及配置文件说明

    本文主要针对那些刚刚入门的菜鸟,老手请自动忽略,谢谢. 一.安装vim: sudo pacman -S vim 随后根据提示输入超级用户密码即可完成安装 二.配置自己的语法高亮文件,主要是修改-/.v ...

  7. Mac下Vim配置语法高亮

    设置终端的字体颜色 如图,打开终端然后,选择偏好设置,再选择描述文件,再窗口左侧可以选择系统配置好的,或者你也可以自定义,最后别忘了把你的配置设置成默认就行 Vim语法高亮设置 只需要找到vimrc配 ...

  8. VS code自定义语法高亮

    语法高亮向导(Syntax Highlight Guide) (https://code.visualstudio.com/api/language-extensions/syntax-highlig ...

  9. JavaScript语法高亮库highlight.js使用

    highlight.js是一款基于JavaScript的语法高亮库,目前支持125种编程语言,有63种可供选择的样式,而且能够做到语言自动识别,和目前主流的JS框架都能兼容,可以混合使用. 这款高亮库 ...

随机推荐

  1. datatable删除一行方法

    t.row($(e).parents('tr')[0]).remove().draw(false); t为定义的datatable对象,row里面传入当前行的DOM元素.

  2. 2 URL的玩法

    preface 这里我主要说说flask的URL玩法 include: 动态URL规则 自定义URL转换器 HTTP方法 唯一的URL 构造URL 跳转和重定向 动态URL规则 URL规则可以添加变量 ...

  3. 在lua环境中使用protobuf

    最近在cocos2dx的项目中,需要在LUA脚本层使用protobuf协议.官方已经推出了很多种语言的版本.但唯独LUA版本不全.于是开始研究protobuf在LUA下的实现,将完整的过程记录了下来, ...

  4. VCard介绍

    91助手和豌豆荚用VCard来存储通讯录,今天调查了一下. 1. 方案 使用VCard存储通讯录,文件扩展名为 vcf,  数据文件可以直接导入IPhone/Windows Phone/android ...

  5. Synycovery 7.18f 一个优秀的同步软件

    Serial Key Name: Vdown RG Code: MCKOFA7MNGUQY7954

  6. python monkey 猴子补丁技术编程,修改python json dumps方法。

    1.猴子补丁就是不改变原有模块的内容的前提下,给原有模块新增方法或者修改原有模块. 一个模块的函数,如果希望改变函数的功能,不改变函数名,通常是库模块,你不可能去修改三方库的源码的,实施起来不方便,而 ...

  7. js获取iframe里面的元素

    直接获取不行 var  win2 = document.querySelector('iframe[width = "1280" ]').contentWindow; var lo ...

  8. [OpenCV] Samples 01: Geometry - 几何图形

    前言 基本的几何图形,标注功能. commondLineParser的使用参见:http://blog.csdn.net/u010305560/article/details/8941365 #inc ...

  9. Eclipse------如何将项目通过maven编译并打包

    1.右击项目>>>点击Debug As>>>点击 Maven install进行编译,编译成功后入图 2.右击项目>>>点击Debug As> ...

  10. Linux oracle数据库创建表空间、用户并赋予权限

    管理员用户登录oracle数据库 1.创建临时表空间 select name from v$tempfile;查出当前数据库临时表空间,主要是使用里面的存放路径: 得到其中一条记录/opt/oracl ...