vim典型开发环境设置

来源:互联网 发布:mac新系统sierra 编辑:程序博客网 时间:2024/04/28 16:17

这里主要集中在以下的几个方面来介绍:

一直以来windows上面的程序员都感觉vs提供的开发IDE对于职业程序员的来说是简直可以称得上是上帝赐予的礼物一般,拿在手里爱不释手,它优秀的代码管理方式,方便快捷的

代码导航,可以将工程代码开发人员从庞杂的代码管理中彻底的解放出来,将自己有限的精力主要集中在代码逻辑的开发以及关键业务的构建上面!但对于开始进入unix开发世界的
我们来说,开始可能都在苦苦的寻找一款类似于VsIDE一样的强大开发工具来加快我们的开发进度,一段时间之后才发现unix系统上面的风俗习惯(呵呵)原来是要自理更生呀,
自己的环境要自己创造,自己做主!再也没有一个ide式的保姆来宠着我们了,哈哈!既然这样,话不多说,今天就从下面三个方面入手打造一款属于自己的unix开发ide(呵呵!)

开始之前,先普及下基础概念,然后约定一下表达规范。
1)Vim存在多个配置文件vimrc,比如/etc/vimrc,此文件影响整个系统的Vim。还有~/.vimrc,此文件只影响本用户的Vim。而且~/.vimrc文件中的配置会覆盖/etc/vimrc中的配置。这里我们只修改~/.vimrc文件。
2)Vim的插件(plugin)安装在Vim的runtimepath目录下,你可以在Vim命令行下运行"set rtp“命令查看。这里我们选择安装在~/.vim目录,没有就创建一个。
3)当本文说”在Vim命令行下运行cmdxx命令“时,意思是指在Vim的命令行模式下运行cmdxx命令,即在Vim的正常模式下通过输入冒号":"进入命令行模式,然后紧接着输入命令cmdxx。在后文描述中都会省略冒号":"输入。
4)如果没有说明“在Vim命令行下运行某命令”,则是在shell中执行该命令。
5)如果命令中间被空白符间隔或有与正文容易混淆的字符,我会用双引号将命令与正文区分。所以读者在实际操作时,不要输入命令最前面和最后面引号。
6)本文关于组合快捷键的描述,形如a-b形式的快捷键表示同时按下a键和b键,而形如"a-b c"形式的快捷键,则表示先同时按下a键和b键,然后放开ab键,再按下c键。


(1)代码导航:ctags
首先一款好的开发环境要有代码导航的功能,这样能够方面我们在不同的功能模块儿,不同的类,不同的函数,变量之间跳转,这里采用的是vim的兼容插件ctags
   1,安装使用Ctags
        Ctags工具是用来遍历源代码文件生成tags文件,这些tags文件能被编辑器或其它工具用来快速查找定位源代码中的符号(tag/symbol),如变量名,函数名等。比如,tags文件就是Taglist和OmniCppComplete工作的基础。
       这里介绍从源代码包安装,安装步骤跟大多数软件的从源代码安装步骤一样。
        1)从http://ctags.sourceforge.net/下载源代码包后,解压缩生成源代码目录,
        2)然后进入源代码根目录执行./configure,
        3)然后执行make,
        4)编译成功后执行make install。
        5)在~/.vimrc中增加以下这行:
[plain] view plaincopy
map <C-F12> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR>  
        到此,Ctags已安装成功。
        使用Ctags的也很简单。 进入我们的项目代码根目录,执行以下命令:
[plain] view plaincopy
ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .  
        另外,由于在前面第5条,我们已经在Vim中配置了Ctrl-F12组合快捷键,所以我们也可以进入代码根目录后,打开Vim,按下Ctrl-F12快捷键自动生成tags文件。
        命令执行完后,会在源代码目录生成tags文件。Vim默认会自动读取当前目录下的tags文件,所以不需要修改~/.vimrc文件。此时,我们已经具有定义跳转的功能了。有两组快捷键是最常用的。
               Ctrl-]    跳转到光标所在符号的定义。
               Ctrl-t    回到上次跳转前的位置。
        更多功能通过命令man ctags或在Vim命令行下运行help ctags查询

(2)代码目录结构遍历
 这里先介绍意向试用taglist的方法来遍历目录文件结构的插件,这也是vim编程中常用的遍历文件目录的方法!
 Taglist是以tags文件为基础,需要ctags生成tags文件。
安装ctags,Redhat和CentOS可以执行yum install ctags,Debian和Ubantu可以执行apt-get install ctags
下载Taglist,地址是http://sourceforge.net/projects/vim-taglist/files/vim-taglist/
解压taglist_45.zip,可以看到有两个目录doc和plugin,结构如下
复制代码
taglist_45
|
|-------- doc
|         \-------- taglist.txt
|
\-------- plugin
          \-------- taglist.vim
复制代码
 
执行下列shell命令,即安装完成
cp  doc/taglist.txt  /usr/share/vim/vim72/doc/
cp  plugin/taglist.vim  /usr/share/vim/vim72/plugin/

使用方法:
在源码目录下,执行ctags -R对各目录递归创建生成tags文件
用Vim打开源码文件,以命令模式执行Tlist,即可启用Taglist插件,<F1>可以查看taglist的帮助信息
附上部分.vimrc的配置内容以供参考 
"语法高亮
syntax on
"显示行号
set number
"自动缩进与C语言风格缩进
set autoindent
set cindent
"缩进宽度
set tabstop=4
set softtabstop=4
set shiftwidth=4
"建议开启expandtab选项,会自动将tab扩展很空格,代码缩进会更美观
set expandtab
"set noexpandtab
"switch case 对齐风格
set cino=g0,:0
"
" taglist
"
let Tlist_Show_One_File=1    "只显示当前文件的tags
let Tlist_WinWidth=40        "设置taglist宽度
let Tlist_Exit_OnlyWindow=1  "tagList窗口是最后一个窗口,则退出Vim
let Tlist_Use_Right_Window=1 "在Vim窗口右侧显示taglist窗口

此外利用vim自带的浏览文件目录的插件也能达到浏览文件目录,编辑代码文件的目的,这里主要介绍:explorer.vim和netrw.vim两个插件

在开发过程中,经常需要查找某个文件。我们前面在介绍path选项时,介绍过使用find命令查找文件的方法。本节介绍vim的文件浏览插件。

在vim 7.0以前,文件浏览功能由explorer.vim插件提供,在vim 7.0中,这个插件被netrw.vim插件所代替。本文以vim 7.0为例,主要介绍netrw.vim插件。
netrw.vim是vim的标准插件,它已经伴随vim而发行,不需要安装。
我们现在试一下vim文件功能,当你使用vim尝试打开目录时,vim会自动调用netrw.vim插件打开该目录

(从操作系统的视角来看,目录其实是一种特殊的文件)。例如,我们在vim中执行命令”:e ~/src/vim70/src/“,会显示下面的窗口:




利用此插件可以在不同的文件中切换编辑对象了


(3) 在不同缓冲区中编辑文件以及切换不同的编辑缓冲区
:sp [filename]打开一个新的缓冲区,如果有filename则内容为该文件,否则为当前文件
Ctrl+w n新建一个缓冲区
Ctrl+w q退出光标所在的缓冲区
Ctrl+w j光标移动到下一缓冲区
Ctrl+w k光标移动到上一缓冲区
Ctrl+w l光标移动到右一缓冲区
Ctrl+w h光标移动到左一缓冲区
Ctrl+w v左右切割窗口新建缓冲区
Ctrl+w s上下切割窗口新建缓冲区
Ctrl+w o使光标所在缓冲区最大化,其他缓冲区隐藏

ls     命令可以查看当前的缓冲区数目
buffer + num 可以在不同缓冲区中切换
也可以用ctrl+shift+^在不同的缓冲区中切换


0 0