因工作需求,必须在终端下远程下代码,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. 点击按钮div显示,点击div或者document,div隐藏

    $("button").click(function(event){ event.stopPropagation(); if($("div").is(':hid ...

  2. MyBatis总结(一)

    一.创建测试项目工程 二.导包(一个myBatis所需的包,以及一个数据库操作的包) 三.创建实体类 四.配置文件的建立(最佳命名为(SqlMapConfig.xml)) <?xml versi ...

  3. 51nod 1174 1174 区间中最大的数

    题目链接:51nod 1174 1174 区间中最大的数 ST(Sparse Table)算法学习参考博客:http://blog.csdn.net/niushuai666/article/detai ...

  4. js的Promise学习笔记(1)

    1: 何为Promise Promise是抽象异步处理对象以及对其对象进行各种操作的组件,是基于并列/并行处理设计的一种编程语言. 说到基于JavaScript的异步处理,大多数都会想到利用回调函数. ...

  5. java入门笔记

    1.安装路径:不能含空格和中文,建议安装路径d:\java\jdk   2.名词 bin:binary javac:java compile java:运行java文件   3.命名: (1)尽量用英 ...

  6. Practical Malware Analysis里有关inetsim\APATEDNS

    以前从未接触过linux,碰到了许多问题,按步骤: 1\安装VMWARE,安装ubuntu16.04 问题1:之前装的是VM10,装完后没有安装VMTOOLS,我点安装 VMTOOLS,它弹出“简易安 ...

  7. Mysql 服务在本机,需要单机调试Mysql数据库 发生 不认识hostname‘localhost’

    今天在本机安装Mysql Server然后用Workbench打开,连接本机数据库 hostname:localhost port:3306 弹出:localhost 不能连接 错误-1042 尝试了 ...

  8. C++与C的关系

     C是结构化和模块化的语言,是基于过程的.        C++是面向对象的程序设计语言.        C++是C的超集,对C的功能做了扩充,增加了面向对象的机制.        C++包含头文件的 ...

  9. C# Request中修改header信息

    var headers = app.Context.Request.Headers; Type hdr = headers.GetType(); PropertyInfo ro = hdr.GetPr ...

  10. centos下搭建lamp环境

    1 在线安装所有的服务 yum -y install httpd mysql mysql-server php php-mysql postgresql postgresql-server php-p ...