vim+Ctags+Taglist+WinManager工具的安装

阅读内核代码: vim+Ctags+Taglist+WinManager阅读器。

阅读器的安装:

在Ubuntu上安装vim编辑器: sudo apt-get install vim

配置vimrc文件: ~/目录下

          vim .vimrc

Vim配置文件.vimrc 配置内容: (整体vim参数设置一般放置在.vimrc这个文件,默认不存在,可自行手动创建)

"语法高亮
syntax on
"syntax off

"高亮度查找
set hlsearch     //设置高亮度查找

"设置底色色调
"set bg=dark
set bg=light

"显示行号
"set number
set nu       //设置行号
set nonu     //取消行号

"自动缩进与C语言风格缩进
set autoindent
set cindent

"缩进宽度
set ts=4    //设置tab键宽度
"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窗口

"
" winManager
"
let g:winManagerWindowLayout=’FileExplorer|TagList’



1.接下来就是Ctags的安装,当然你也可以是用Ubuntu的自动安装,但是那样不符合我们程序员的性格:

Ctags: 程序中跳来跳去----当光标在某个函数或变量上时, 按下"Ctrl+]", 光标会自动跳转到其定义处; 按<C-T>, 这样又跳回到setmouse()函数被调用的地方

软件包可以在http://ctags.sourceforge.net/下载。

接下来理所当然就是解压缩,以及安装

  tar -zxf ctags-5.8.tar.gz

  cd ctags-5.8

        ./configure        //配置源码:生成README介绍文档

  make

  sudo make install   //这句是要root权限的

这样就算是安装好了

此时,你再进到你要阅读的源代码目录中去,生成tag文件,就可以使用ctags的功能了!

例如:

  cd  /media//test

  ctags -R *

这步之后,在当前目录下,你就能发现tag文件了!!!    

至于tag的用法,网上很多哦!!!

不过还有一个小瑕疵, 你修改程序后, 比如增加了函数定义, 删除了变量定义, tags文件不能自动rebuild, 你必须手动再运行一下命令:

$ ctags -R *
使tags文件更新一下, 不过让人感到欣慰的是vim不用重新启动, 正在编写的程序也不用退出, 马上就可以又正确使用<C-]>和<C-T>了.

熟练的使用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.Ctrl + ] (跳转到定义处)
7.Ctrl + T (退回至跳转前)
8.:ta x (跳转到符号x的定义处,如果有多个符号,直接跳转到第一处
9.:ts x (列出符号x的定义)
10.:tj x (可以看做上面两个命令的合并,如果只找到一个符号定义,那么直接跳转到符号定义处,如果有多个,则让用户自行选择)
注意:运行vim的时候,必须在“tags”文件所在的目录下运行。否则,运行vim的时候还要用“:set tag=”命令设定“tags”文件的路径,这样vim才能找到“tags”文件。在完成编码时,可以手工删掉tags文件(帚把不到,灰尘不会自己跑掉)。

eg:--------:set tags=/media/sf_share_space/PKU/0B702_ucos3_2014/tags
[快捷方式:通过将该设置语句置于.vimrc文件中,开启Vim时直接启动该设置。]

2.安装Taglist

"Taglist"是一个用来浏览源代码的Vim插件, 这个插件可以让你高效地浏览各种不同语言编写的的源代码, "Taglist"有以下一些特点:
    * 在Vim的一个垂直或水平的分割窗口中显示一个文件中定义的tags(函数, 类, 结构,
      变量, 等)
    * 在GUI Vim中, 可以选择把tags显示在下拉菜单和弹出菜单中
    * 当你在多个源文件/缓冲区间切换时, taglist窗口会自动进行相应地更新.
      当你打开新文件时, 新文件中定义的tags会被添加到已经存在的文件列表中,
      并且所有文件中定义的tags会以文件名来分组显示
    * 当你在taglist窗口中选中一个tag名时, 源文件中的光标会自动跳转到该tag的定
      义处
    * 自动高亮当前的tag名
    * 按类型分组各tag, 并且将各组显示在一个可折叠的树形结构中
    * 可以显示tag的原始类型和作用域
    * 在taglist窗口可选择显示tag的原始类型替代tag名
    * tag列表可以按照tag名, 或者时间进行排序
    * 支持以下语言的源文件: Assembly, ASP, Awk, Beta, C,
      C++, C#, Cobol, Eiffel, Erlang, Fortran, HTML, Java, Javascript, Lisp,
      Lua, Make, Pascal, Perl, PHP, Python, Rexx, Ruby, Scheme, Shell, Slang,
      SML, Sql, TCL, Verilog, Vim and Yacc.
    * 可以很简单的扩展支持新的语言. 对新语言支持的修改也很简单.
    * 提供了一些函数, 可以用来在Vim的状态栏或者在窗口的标题栏显示当前的tag名
    * taglist中的文件和tags的列表可以在被保存和在vim会话间加载
    * 提供了一些用来取得tag名和原始类型的命令
    * 在控制台vim和GUI vim中都可以使用
    * 可以和winmanager插件一起使用. winmanager插件可以让你同时使用文件浏览器,
      缓冲区浏览器和taglist插件, 就像一个IDE一样.
    * 可以在Unix和MS-Windows系统中使用

  在http://www.vim.org/scripts/script.php?script_id=273上下载taglist_45.zip

安装更是简单,只是复制哦,不过要根据自己机子的情况复制正确哦

  unzip taglist_45.zip

此时会解压出来两个目录--doc/,plugin/

将这两个文件分别复制到~/.vim目录下,生成doc/和plugin/

         mkdir .vim

   cp doc/* ~/.vim

   cp plugin/* ~/.vim

然后配置vimrc文件: ~/目录下

          vim .vimrc

在.vimrc中加入下面两个设置语句: ( 根据自我需要选择 )

         26 let Tlist_Show_One_File=1    "只显示当前文件的tags
         27 let Tlist_WinWidth=40        "设置taglist宽度
         28 let Tlist_Exit_OnlyWindow=1  "tagList窗口是最后一个窗口,则退出Vim
         29 let Tlist_Ctags_Cmd="/home/jiangfan/Downloads/ctags-5.8/ctags"

         30 let Tlist_Use_Right_Window=1 “列表放在屏幕的右侧 依据个人习惯

   31 let Tlist_File_Fold_Auto_Close=1 “让当前不被编辑的文件的方法列表自动折叠起来, 这样可以节约一些屏幕空间

进到刚才已经tag好的目录:

         vim 

         进入vim后用该命令打开或关闭taglist窗口-----------------:Tlist

  :tag  <你所要查看的函数,或者是结构体,等等>  这样就能自动跳转到那个文件(快速定位)

TagList有一份详细的帮助手册, 用下面的命令打开手册, 好好学习一下吧:
:help taglist.txt

3.安装winmanager.zip

地址:http://www.vim.org/scripts/download_script.php?src_id=754
安装过程和Taglist 是一模一样的!---解压,复制,路径也是一样的哦……

一切都OK之后,当然还有一步---配置vimrc,不要看到配置的就畏缩哦,很简单的啦:

  let g:winManagerWindowLayout=’FileExplorer|TagList’

这样就好了,就把winManager和TagList两个都打开了,多方便哦……

好了,一切OVER,接下来就可以进入源代码目录咯:

  vim

  :WMToggle      //同时把winManager和TagList两个都打开或者关闭

用下面的命令可以调出帮助手册:

:help winmanager

这样就能得到我们最终的界面了,

 


4、安装目录树插件NERD tree

vim目录树插件NERD tree 可以可以列出文件目录结构,方便文件打开操作。

安装方法如下:

1.下载插件文件 

     http://www.vim.org/scripts/script.php?script_id=1658

2. 将文档解压缩至~/.vim目录

    VIM的配置文件放在.vimrc(个人的), /etc/vimrc(系统全局的) , 如果根目录中没有.vimrc文件,可以cp /etc/vimrc ~/.vimrc ,在此文件可以       添加个人配置命令

3. 在vim中 :NERDTree ,就可以列出当前文件的树状结构。

:NERDTree----就可以列出当前文件的树状结构
窗口切换----:ctrl+w+j/k,通过j/k可以上下切换,或者:ctrl+w加上下左右键,还可以通过快速双击ctrl+w依次切换窗口。

NoteFAN  

Vim配置文件.vimrc 配置内容:

  1 "语法高亮
  2 syntax on
  3 
  4 "高亮度查找
  5 set hlsearch
  6 
  7 "设置底色色调
  8 set bg=dark
  9 
 10 "可随时用退格键删除
 11 set backspace=2
 12 
 13 "显示行号
 14 set number
 15 
 16 "自动缩进与C语言风格缩进
 17 set autoindent
 18 set cindent
 19 
 20 "缩进宽度
 21 set tabstop=4
 22 set softtabstop=4
 23 set shiftwidth=4
 24 "建议开启expandtab选项,会自动将tab扩展很空格,代码缩进会更美观
 25 set expandtab
 26 "set noexpandtab
 27 
 28 "switch case 对齐风格
 29 set cino=g0,:0
 30 
 31 
 32 "
 33 " taglist
 34 "
 35 let Tlist_Show_One_File=1    "只显示当前文件的tags
 36 let Tlist_WinWidth=40        "设置taglist宽度
 37 let Tlist_Exit_OnlyWindow=1  "tagList窗口是最后一个窗口,则退出Vim
 38 let Tlist_Ctags_Cmd="/home/jiangfan/Downloads/ctags-5.8/ctags"
 39 let g:winManagerWindowLayout='FileExplorer|TagList'
 40 "在进入vim时自动打开winmanager
 41 let g:AutoOpenWinManager = 1
 42 
 43 "定义打开关闭winmanager快捷键
 44 nmap wm :WMToggle<cr>
 45 "定义打开关闭winmanager快捷键为F8
 46 nmap <silent> <F8> :WMToggle<cr>
 ...
 49"NERD Tree
 50 let NERDChristmasTree=1
 51 let NERDTreeAutoCenter=1
 52 let NERDTreeMouseMode=2
 53 let NERDTreeShowBookmarks=1
 54 let NERDTreeShowFiles=1
 55 let NERDTreeShowHidden=1
 56 let NERDTreeShowLineNumbers=1
 57 let NERDTreeWinPos='left'
 58 let NERDTreeWinSize=31
 59 nnoremap <silent> <leader>f :NERDTreeToggle<CR>
 60 
 61 
 62 "  
 63 " winmanager  
 64 " 
 65 :set tags=/media/sf_share_space/PKU/0B702_ucos3_2014/tags
~                                     


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值