vim + taglist + ctags

在windows下安装:
1. 先在www.vim.org上下载 taglist_45.zip,解压后有两个文件doc和plugin。把这个两个文件,拷到vim的安装目录的doc和plugin即可。
2. 打开vim
:helptags $(home)/doc
:help taglist
这时就可以看taglist的帮助内容了。

3. 下载Exuberant Ctags
下载一个支持windows的版本的,只要拷贝出ctags.exe这个文件就可以,把它放在$(home)/vim71下(也就是在vim的安装目录下 找到.exe这样的文件所在的文件目录下)

特别重要的地方:
编辑_vimrc,在里面加入以下两句:
    set tags=tags;
    set autochdir
    注意第一个命令里的分号是必不可少的。这个命令让vim首先在当前目录里寻找tags文件,如果没有找到tags文件,或者没有找到对应的目标,就到父目 录中查找,一直向上递归。因为tags文件中记录的路径总是相对于tags文件所在的路径,所以要使用第二个设置项来改变vim的当前目录。

如果不加入这两个语句,那么有的宏定义,还有一些就找不到了。

4. 同时按下win + R , 键入cmd,打开dos窗口,在所要看的源代码根目录下运行:

ctags -R

如果不能运行,可能是ctags.exe的路径没有设置。

在这个目录下会生成一个tags文件。可以看看里面的内容。

5. 打开源文件,键入
:Tlist (再次键入时,关闭)
这时可以看到两个窗口(要改变窗口的位置,可以修改 taglist.vim或是在_vimrc中修改)
==================================
最常用的几个命令:
:Tlist
ctr + ]
ctr + o
ctr + W W
==================================
cscope 由于在windows下要编译,就没有安装。
有一个cscope_map的插件很好用。

 

 

 

安装gvim、 ctags、tlist:
-----------------------------------------
(1) 下载gvim72.exe并安装

(2) 下载
ctags57w32.zip (ctags)
解压后将ctags.exe放置到C:/windows/system32/

"开始" --> "运行" --> "cmd"
C:/Documents and Settings/Administrator>cd (进入源码所在目录)
D:/soft/linux-2.6.26/linux-2.6.26>ctags -R * (生成tags文件)

(3) 下载 taglist_45.zip (tlist)
解压后将taglist_45/plugin/taglist.vim放置到C:/Program Files/Vim/vim71/plugin
      将taglist_45/doc/taglist.txt放置到C:/Program Files/Vim/vim71/doc




编辑D:/Program Files/Vim/_vimrc
-----------------------------------------
set tags=D:/soft/linux-2.6.26/linux-2.6.26/tags


" TAB距离 (vim配置; vim技巧)
set tabstop=4          " 保存一个tab是4个字符

set softtabstop=4      " 按一次tab前进4个字符
set shiftwidth=4       " shiftwidth写代码时用到,缩进为4字符
set cindent
set nobackup           " 让VIM不生成备份文件(~文件)

" 打开文件时光标自动到上次退出该文件时的光标所在位置
autocmd BufReadPost * if line("'/"") && line("'/"") <= line("$") | exe "normal`/"" | endif

if has("win32")
    set guifont=Nimbus_Mono_l:h15:cANSI
    "set guifontwide=楷体_GB2312:h10
    "set guifontwide=YaHei Consolas Hybrid:h10
    au GUIEnter * simalt ~x   " 窗口最大化
endif

colorscheme    koehler        " 颜色类型

set pastetoggle=<F11>         " pastetoggle(粘贴模式切换)可以避免自动缩进
                              " 的带来的格式影响;每次按下<F11>键可以打开
                              " /关闭自动缩进功
set expandtab                 " 将tab键转换为空格



代码折叠
-----------------------------------------------
set foldmethod=syntax " 用语法高亮来定义折叠
set foldmethod= indent " 更多的缩进表示更高级别的折叠(这个似乎效果好一些)

zo 打开折叠,也可以用方向键(左右键)打开折叠
zc 关闭折叠(只要在被折叠的块中的任一个语句就行)
zC 对所在范围内所有嵌套的折叠点进行折叠
zO 对所在范围内所有嵌套的折叠点展开

    当使用marker方式时,需要用标计来标识代码的折叠,系统默认是{{{和}}},最好不要改动之。可以使用下面的命令来创建和删除折叠:

zf   创建折叠,比如在marker方式下:
     zf56G,创建从当前行起到56行的代码折叠;
     10zf或10zf+或zf10↓,创建从当前行起到后10行的代码折叠。
     10zf-或zf10↑,创建从当前行起到之前10行的代码折叠。
     在括号处zf%,创建从当前行起到对应的匹配的括号上去((),{},[],<>等)。

zd   删除(delete)在光标下的折叠。仅当'foldmethod'设为"manual"或"marker"时有效。
     : set foldmethod (查看当前foldmethod设置,vim默认设置为manual)。
zD   循环删除(Delete)光标下的折叠,即嵌套删除折叠。
     仅当'foldmethod'设为"manual"或"marker"时有效。
zE   除去(Eliminate)窗口里"所有"的折叠。
     仅当'foldmethod'设为"manual"或"marker"时有效。


切换窗口
-----------------------------------------------
<C-W><C-W> 切换当前窗口
当同时打开几个文件时,按 <C-W>_ 使当前窗口最大化

<C-W> = ctrl+w


[+I 显示文件中包含光标下<word>的所有行。我常用来浏览 某个id在程序中的引用情况。[+I (大写I)


df x    表示删除到下一个出现x的地方,x可以使任意字符。



%
--------------------------------
%用来匹配块
如果你的光标在类似([{}])或者#ifdef #else #endif上,输入%将把光标跳转到相应的匹配符号上去。

%还可以用来指定命令范围,如果你想把一个
{
    ...
}
的块全部删除。
可以先把光标移到{再敲d%

如果你想把一个块(包括{})全部往里缩进一个tab
可以把光标移到{敲>%

可以把光标移到{敲=% 就是缩进一个块



buffer切换
--------------------------------
map <Left> :bp<CR>
map <Right> :bn<CR>
map <F4>    :bd<CR>

就可以用左右方向健来切换buffer(一个编辑文件切换到下一个编辑文件);
F4关闭buffer(关闭当前编辑文件)。

set hidden " 允许在有未保存的修改时切换缓冲区

注: 模式匹配中的回车换行 /r

 

 

4.将tags文件在vim运行时导入。可以修改~/.vimrc,以后每次启动vim将自动导入此tags文件

:set tags=/root/develop/honeyids/tags
并设置语法高亮
syntax enable
syntax on


5.运行vim,   激活Taglist时用:TaglistToggle命令。在左边的tags区域和正常编辑区域切换时用ctrl+2

个w。

6.使用ctags时, ctrl+]可查看函数的定义。   ctrl+o返回源文件

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值