这里用一个非常简单的例子来展示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. Genymotion模拟器无法开启的解决方法——Unable to start the virtual device,The virtual device got no IP address

    前言 最近重装了电脑的系统,由win7换成了win8.1.android开发环境也重新配置了一遍.其他的都还好,就是genymotion模拟器一直开启失败. 自己尝试了很多方法,比如卸载重装软件,重新 ...

  2. 备忘录:在alpine上安装kvm

    原文:  https://wiki.alpinelinux.org/wiki/KVM     KVM is an open source virtualization solution in a ke ...

  3. springMVC中如何访问WebContent中的资源文件

    一.问题: 我的工程目录如下: WebContent |-css |-js |-imgs |-META-INF |-WEB-INF |-jsp |-login.jsp 如何在login.jsp中引用i ...

  4. kendo-ui表单验证

    摘要: 表单验证是每一个项目必不可少的,他能够帮助我们过滤不正确的用户输入,保证系统数据正确.例如下面这样: kendo-ui也有自己的表单验证方法,下面就分享下kendo-ui的表单验证方式. 基本 ...

  5. selenium +chrome headless Adhoc模式渲染网页

    mannual和adhoc模式比较 Manual vs. Adhoc In the script above, we start the ChromeDriver server process whe ...

  6. ios开发之--/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file

    有一段时间没有用pod了,突然报了个这种错误,查了下,原来是没有更新pod, 1,更新gem:sudo gem update --system 2,查看gem源是否是最新的:gem sources - ...

  7. 使用gradle 编译生成 apk出现的问题

    首先出现的问题是:  Failed to read key from keystore 是我的Key Alias 填写错了, 还有一种可能就是真的把key放错位置了

  8. IOPS性能指标

    如何计算mysql的IOPS? qps 每秒处理的查询数tps 每秒处理的事务数IOPS,每秒磁盘进行的I/O操作次数 今天看到一篇文章说磁盘理论最大IOPS为200左右,我有两个疑问:1.MYSQL ...

  9. vux ajax请求 及 跨域

    1)使用 AjaxPlugin 插件(在组件里使用) 引入插件 import { AjaxPlugin } from 'vux' 初始化 export default { components: { ...

  10. iOS开发-- 使用VVDocumenter-Xcode添加代码注释

    在开发Java代码过程中,我们只需在Eclipse中敲/**即可生成字段.方法对应的文档,简单便捷. 在Xcode如果想添加文档注释,需要花费很多时间,有没有简单.快速的方法搞定这一切? 在网上搜索了 ...