安装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)
dfx 表示删除到下一个出现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 " 允许在有未保存的修改时切换缓冲区
注: 模式匹配中的回车换行
-----------------------------------------
(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)
dfx 表示删除到下一个出现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 " 允许在有未保存的修改时切换缓冲区
注: 模式匹配中的回车换行
作者:jackxiang@向东博客 专注WEB应用 构架之美 --- 构架之美,在于尽态极妍 | 应用之美,在于药到病除
地址:https://jackxiang.com/post/2447/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!
评论列表