vim配色

前言

  • vim中,主题可以以插件形式存在。其中系统自带的主题存放在$VIMRUNTIME/colors文件夹下,以*.vim命名。(查看$VIMRUNTIME可在vim中执行echo $VIMRUNTIME 命令)
  • 用户自定义的主题一般不存在系统目录下,而是放在当前用户的~/.vim/colors目录下(如果没有此文件夹,自己建一个),这样不会干扰到其他用户
  • 更换vim主题,在~/.vimrc中添加 colorscheme 主题名称

注:也可以不将配色方案作为主题,可直接在~/.vimrc中直接设置

前期工作

  • 开启256颜色支持

在~/.vimrc中添加

1
set t_Co=256

  • 开启高亮显示关键字

在~/.vimrc中添加

1
2
syntax enable
syntax on

  • 使用辅助插件

首先,我们下载一个vim的插件xterm-color-table.vim,这个插件可在vim中查看vim支持的256色。

下载:

1
git clone https://github.com/guns/xterm-color-table.vim

下载后把xterm-color-table.vim放到目录~/.vim/plugin/下面。或者放到你的全局vim配置文件夹里面。

然后打开vim输入Xt命令就可以看到256种配色了,我们可以照着颜色修改自己喜欢的配置。

如下图:

vimcolor.png

注:如果打开后,没有显示颜色,显示的全部是数字,需要在你的.bashrc之类的bash环境文件加入export TERM=xterm-256color,让term开启256颜色

定制主题

准备好之后,我们就可以开始设置我们的主题了

主题色调

主题的整体色调有两种:dark和light 就是暗色调和亮色调

我这里设置的是暗色调

1
set background=dark

重新设置语法高亮

1
2
3
4
5
6
if version > 580
hi clear
if exists("syntax_on")
syntax reset
endif
endif

主题名称

1
let g:colors_name="DIY-colors"

基础属性

1
2
3
4
5
6
7
term            黑白终端属性
cterm 彩色终端属性
ctermfg 彩色终端前景色
ctermbg 彩色终端背景色
gui GUI属性
guifg GUI前景色
guibg GUI背景色

在这里我们对于颜色的选择直接用上面的xterm-color-table插件来挑选即可,这样就不需要记各种颜色的单词,直接用256颜色数字代表即可,而且用这个插件也可以直观的看到终端有哪些颜色是支持的,哪些颜色不支持。

配色语法

用法举例

1
2
"括号匹配的颜色
hi MatchParen ctermbg=232 ctermfg=20 guibg=lightblue

上面这句是设置当光标移动到括号位置的时候,对应相匹配的两个括号就会显示我们设定的颜色。

其中,hi是highlight命令的缩写,用于高亮配置,MatchParen是配色的元素名称,这里是括号匹配,参数形式为 key=value

元素列表

状态栏提示信息
1
2
3
4
5
6
7
hi StatusLine       状态栏
hi StatusLineNC 非当前窗口的状态栏
ErrorMsg 错误信息
WarningMsg 警告信息
MoreMsg 其他文本
Question 访问用户
Error 错误
文本搜索
1
2
hi IncSearch        增量搜索时
hi Search 匹配的文本
弹出菜单

这个可以修改YCM自动语法补全弹出的提示框

1
2
Pmenu               弹出菜单
PmenuSel 菜单当前选项
窗体边框相关
1
2
3
4
5
6
7
VertSplit           垂直分割窗口的边框
LineNr 行号
Cursor 光标所在字符
CursorLine 光标所在行
ColorColumn 光标所在列
ColorColumn 标尺
NonText 窗口尾部的~和@,以及文本里实际不显示的字符
diff模式
1
2
3
4
DiffAdd             diff模式增加的行
DiffChange diff模式改变的行
DiffDelete diff模式删除的行
DiffText diff模式插入文本
C/C++语法
1
2
3
4
5
6
7
8
9
10
Comment             注释
PreProc 预处理
Type 数据类型
Constant 常量
Statement 控制语句
Special 字符串中的中的特殊字符
String 字符串
cCppString Cpp字符串
Number 数字
Todo TODO、HACK、FIXME等标签
其他
1
2
3
4
5
Normal              普通字符
SpellBad 拼写错误字符
Visual 可视化模式下选中的字符
Menu 菜单栏颜色字体
Scrollbar 滚动条颜色

最后更新: 2019年08月21日 04:40

原始链接: https://yuanspace.top/2019/03/15/VIM-color/

× 请我吃糖~
打赏二维码