这里用一个非常简单的例子来展示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. .net的session详解 存储模式 存到数据库中 使用范围与大小限制 生命周期

    Session又称为会话状态,是Web系统中最常用的状态,用于维护和当前浏览器实例相关的一些信息.举个例子来说,我们可以把已登录用户的用户名放在Session中,这样就能通过判断Session中的某个 ...

  2. Python 程序员都会喜欢的 6 个库

    在编程时,小挫折可能与大难题一样令人痛苦.没人希望在费劲心思之后,只是做到弹出消息窗口或是快速写入数据库.因此,程序员都会喜欢那些能够快速处理这些问题,同时长远来看也很健壮的解决方案. 下面这6个Py ...

  3. 关于测试中哪些信息需要放到jira上面

    1.每个新需求的功能点,全部在jira上一一呈现 2.每个bug也一样在jira上一一呈现 3.任务一个需要优化改进的点也一一在jira上呈现 然后程序员一直开发新功能和修改新bug,测试人员负责bu ...

  4. 使用a标签制作tooltips

    摘要: 前面已经分享了三种方法制作tooltips,今天再来分享一个借助a标签来实现tooltips的方法. 效果如下:

  5. Spring中可以复用的工具类&特性记录

    Spring 里有用工具类: GenericTypeResolver 解析泛型类型.核心逻辑还是调用 ResolvableTypeResolvableType 解析泛型类型 BeanWrapper 利 ...

  6. Spring父容器与子容器

    在使用spring+springMVC的web工程中,我们一般会在web.xml中做如下配置: <context-param> <param-name>contextConfi ...

  7. Hibernate_day03讲义_使用Hibernate完成多对多的关系映射并操作

  8. express安装及使用(windows系统)

    npm install express //安装express命令 npm install express-generator -g //Express 应用生成器,通过应用生成器工具 express ...

  9. Windows最全快捷键

    单独按Windows:显示或隐藏“开始”功能表 Windows+BREAK:显示“系统属性” 对话框 Windows+D:显示桌面 Windows+M:最小化所有窗口 Windows+Shift+M: ...

  10. Linux关闭Tomcat为什么要用Kill,而不是shutdown.sh

    Linux关闭Tomcat为什么要用Kill,而不是shutdown.sh >>>>>>>>>>>>>>>&g ...