gvim常用的配置及插件 -windows

gvim常用的配置及插件 


接触vim也已经有一年多了,期间也用过一段时间的SourceInsight,SourceInsight是Windows下一款不错的查看代码的软件。利用它可以迅速的了解一个大型程序的结构。后来在Linux下进行了一段时间的程序开发,就回到vim上了,经过一段时间的接触,发现vim越来越好用,后来在Windows上也就基本上全用gvim了。

在这篇文章里我主要介绍一些我自己认为比较有用的一些快捷键和插件的配置,不介绍vim的基本操作。还有希望在看这篇日志之前最好先看吴垠大牛的手把手教你把Vim改装成一个IDE编程环境的文章,里面介绍的很是详细,我在这里只是补充一些。

 

首先介绍gvim的一些常用的目录比如

Linux下:

/etc/vim :gvim的配置文件gvimrc就在这个目录

/usr/share/vim: 默认安装,gvim的安装目录。改目录下面的一些重要的目录:

/usr/share/vim/plugin: 插件所放的目录

/usr/share/vim/doc :帮助文件所放的目录

/usr/share/vim/syntax :一些与语法相关的配置文件的目录。例如设置不同语言的高亮方式

/usr/share/vim/colors :主题所放的目录

在Windows下gvim的安装目录也可以找到相应的文件和文件夹。Windows下的配置文件是安装目录下的_vimrc文件。

一、语法高亮

首先在vim的配置文件里增加以下两句话

image 

配色方案的可以进行如下设置

image

我是比较喜欢desert 这个配色方案的,具体里面的颜色也可以自己修改。到colors文件夹下找到相应的配色方案的配置文件,然后。。。

hi Comment    guifg=Green

这是修改注释的颜色,还有相应其他的。你如果看那个颜色不爽,你就自己把它改成顺眼的颜色就行。

如果要函数和运算符高亮,可以看吴垠大牛的博客。不过需要注意的是我在将相应的配置加入到c.vim中后,发现//注释居然不能颜色高亮了。猜想可能是将//当成两个除号给高亮了,于是将这一段配置文件移到c.vim的文件首,注释也可以高亮了。

自己定义的关键字若是想高亮,则在配置文件里面加入如下语句即可。

syn keyword cType My_Type_1 My_Type_2 My_Type_3

二、在程序中跳转Ctags 的使用

 

在使用VS的vc助手之后,感觉程序的跳转非常的好用。在gvim中是否也有类似的功能呢?答案是肯定的。首先到这个http://ctags.sourceforge.net   去下载一个类似ctags-5.6.tar.gz的文件,然后在Linux下解压、安装。在Windows应该是有可执行文件的。在Windows下为了方便使用。安装完成之后,到你的工程的目录下运行ctags -R。然后可以发现生成了一个tags文件。这个文件主要记录文件中一些函数的位置关系,方便跳转。生成tags文件之后,在程序中的某一函数的使用出按“Ctrl ]”或“Ctrl + 左键单击”就可以跳转到函数的定义处。

在Windows下,可以将可执行文件(ctags.exe)拷贝到system32目录下。这样可以在配置文件添加一个映射快捷键,如下。这样修改完程序之后,生成tags文件就比较方便了。

如果你使用了其他的程序,如opencv等。想要跳转到Opencv,应该怎么办呢?很简单,只需要在Opencv的目录下利用ctags生成一个tags文件,然后在配置文件里面添加一条如下的语句。

image

三、快速注释 NERD_commenter

在VS中可以选中一段程序进行批量注释,这个功能在gvim里面也是有的,而且还更加好用。

下载地址:http://www.vim.org/scripts/script.php?script_id=1218

将下载下来的NERD_commenter.vim拷贝到plugin目录下,txt文件拷贝到doc目录下。然后在配置文件中添加如下语句,将注释和取消注释分别映射到和,当然你也可以改为其他的键。

image 

四、C++的编译和运行,折叠自动保存

对于只有一个源文件的程序利用下面的程序可以方便的编译和运行程序。

image

当有多个文件时,其实只要你编写好makefile文件,将上面的第二条执行的命令改成make即可。

gvim还有vs类似的代码折叠功能,选中一块代码,然后输入zf即可折叠这一段代码。效果如下图。

image

再在配置文件中添加如下的语句,就可以利用空格键来折叠和取消折叠代码了。

image

但是这样在关闭gvim下次在打开的时候,这些折叠信息就没有了。想要保存这些折叠信息,还需要在配置文件里面添加如下的语句。

image

五、自动添加注释DoxygenToolkit

在对程序写注释的时候,特别是对函数写注释的时候。其实很多的事情是重复的。如在注释里面写函数名,参数名等。要是能够自动生成的话该有多方便啊。这对于gvim来说也不是难事。只需要安装DoxygenToolkit插件。

下载地址:http://www.vim.org/scripts/script.php?script_id=987

将下载下来的DoxygenToolkit1.vim拷贝到plugin文件夹下。在配置文件中添加如下的语句即可。

image

这样配置之后,在函数名的一行按fg键即可自动生成如下的注释。

image

在光标移动到源文件的开始出,然后在命令行下输入 :DoxAuthor

image

六、自动补全 omnicppcomplete

vs下的自动补全功能可以帮助我们减少敲击键盘的次数,在gvim下也有类似的插件,不过好像是没有VS的好用,不过功能还是可以接受的。

下载地址:http://www.vim.org/scripts/script.php?script_id=1520

下载下来后将文件拷贝到对应的文件夹,然后在配置文件中添加如下的配置

image

然后在写代码需要自动补全的时候,按下tab键就可以了。效果如下:

image 

七、自动对齐 Tabular

下载地址:https://github.com/godlygeek/tabular

在我们编写程序的时候,很多时候会遇到如下的等号对齐等问题。

这样的程序看上去十分的不美观。如果能够把等号对齐的话看上去效果就好很多。可是要自己一个一个的去对齐又实在是太费时间了。gvim的Tabular插件可以很方便的实现这个功能。将下载下来的文件和文件夹拷贝到相应的目录下,然后将光标移动到这几个等号的第一行。然后在命令行下输入:

Tab /=

即可将等号对齐。

当然对齐的也可以不止是等号,还可以是其他的符号或字母。

八。 在工程中快速查找

grep.vim 地址http://www.vim.org/scripts/download_script.php?src_id=7645

解压后把grep.vim文件拷贝到d:\Program Files\Vim\vim73\plugin,在_vimrc中添加:

nnoremap <silent> <F3> :Grep<CR>

因为windows下是不带grep的,需要下载Grep for Windows http://gnuwin32.sourceforge.net/packages/grep.htm

下载后在环境变量中增加grep的路径;

用gvim打开一个源代码文件,光标选择需要查找的内容,按F3,确定要查找的内容和搜索范围,gvim会在弹出的QuickFix窗口中列出所有符合条件的搜索结果

Image(8)

 

九 文件浏览组件 WinManager

winmanager.zip 地址http://www.vim.org/scripts/download_script.php?src_id=754

将winmanager.zip解压和拷贝,解压后包含一个doc文件夹和一个plugin文件夹,将其中内容分别复制到d:\Program Files\Vim\vim73下的doc及plugin中

在_vimrc文件中加入以下内容:

let g:winManagerWindowLayout='FileExplorer|TagList' 
nmap wm :WMToggle<cr>

用gvim打开代码文件,normal状态下输入命令"wm",窗口如下:

Image(6)

左上角是浏览文件的窗口,左下角的是TagList窗口;

还有很多好用的插件,像TagList,WinManager等,吴垠大牛在他的博客里面已经介绍得非常的详细了。我这里就不再介绍了。以后遇到好用的插件我还会跟大家分享。今天就先到这里了,洗洗睡了~ 最后一部分的图显示有时候会出问题,我也不知道怎么回事,请大家见谅~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/509577.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构实验之求二叉树后序遍历和层次遍历

题目描述 已知一棵二叉树的前序遍历和中序遍历&#xff0c;求二叉树的后序遍历。输入 输入数据有多组&#xff0c;第一行是一个整数t (t<1000)&#xff0c;代表有t组测试数据。每组包括两个长度小于50 的字符串&#xff0c;第一个字符串表示二叉树的先序遍历序列&#xff0c…

CDH 6 安装服务哈希验证失败 解决方法

当安装cdh 6&#xff0c;使用本地搭建的parcel时&#xff0c;出现了哈希验证失败的问题&#xff1a; 查看了parcel的sha值&#xff0c;与官网的一致&#xff0c;没有问题&#xff1a; #parcel sha值 [rootlocalhost bigdata]# sha1sum CDH-6.0.0-1.cdh6.0.0.p0.537114-el7.pa…

Arrays.sort()用来自定义排序的使用

compareTo方法 public int compareTo(String anotherString)按字典顺序比较两个字符串。该比较基于字符串中各个字符的 Unicode 值。按字典顺序将此 String 对象表示的字符序列与参数字符串所表示的字符序列进行比较。如果按字典顺序此 String 对象位于参数字符串之前&#xf…

gvim配置

手把手教你把Vim改装成一个IDE编程环境(图文) By:吴垠Date:2007-09-07Version:0.5Email:lazy.fox.wu#gmail.comHomepage:http://blog.csdn.net/wooinCopyright:该文章版权由吴垠和他可爱的老婆小包子所有。可在非商业目的下任意传播和复制。对于商业目的下对本文的任何行为需…

双向队列

题目描述 想想双向链表……双向队列的定义差不多&#xff0c;也就是说一个队列的队尾同时也是队首&#xff1b;两头都可以做出队&#xff0c;入队的操作。 现在给你一系列的操作&#xff0c;请输出最后队列的状态&#xff1b; 命令格式&#xff1a; LIN X X表示一个整数&#…

Dubbo调用时报错Invalid token Forbid invoke remote service interface

dubbo开启token服务后&#xff0c;使用集群容错策略为FailoverClusterInvoker&#xff0c;当出现服务调用失败进行转移&#xff0c;重试其它服务器时&#xff0c;会出现token invalid错误&#xff0c;provider会拒绝服务调用。 原因&#xff1a; 消费端&#xff1a; 1、com.…

蓝桥杯-方格填数

方格填数 如下的10个格子 ––– | | | | –––– | | | | | –––– | | | | ––– &#xff08;如果显示有问题&#xff0c;也可以参看【图1.jpg】&#xff09; 填入0~9的数字。要求&#xff1a;连续的两个数字不能相邻。 &#xff08;左右、上下、对角都算相邻…

Gvim开发环境配置笔记--Windows篇

环境&#xff1a;Windows7 旗舰版 1、安装Gvim7.3 &#xff1a; 下载地址http://www.vim.org/download.php#pc。 2、安装中文帮助&#xff1a;vimcdoc-1.8.0-setup.exe 地址http://vimcdoc.sourceforge.net/ 会自动识别gvim的安装路径&#xff0c; 安装完后&#xff0c;gvim菜单…

Grafana : 前端页面 通过API Key免登录访问Grafana

文章目录场景一是使用匿名登陆&#xff0c;最简单方便二是使用grafana颁发一个API Key。场景 平台要集成grafana&#xff0c;想绕过用户登录&#xff0c;目前知道有2个方法。 前提&#xff1a;先修改配置defaults.ini/grafana.ini允许嵌入 allow_embedding true一是使用匿名…

数据结构实验之队列一:排队买饭

题目描述 中午买饭的人特多,食堂真是太拥挤了,买个饭费劲,理工大的小孩还是很聪明的,直接奔政通超市,哈哈,确实,政通超市里面也卖饭,有好几种菜,做的比食堂好吃多了,价格也不比食堂贵,并且买菜就送豆浆,吸引了不少童鞋。所以有时吧&#xff0c;人还是很多的&#xff0c;排队是免…

vim配置vimrc详解

一、vim/gvim 环境变量 1. vimrc的存放位置&#xff1a; 系统 vimrc 文件: "$VIM/vimrc" 用户 vimrc 文件: "$HOME/.vimrc" 用户 exrc 文件: "$HOME/.exrc" 系统 gvimrc 文件: "$VIM/gvimrc" 用户 gvimrc 文件: "$HOME/.g…

CentOS 使用iso镜像安装本地 yum 源

文章目录下载服务器镜像挂载iso镜像修改yum源挂载iso到系统中查看挂载状态挂载完成后清缓存安装服务测试下载服务器镜像 下载与我们服务器相同版本的服务器镜像。 查看当前服务器版本 [rootiZot101s4kxuygvttz67vjZ yum.repos.d]# cat /etc/redhat-release CentOS Linux re…

refresh的停车场

题目描述 refresh最近发了一笔横财&#xff0c;开了一家停车场。由于土地有限&#xff0c;停车场内停车数量有限&#xff0c;但是要求进停车场的车辆过多。当停车场满时&#xff0c;要进入的车辆会进入便道等待&#xff0c;最先进入便道的车辆会优先 进入停车场&#xff0c;而且…

vim目录说明

plugin、autoload、ftplugin有什么区别 很多初用vim的朋友在安装插件时都会有些疑惑。同样的插件&#xff0c;有些教程说安装在plugin目录&#xff0c;有些说安装在ftplugin目录&#xff0c;有些说安装在autoload目录&#xff0c;到底这些目录的区别是什么呢&#xff1f;今天阿…

Grafana Prometheus 服务安装部署(Linux服务器监控)

文章目录一、概述二、安装Prometheus1.安装node_exporter2.安装Prometheus三、安装Grafana展示监控监控进程一、概述 Prometheus 介绍 Prometheus是一套开源的监控&报警&时间序列数据库的组合&#xff0c;起始是由SoundCloud公司开发的。随着发展&#xff0c;越来越多…

加法变乘法(蓝桥杯)

题意&#xff1a; 我们都知道&#xff1a;123 … 49 1225 现在要求你把其中两个不相邻的加号变成乘号&#xff0c;使得结果为2015 比如&#xff1a; 123…10*1112…27*2829…49 2015 就是符合要求的答案。 请你寻找另外一个可能的答案&#xff0c;并把位置靠前的那个乘…

离散事件模拟-银行管理

题目描述 现在银行已经很普遍&#xff0c;每个人总会去银行办理业务&#xff0c;一个好的银行是要考虑 平均逗留时间的&#xff0c;即&#xff1a; 在一定时间段内所有办理业务的人员逗留的时间的和/ 总的人数。逗留时间定义为 人员离开的时间减去人员来的时间。银行只有考虑了…

Vim升华之树形目录插件NERDTree安装图解

无意中看到实验室的朋友使用的vim竟然能在左边显示树形目录&#xff0c;感觉很方便&#xff0c;这样子文件夹有什么文件一目了然。她说是一个插件叫NERDTree&#xff0c;安装执行后的效果如下&#xff0c;不是你想要的效果就别安了。我的系统是Ubuntu12.04&#xff0c;版本不同…

Grafana Prometheus Process-Exporter 服务进程监控

文章目录一、process-exporter安装二、Grafana展示离线导入在线导入之前介绍到Grafana Prometheus 安装部署并监控Linux服务器状态 https://datamining.blog.csdn.net/article/details/122671215 &#xff0c;这里我们介绍服务进程的通用监控。一、process-exporter安装 GitHu…

计算机学生的未来

计算机专业毕业后大致的工作方向是软、硬、网、图 四大类 尤其以软件、网络为现今的首选 从岗位上分&#xff0c;又可以分为技术道路、营销道路两大方向 if 你选择作技术&#xff0c;then 从现在开始&#xff0c;牢记&#xff1a; 天道酬勤&#xff01;&#xff01;&#xff…