现在的位置: 首页 > 综合 > 正文

ubuntu下把VIM变成一个IDE【转】

2014年01月12日 ⁄ 综合 ⁄ 共 4618字 ⁄ 字号 评论关闭

    原文地址:http://blog.sina.com.cn/s/blog_7745fc86010147h6.html

    在整理这篇文章的时候又发现一个好文章:http://blog.csdn.net/bokee/article/details/6633193

    首先我们安装vim编辑器,可以选用直接

    sudo apt-get install vim-gtk

    安装完成后,我们再来安装插件ctags,该插件主要是用来tags文件是由ctags程序产生的一个索引文件, ctags程序其是叫"Exuberant Ctags",
    是Unix上面ctags程序的替代品, 并且比它功能强大, 是大多数Linux发行版上默认的ctags程序. 那么tags文件是做什么用的呢?
    如果你在读程序时看了一个函数调用, 或者一个变量, 或者一个宏等等, 你想知道它们的定义在哪儿, 怎么办呢? 用grep?
    那会搜出很多不相干的地方. 现在流行用是的<C-]>, 谁用谁知道呀, 当光标在某个函数或变量上时, 按下"Ctrl+]",
    光标会自动跳转到其定义处, 够厉害吧, 你不用再羡慕Visual Studio的程序员了, 开始羡慕我吧~_~.

    两种方法安装,第一种:
    sudo apt-get install exuberant-ctags  
    输入:ctags --version
    Exuberant Ctags 5.7, Copyright (C) 1996-2007 Darren Hiebert
    Compiled: Mar 12 2008, 08:23:02
    Addresses: <dhiebert@users.sourceforge.net>, http://ctags.sourceforge.net
    Optional compiled features: +wildcards, +regex
    显示以上信息,安装成功

    第二种:
    在这个网站: http://ctags.sourceforge.net, 下载一个类似 ctags-5.8.tar.gz 的文件下来:
    用下面的命令解压安装:

    $ tar -xzvf ctags-5.8.tar.gz

    $ cd ctags-5.8

    $ ./configure

    $  make

    $ sudo make install

    安装完毕。

    然后就开始使用ctags仅需记住下面几条命令:(很简单吧,呵呵)
    1.  $ ctags –R *      ($ 为Linux系统Shell提示符)
    2.  $ vi –t tag         (请把tag替换为您欲查找的变量或函数名)
    3.  :ts                                (ts 助记字:tags list, “:”开头的命令为VI中命令行模式命令)
    4.  :tp                                (tp 助记字:tags preview)---此命令不常用,可以不用记
    5.  :tn                                (tn 助记字:tags next) ---此命令不常用,可以不用记

    6.  :ta x 跳转到符号x的定义处,如果有多个符号,直接跳转到第一处
    7. :tj x 可以看做上面3/6两个命令的合并,如果只找到一个符号定义,那么直接跳转到符号定义处,如果有多个,则让用户自行选择。

    8.  Ctrl + ]

    9.  Ctrl +T

    对于第一条而言,我们在代码的目录下打开终端,或者用cd切换到该终端下,然后输入$ctags -R,我们可以看到此时产生了一个tags文件,然后我们使用第二条命令比如输入$vim -t main 它表示我们用vim打开该目录下的main函数,接下来应该就能在终端看到main函数了,如果想要寻找某一个函数,或者变量,的定义,我们可以直接将光标移至该处,然后按下“Ctrl+]”,这样就能直接跳到这个变量或函数定义的源文件中,并把光标定位到这一行。用“Ctrl+t”可以退回原来的地方。即使用户使用了N次“Ctrl+]”查找了N个变量,按N次“Ctrl+t”也能回到最初打开的文件,它会按原路返回

    接下来我们来看看怎么在ubuntu下手动设置vim,下面介绍一种常用的方法
    首先我们可以在自己的主文件夹下,建立一个.vimrc文件,该文件是默认隐藏的,所以我们要用Chrl+H组合键来显示它,然后就是在里面设置自己的vim一些配置用法,如果说你也跟我一样暂时只是vim看代码方便,那么我建议你设置一些基本的功能:用gedit .vimrc打开然后输入:

    set syntax=on

    "配色方案
    colorscheme torte

    " 去掉输入错误的提示声音
    set noeb

    " 在处理未保存或只读文件的时候,弹出确认
    set confirm"

    自动缩进

    set autoindent

    set cindent

    " 自动换行
    set wrap

    " 整词换行
    set linebreak

    " Tab键的宽度
    set tabstop=4

    " 统一缩进为4
    set softtabstop=4
    set shiftwidth=4

    " 不要用空格代替制表符
    set noexpandtab

    " 在行和段开始处使用制表符
    set smarttab

    " 显示行号
    set number

    " 历史记录数
    set history=1000

    "禁止生成临时文件
    set nobackup
    set noswapfile

    "搜索忽略大小写
    set ignorecase

    "搜索逐字符高亮
    set hlsearch
    set incsearch

    "行内替换
    set gdefault

    "编码设置
    set enc=utf-8
    set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936

    "语言设置
    set helplang=cn
    set encoding=utf8
    set langmenu=zh_CN.UTF-8
    set imcmdline
    source $VIMRUNTIME/delmenu.vim
    source $VIMRUNTIME/menu.vim

    " 设置字体。
    set guifont=Liberation\Mono\ 12
    "set  guifont=Fixedsys\Excelsior\3.01\ 14

    let Tlist_Show_One_File = 1            "不同时显示多个文件的tag,只显示当前文件的
    let Tlist_Exit_OnlyWindow = 1          "如果taglist窗口是最后一个窗口,则退出vim
    let Tlist_Use_Right_Window = 1          "在右侧窗口中显示taglist窗口
    let Tlist_Auto_open = 1            "如果你想在启动VIM后,自动打开taglist窗口

    然后保存。

    接下来就是安装taglist插件,注意taglist依赖于ctags,所以要先装ctags,否则taglist装了也没法用!

    到http://vim.sourceforge.net/scripts/download_script.php?src_id=6416该地址下去找到taglist的安装包
    然后解压,这里其实可以鼠标右键,看到有个命令选项,直接解压到此处,点击就行了,而不用装B的去采用命令
    # unzip -d taglist  taglist_42.zip
    # cd taglist
    来解压。

    之后我们输入命令:
    cp doc/taglist.txt  /usr/share/vim/vim73/doc/
    cp plugin/taglist.vim  /usr/share/vim/vim73/plugin/

    每个人的vim版本不同,所以你的可能是别的版本vim**,不一定是73。

    这样就完成了在源代码处
    jason@ubuntu:~/lidar/3530/working-copy$ vim 3dMapping_thread.cpp
    打开源文件,然后输入TlistOpen在右边出现tag栏,右边的窗口就是前面介绍的TagList窗口, 其中列出了main.c文件中的tag, 并且按照"typedef", "variable", "function"等进行了分类. 将光标移到VimMain上, 如图中左边红色的方框, 按下回车后, 源程序会自动跳转到VimMain的定义处, 如图中右边的红色方框. 这就是TagList最基本也是最常用的操作. 再教你一个常用的操作, 你在浏览TagList窗口时, 如果还不想让源码跳转, 但是想看看tag在源码中完整的表达,
可以将光标移到你想要看的tag上, 如图中上边黄色的方框, 然后按下空格键, 在下面的命令栏中, 如图下边黄色的方框, 会显示该tag在源码中完整的写法, 而不会跳转到源码处.  
    输入:q退出taglist,  
    输入:TlistOpen在源代码和tag之间切换。

    taglist 安装和使用可参考这个网站:http://blog.csdn.net/duguteng/article/details/7414592

   

    接下来安装WinManage插件显示目录

    到http://www.vim.org/scripts/script.php?script_id=95下载插件,然后解压,
    然后:
    sudo cp winmanager.txt /usr/share/vim/vim73/doc/
    sudo cp winfileexplorer.vim  /usr/share/vim/vim73/plugin/
    sudo cp winmanager.vim  /usr/share/vim/vim73/plugin/
    sudo cp wintagexplorer.vim  /usr/share/vim/vim73/plugin/

    然后在.vimrc中输入:
    let g:winManagerWindowLayout='FileExplorer|TagList'
    nmap wm :WMToggle<cr>
    搞定。

    接下来试试效果:
    jason@ubuntu:~$ vim 3dMapping_thread.cpp
    然后正常模式按下wm,会看到左边显示两个窗口,目录和taglist。在按下wm就消失了,每次都是按entel键打开相应的函数或者目录。
    :TlistOpen和:q之间切换。

onmicppcompete参考:

http://blog.csdn.net/duguteng/article/details/7417181

还有几篇好的文章:

http://www.360doc.com/content/10/0928/13/3564483_57033907.shtml

抱歉!评论已关闭.