因工作需求,必须在终端下远程下代码,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. C++ 指向成员函数指针问题

    成员函数指针与常规指针不同,一个指向成员变量的指针并不指向一个内存位置.通常最清晰的做法是将指向数据成员的指针看作为一个偏移量. class ru_m { public: typedef int (r ...

  2. 点击空白处div消失的方法

    这是做的js页面的一部分,也是上一篇文章中加载json格式数据后展示的效果界面. 现在的问题是:点击南京市后会弹出下面的白色的框,点击框右上角的X号后会关闭白色的框,现在想点击白色的框周围的任一地方, ...

  3. ionic 通过PouchDB + SQLite来实现app的本地存储(Local Storage)

    首先声明,本教程参考国外网站(http://gonehybrid.com/how-to-use-pouchdb-sqlite-for-local-storage-in-your-ionic-app/) ...

  4. 安卓xml文件中常见的问题

    1.EditText显示不完全

  5. Nuget包之间的依赖

    为什么我们使用依赖呢??原因是某些资源是基于某些资源的基础上才可以运行的,比如bootstrap基于Jquery,EntityFramework.zh-Hans基于EntityFramework,如果 ...

  6. docker-registry 搭建私有仓库服务器

    我使用了两个虚拟机: 1)Ubuntu是服务器ip:192.168.84.128 2)centos是客户端ip:192.168.84.129 1.在服务端下载registry镜像  docker pu ...

  7. Topcoder SRM570 900 CurvyonRails

    题意:给定一个网格,一些格子是障碍不用管,剩余的格子是城市,你可以修建铁路,铁路的形状可以是直的或者弯的,也就是说可以以这个点为节点连接它四联通的其中两个方块.要求用一个或多个环来覆盖所有城市.对于有 ...

  8. css 背景透明文字(内容)不透明三种实现方法

    好久没写博客了.以前还想着最少一个月抽空写几篇.结果没做到O(∩_∩)O~~.好吧.现在努力,继续坚持. 看着以前写的东西,感觉自己在逐渐成长. 先上图: 本文主要记录如上图一样的.文字或内容不透明, ...

  9. Android的权限检查

    Application的权限: 可以在AndroidManifest.xml中用<permission>定义运行Application需要的权限. 用<uses-permission ...

  10. 读取.properties配置文件

    方法1 public  class SSOUtils { protected static String URL_LOGIN = "/uas/service/api/login/info&q ...