使用vim代替IDE

放弃IDE,用VIM进行c/c++程序开发

老廖曾经在PHPER杂志上发表过一篇文章叫做用VIM做PHP开发环境,在里面详细介绍了用VIM做php开发需要做的准备,这篇文章就结合一些资料和我自己的一些经验来介绍下用VIM做C/C++开发需要做的事情,相对来说要比做php开发方便些。

前提条件是当然是你已经下载了VIM,如果没有的话请先到官方网站下载最新版本,地址是:http://www.vim.org/download.php

帮助文档下载地址::http://vimcdoc.sourceforge.net/

首先从视觉方面:

第一个要做的是缩进,修改你的VIM配置文件_vimrc,在最后加入set cindent,这样就设置了c风格的缩进,在这里缩进的大小是shiftwidth的值。

第二个要做的是语法高亮,这个是必须的,在中_vimrc加入syntax enable

第三个要做的字体的设置,设置一个舒服的字体可以让你编程的时候舒服好多,用editplus的时候我就用的Consolas,在vim中我还是用的这种字体,在_vimrc中加入

if has(”gui_running”)

set guifont=Consolas:h9

endif

表示运行界面vim的时候就用这种字体。

第四,设置配色方案,可以到点击这儿下载,然后放到$VIM"vimfiles"colors这个目录下,然后在中加入如下配置

if has(”gui_running”)

set guifont=Consolas:h9

” set color schema

colorscheme
colorscheme_name

endif

colorscheme_name为你需要设置的配色方案的名称。

接下来是在运行程序中用到的:

第一,使用ctag

VIM中已经带了Ctags这个程序。尽管ctags也可以支持其它编辑器,但是它正式支持的只有VIM。Ctags可以帮助程序员很容易地浏览源代码。用下面的命令可以在源代码的根目录下创建“tags”文件:

[/home/brimmer/src]$ ctags -R

“-R”表示递归创建,也就包括源代码根目录下的所有子目录下的源程序。“tags”文件中包括这些对象的列表:

l 用#define定义的宏

l 枚举型变量的值

l 函数的定义、原型和声明

l 名字空间(namespace)

l 类型定义(typedefs)

l 变量(包括定义和声明)

l 类(class)、结构(struct)、枚举类型(enum)和联合(union)

l 类、结构和联合中成员变量或函数

VIM用这个“tags”文件来定位上面这些做了标记的对象,下面介绍一下定位这些对象的方法:

1) 用命令行。在运行vim的时候加上“-t”参数,例如:

[/home/brimmer/src]$ vim -t foo_bar

这个命令将打开定义“foo_bar”(变量或函数或其它)的文件,并把光标定位到这一行。

2) 在vim编辑器内用“:ta”命令,例如:

:ta foo_bar

3) 最方便的方法是把光标移到变量名或函数名上,然后按下“Ctrl-]”。用“Ctrl-o”退回原来的地方。

注意:运行vim的时候,必须在“tags”文件所在的目录下运行。否则,运行vim的时候还要用“:set tags=”命令设定“tags”文件的路径,这样vim才能找到“tags”文件。

你还可以选择使用taglist这个插件,这个插件可以在右侧显示函数,变量等的列表

第二,改正程序中的错误

在VIM编辑器的环境下用“:make”(make工具的使用已经在我昨天的文章中 提到的云风的几篇文章中详细介绍到)就可以编译程序,当然其前提是在当前目录下有Makefile文件。运行完“:make”之后,如果程序中有错误,就 会显示出来。这时候,光标会自动指向第一个出现错误的地方,而且你还可以看到错误的提示。然后,你就可以改正错误,而不用手工找到出错的那一行。记住下面 几个有用的命令:

l “:cl”列出错误

l “:cn”让光标指向下一个错误

l “:cp”让光标指向上一个错误

l “:cnew”从头开始

你甚至可以让VIM识别出其它编译器而不是gcc的错误提示。这对一些开发嵌入式系统的程序员这很有用,因为他们很可能用的不是gcc而是其它编译器。通过设置“errorformat”的值,可以让VIM识别出编译器的出错提示。因为不同的编译器的出错提示是不同的,所以如果用的不是gcc就要重新设置。

errorformat”的值是一个字符串,它的格式和C语言的scanf的字符串格式相识。

gcc的“errorformat”的值为:%f:%l:"%m。其中“%f”表示文件名,“%l”表示行号,“%m”表示出错信息。

用“:h errorformat”查看详细的帮助信息。

“:h quickfix”、“:h make”、“:h makeprg”、“:h errorfile”查看其它的信息。

第三,使用快捷键

下面的这些快捷键对程序员很有帮助:

在函数中移动光标

[[ 转到上一个位于第一列的“{”

]] 转到下一个位于第一列的“{”

{ 转到上一个空行

} 转到下一个空行

gd 转到当前光标所指的局部变量的定义

  • 转到当前光标所指的单词下一次出现的地方

转到当前光标所指的单词上一次出现的地方

括号的匹配

% 用来进行小括号、中括号和大括号的匹配。这要看当前光标指向的是什么符号了。

结语:

vim一直是一些牛人推荐的工具并一直存在着是有着道理的,她大大提高了我们的工作效率,如果你打算长期变成的话,花一个星期的时间来熟悉vim的使用时很有必要的!
原文链接: https://www.cnblogs.com/hanyulcf/archive/2010/10/27/1863040.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/16670

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月7日 下午5:02
下一篇 2023年2月7日 下午5:03

相关推荐