一、环境:刚安装好的Ubuntu14.04,本文只能保证 在Ubuntu下能达到效果。

二、安装GVim。

sudo apt-get update
sudo apt-get install vim-gtk

三、自定义vim与Gim语法高亮。

控制语法高亮的文件叫做 语言名.vim,例如,你想自定义C语言的语法高亮,那么叫做c.vim。

你可以在自己的根目录下新建目录,然后在这里面配置,这样仅针对你一个用户有效

 ~/.vim/plugin  插件目录
~/.vim/doc 文档目录
~/.vim/syntax 语法目录
~/.vimrc 配置目录

不过我直接修改的全局的,即修改的是

/usr/share/vim/vim74/syntax/c.vim

中的。

将如下追加复制到你们的/usr/share/vim/vim74(数字可能因版本不同有变化)/syntax/c.vim文件中:

"========================================================
" Highlight All Function
"========================================================
syn match cFunction display "\<[a-zA-Z_][a-zA-Z_0-9]*\>[^()]*)("me=e-
syn match cFunction display "\<[a-zA-Z_][a-zA-Z_0-9]*\>\s*("me=e-
hi def link cFunction Special "========================================================
" Highlight All Math Operator
"========================================================
" C math operators
syn match cMathOperator display "[-+\*\%=]"
" C pointer operators
syn match cPointerOperator display "->\|\."
" C logical operators - boolean results
syn match cLogicalOperator display "[!<>]=\="
syn match cLogicalOperator display "=="
" C bit operators
syn match cBinaryOperator display "\(&\||\|\^\|<<\|>>\)=\="
syn match cBinaryOperator display "\~"
syn match cBinaryOperatorError display "\~="
" More C logical operators - highlight in preference to binary
syn match cLogicalOperator display "&&\|||"
syn match cLogicalOperatorError display "\(&&\|||\)=" " Math Operator
hi def link cMathOperator cComment
hi def link cPointerOperator Operator
hi def link cLogicalOperator cComment
hi def link cBinaryOperator cComment
hi def link cLogicalOperatorError cError

保存退出,如果之前你在配置文件即vimrc中设置了 syntax on的话,那么你就可以打开一个C语言文件体会效果了。但是在vim与GVim中效果不同。

四、设置vimrc,即配置vim选项

将如下文本追加到/etc/vim/vimrc中,你也可以写入~/.vimrc 配置目录中。

set nocompatible
set nu
colorscheme koehler
filetype on
set history=
syntax on
set autoindent
set smartindent
set tabstop=
set shiftwidth=
set showmatch
set vb t_vb=
set ruler
set incsearch
set background=dark set foldenable
set foldmethod=syntax syntax enable

粘贴复制的时候请删除行号。    注意, 所有的选项必须在 syntax enable之前,不然不会生效。

保存退出,此时会设置好了以下内容:

#去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限
#显示行
#设置高亮风格
#检测文件的类型号
#记录历史的行数
#背景使用黑色
#语法高亮度显示
#vim使用自动对起,也就是把当前行的对起格式应用到下一行;
#依据上面的对起格式,智能的选择对起方式,对于类似C语言编写上很有用
#第一行设置tab键为4个空格,第二行设置当行之间交错时使用4个空格
#设置匹配模#当vim进行编辑时,如果命令错误,会发出一个响声,该设置去 掉响声式,类似当输入一个左括号时会匹配相应的那个右括号
#在编辑过程中,在右下角显示光标位置的状态行
#查询时非常方便,如要查找book单词,当输入到/b时,会自动找到第一
#个b开头的单词,当输入到/bo时,会自动找到第一个bo开头的单词,依
#次类推,进行查找时,使用此设置会快速找到答案,当你找要匹配的单词
#时,别忘记回车
#加入了zc zo 关闭 打开折叠代码块

五、 跳转到变量函数定义处。

配置完此功能,可以利用ctrl+]跳转到定义,ctrl+t返回原位置。

5.1 看你是否安装了Ctags。如果没有,请前往http://ctags.sourceforge.net下载一个 名字类似 ctags-5.6.tar.gz的包。

然后解压并编译与安装:

    

$ tar -xzvf ctags-5.6.tar.gz
$ cd ctags-5.6
$ ./configure // 生成make文件
$ make
# make install // 需要root权限

    然后进入你正在开发准备编译工程的源码的目录,执行:

$ ctags -R

   会生成一个tags的文件,用vim打开你工程中的一个文件,例如main.c

然后在vim中执行:

    

:set tags=tags的目录/tags

这样将tags加入到了vim中。 如果你嫌麻烦,可以把这句话放入前文提到的 vimrc中去。

此时就可以ctrl+] 与 ctrl+t 的嗨嗨皮皮了。

六、左侧出现列表:

  6.1 http://www.vim.org/scripts/script.php?script_id=273 下载taglist_XX_zip

  6.2 ./.vim下解压此zip,也可以放到/usr/share/vim/vim74下。

6.3 解压后,doc 与 plugin中多了两个文件,你也可以自己在任意处解压该zip,把那俩文件放进去。

6.4 在/etc/vimrc中追加:

t Tlist_Show_One_File=
let Tlist_Exit_OnlyWindow=

然后在打开的源文件中 :Tlist即可。

参考网站:

http://blog.csdn.net/namecyf/article/details/7787479  主要参考来源。该网站的高亮处的代码有错,本文中根据其所改写。

http://blog.chinaunix.net/uid-1728743-id-24359.html  提供改写灵感

http://www.cnblogs.com/yootime/archive/2010/09/24/1833564.html   参考 安装GVim

http://blog.csdn.net/caoshuming_500/article/details/7648169 提供vimrc配置

Ubuntu14.04配置VIM与GVIM 高亮、跳转与变量函数列表的更多相关文章

  1. Caffe+CUDA7.5+CuDNNv3+OpenCV3.0+Ubuntu14.04 配置参考文献 以及 常见编译问题总结

    Caffe+CUDA7.5+CuDNNv3+OpenCV3.0+Ubuntu14.04  配置参考文献 ---- Wang Xiao Warning: Please make sure the cud ...

  2. Caffe+CUDA8.0+CuDNNv5.1+OpenCV3.1+Ubuntu14.04 配置参考文献 以及 常见编译问题总结

    Caffe + CUDA8.0 + CuDNNv5.1 + OpenCV3.1 + Ubuntu14.04  配置参考文献 ---- Wang Xiao  Anhui University  CVPR ...

  3. ubuntu14.04 配置网络

    ubuntu14.04 配置网络的练习 本文参考的资料: https://blog.csdn.net/liu782726344/article/details/52912797. 感谢作者的分享! 打 ...

  4. Ubuntu14.04配置gcc4.4.4+Qt4.8.4交叉编译环境

    安装32位程序运行支持 sudo apt-get install lib32stdc++6 lib32z1 lib32ncurses5 lib32bz2-1.0 可能报错: lib32stdc++6 ...

  5. Ubuntu14.04配置Mono+Jexus

    总所周知,ASP.NET是微软公司的一项技术,是一个网站服务端开发的一种技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们,就是所谓动态网站开发,它依赖运行于 IIS 之中的程序 .但 ...

  6. ubuntu14.04 配置中文输入法

    ubuntu14.04自带中文输入法,只要配置就可以了. 1.安装中文支持 System Settings -->  Language Support 点击 install/remove lan ...

  7. ubuntu14.04配置中文latex完美环境(texlive+texmaker+lyx)

    Ubuntu下的文档编辑虽然有libreoffice,但对中文和公式的排版始终不如ms office,因此要想写出高质量的文档,只能靠latex了,现在随着xeCjk的开发,中文文档在ubuntu下的 ...

  8. 64位ubuntu14.04配置adb后提示没有那个文件或目录

    1.配置完adb环境变量后在终端输入adb: ameyume@ameyume-HP-450-Notebook-PC:~$ adb /home/ameyume/adt-bundle-linux-x86_ ...

  9. ubuntu14.04 配置tomcat8

    ubuntu下配置tomcat的过程事实上和windows是差点儿相同的,以下一起来看一下怎样在ubuntu14.04中配置tomcat. 1.下载tomcat 地址:http://tomcat.ap ...

随机推荐

  1. SQL Server VALUES 使用一记住

    VALUES 用得最多,最常见的就是 INSER INOT 表名(列名1,列名2,......) VALUES(值1,值2,......) ------------------------------ ...

  2. 【已解决】UBuntu16.04软件中心更新后只有桌面

    出现问题之前 安装好系统之后,成功启动系统,根据软件中心提示,升级电脑安装的软件,如下图所示.点击install(安装)开始更新,之后无任何提示,其实这个时候已经出现了升级异常. 呈现问题 操作步骤一 ...

  3. 什么是EM算法?

    开头借用李航老师书中总结,概率模型有时既含有观测变量,又含有隐藏变量或者潜在变量,如果概率模型的变量都是观测变量,那么给定数据,可以直接用极大似然估计法,或者贝叶斯估计法估计模型参数,但是,当模型含有 ...

  4. Android 程序怎么打log

    常见的做法: 1. 定义一个常量(变量)作为是否输出log的flag: 2. 定义一个常量(变量)作为log级别设定: 2. 调试.打包时,按需要调整常量的值,从而控制log打印. 常见代码参考: h ...

  5. ZOJ 3544 / HDU 4056 Draw a Mess( 并查集好题 )

    方法参见:http://blog.acmol.com/?p=751 从最后一个线段开始倒着处理(因为之后的线段不会被它之前的线段覆盖),把这条线段所覆盖的所有线段编号合并到一个集合里,并以最左边线段编 ...

  6. Nginx主要模块常用指令说明

    核心模块(Core Modules): 主模块(Main Module):配置和服务器全局有关的一些参数,比如错误日志.进程.权限等 user worker_processes error_logsy ...

  7. InfluxDB数据备份和恢复方法,支持本地和远程备份

    本文属于<InfluxDB系列教程>文章系列,该系列共包括以下 17 部分: InfluxDB学习之InfluxDB的基本概念 InfluxDB学习之InfluxDB的基本操作 Influ ...

  8. 多线程 线程组 ThreadGroup

    package org.zln.thread; import java.util.Date; /** * Created by sherry on 000024/6/24 22:30. */ publ ...

  9. 以jhtml结尾的文件

    用一个实例来说明,直接上代码. LogonAction.java(一个servlet) package com.lz.web.action; import java.io.IOException; i ...

  10. android Toolbox和BusyBox

    在安卓系统中,Toolbox是能够实现内存的管理,备份管理和清除数据等功能的系统文件.用来对手机性能进行设置,需要root权限.能够被软件调用. 我们在updater-script文件中,知道有类似s ...