因工作需求,必须在终端下远程下代码,vim打开cpp/h文件,看到一连串的字母就傻了,根本无法阅读。

后来才知道VIM这高大上的文本编辑器支持很多的功能,很多的功能。首先最基本的就是语法高亮配色

1. 确认连接工具,这个很重要,因为工具的问题,找了老半天的原因

  Putty,无需额外设置

  SecureCRT,选项 - 会话选项 - 终端 - 仿真 勾选“ANSI颜色”与“使用颜色方案”

    

2 确认VIM的安装目录,命令行输入:whereis vim,输出如下:

  ls -l /usr/share/vim/vim72/colors 查看系统支持哪些默认的配色方案,其中vim72是版本号,对应查找路劲即可

  在当前用户目录下,新建".vimrc"文件,编辑一下内容:

"打开语法高亮
syntax on
 
"使用配色方案
colorscheme desert
 
"打开文件类型检测功能
filetype on
 
"不同文件类型采用不同缩进
filetype indent on
 
"允许使用插件
filetype plugin on
filetype plugin indent on
 
"关闭vi模式
set nocp
 
"与windows共享剪贴板
set clipboard+=unnamed
 
"取消VI兼容,VI键盘模式不易用
set nocompatible
 
"显示行号, 或set number
set nu
 
"历史命令保存行数
set history=100
 
"当文件被外部改变时自动读取
set autoread
 
"取消自动备份及产生swp文件
set nobackup
set nowb
set noswapfile
 
"允许使用鼠标点击定位
set mouse=a
 
"允许区域选择
set selection=exclusive
set selectmode=mouse,key
 
"高亮光标所在行
set cursorline
 
"取消光标闪烁
set novisualbell
 
"总是显示状态行
set laststatus=2
 
"状态栏显示当前执行的命令
set showcmd
 
"标尺功能,显示当前光标所在行列号
set ruler
 
"设置命令行高度为3
set cmdheight=3
 
"粘贴时保持格式
set paste
 
"高亮显示匹配的括号
set showmatch
 
"在搜索的时候忽略大小写
set ignorecase
 
"高亮被搜索的句子
set hlsearch
 
"在搜索时,输入的词句的逐字符高亮(类似firefox的搜索)
set incsearch
 
"继承前一行的缩进方式,特别适用于多行注释
set autoindent
 
"为C程序提供自动缩进
set smartindent
 
"使用C样式的缩进
set cindent
 
"制表符为4
set tabstop=4
set expandtab
"%retab!
 
"统一缩进为4
set softtabstop=4
set shiftwidth=4
 
"允许使用退格键,或set backspace=2
set backspace=eol,start,indent
set whichwrap+=<,>,h,l
 
"取消换行
set nowrap
 
"启动的时候不显示那个援助索马里儿童的提示
set shortmess=atI
 
"在被分割的窗口间显示空白,便于阅读
set fillchars=vert:\ ,stl:\ ,stlnc:\
 
"光标移动到buffer的顶部和底部时保持3行距离, 或set so=3
set scrolloff=3
 
"设定默认解码
set fenc=utf-8
set fencs=utf-8,usc-bom,euc-jp,gb18030,gbk,gb2312,cp936
 
"设定字体
set guifont=Courier_New:h11:cANSI
set guifontwide=新宋体:h11:cGB2312
 
"设定编码
set enc=utf-8
set fileencodings=ucs-bom,utf-8,chinese
set langmenu=zh_CN.UTF-8
language message zh_CN.UTF-8
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
 
"自动补全
filetype plugin indent on
set completeopt=longest,menu
 
"自动补全命令时候使用菜单式匹配列表
set wildmenu
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType python set omnifunc=pythoncomplete#Complete
autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
autocmd FileType css set omnifunc=csscomplete#CompleteCSS
autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
autocmd FileType java set omnifunc=javacomplete#Complet

保存后,用VIM打开C++文件就有颜色啦。如:

默认采用desert配色,如果需要扩展,可自行到git下载更加全面的配色方案,只需将xxx.vim文件复制到目录/usr/share/vim/vim72/colors

编辑.vimrc文件设置,“colorscheme xxx” 即可

VIM C++语法高亮配色的更多相关文章

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

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

  2. Mac下Vim配置语法高亮

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

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

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

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

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

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

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

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

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

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

    这里用一个非常简单的例子来展示vim自定义自己的语法并高亮显示的设置流程. 所使用的实例语言是python,为了区分vim自带的python语法,我们把文件名保存为test.me,其内容如下图所示: ...

  8. 【小技能整理】mac vim开启语法高亮

    步骤1: cp /usr/share/vim/vimrc ~/.vimrc 先复制一份vim配置模板到个人目录下 注:redhat 改成 cp /etc/vimrc ~/.vimrc 步骤2: vi ...

  9. vim设置语法高亮

    在vim安装目录中的_vimrc修改,加上以下的代码. set nu! colorscheme desert      syntax enable      syntax on

随机推荐

  1. 通过图片对比带给你不一样的KMP算法体验

    KMP 算法,俗称“看毛片”算法,是字符串匹配中的很强大的一个算法,不过,对于初学者来说,要弄懂它确实不易. 笔者认为,KMP 算法之所以难懂,很大一部分原因是很多实现的方法在一些细节的差异.体现在几 ...

  2. jquery实现搜索提示效果

    1.想要实现的效果如下:其实与百度地图的城市切换部分是一样的. 代码如下:其中的知识点包括($.inArray(test,array)>0   判断test是否在数组array中)($(&quo ...

  3. ios基础篇(二十八)—— UITableView的上拉加载

    本文主要展示一个demo实现UITableView的上拉加载数据: 先看看效果图: 接着上拉,加载更多数据: 主要实现的效果是在我们上拉结束拖拽之后,开始加载数据,数据加载的过程中有滚动轮提示用户正在 ...

  4. SAP SD 销售凭证如何设置字段必填

    在实际业务中,我们经常遇到需要设置某些字段是必输的.那么在SAP中创建销售订单时如何控制必填字段呢?请看操作手册 第一步:设置屏幕增强 T-CODE:shd0 上截图 1----输入需要控制的事物代码 ...

  5. mysql 删除重复记录语句

    mysql 根据条件删除重复记录 只保留最小id的重复数据 DELETEFROM newsWHERE news_id IN ( SELECT a.news_id FROM ( SELECT news_ ...

  6. mysql 查询当天、本周,本月,上一个月的数据

    今天 select * from 表名 where to_days(时间字段名) = to_days(now()); 昨天 近7天 DAY) <= date(时间字段名) 近30天 DAY) & ...

  7. Python从零开始(1)新手常问

    如何清除屏幕 如果是在Windows命令行中,输入 import os os.system('cls') 在IDEL中没有找到完美的清除屏幕的方法 网上提到用新建窗口的方法 如何退出Python提示符 ...

  8. My97DatePickerBeta 日历插件

    <!doctype html><html lang="en"><head> <meta charset="UTF-8" ...

  9. vector algorithm find

    本来想着申请了博客园以后 我要写的博客都必须是有深度有内涵的...好吧 结果我只能说我想多了 还是得一步一步慢慢来 最近小学期的任务是要做一个学校食堂餐卡管理系统     有“严重拖延症”的我  果然 ...

  10. C++ 之引用

    int argc ,char * argv[] - argument count & argument vector argc - 命令行参数个数,argv[]依次指向每一个命令行参数,其中a ...