vim菜鸟学习-中级篇1(一些快捷键和一些插件)
2012-05-07 17:23
309 查看
我使用的环境是ubuntu10.04, gvim7.2
1. 跳转到 百分比
normal模式下,n%,跳转到百分之n处
2. 跳转到行首行尾, normal模式下,命令为^和$
3. cscope
cscope是比ctags更加强大的工具,ctags只是实现了查找定义,但是要查找声明和在何处引用了该定义时,就无能为力了
而cscope就可以实现这些功能。
1)安装,根据官网( 先apt-get install,后将cscope_maps拷贝到vim/plugin中去)
2) cscope -Rb sourceDirectory
3)在sourceDirectory目录下,命令行下用gvim打开一个源文件
4)有两种方法是用进行查找:
(1)将鼠标移至目标处,是用 ctrl+\ 组合键后,按g就可以使用了
(2)使用命令:cs cscopeCommands
cscope commands:
add : Add a new database (Usage: add file|dir [pre-path] [flags])
find : Query for a pattern (Usage: find c|d|e|f|g|i|s|t name)
c: Find functions calling this function
d: Find functions called by this function
e: Find this egrep pattern
f: Find this file
g: Find this definition
i: Find files #including this file
s: Find this C symbol
t: Find assignments to
help : Show this message (Usage: help)
kill : Kill a connection (Usage: kill #)
reset: Reinit all connections (Usage: reset)
show : Show connections (Usage: show)
注意:这个有可能查找很慢,所以执行命令后,等一会儿
4. CCTree
这个工具用来生成函数间调用图关系的工具,使用cscope生成的数据库cscope.out
1)安装,根据官网
2)在cscope.out的同级目录,命令行下使用gvim打开一个源文件
3)执行命令 :CCTreeLoadDB cscope.out (别忘记冒号), 时间有点长
3) 将鼠标移动到要解析的函数上面ctrl+\组合键后,按>键,就可以看到该函数调用的函数的结果
4) 将鼠标移动到要解析的函数上面ctrl+\组合键后,按<键,就可以看到调用该函数的函数的结果
5)如果感觉列出的内容太多而无法阅读的话,可以设置CCTree的参数CCTreeRecursiveDepth=0和CCTreeMinVisibleDepth=0
5. Ctag与Taglist功能增强
1)默认配置下,Taglist不会显示c/c++文件中extern变量和函数,我们下面实现此功能。
(1) 打开taglist.vim文件,搜索c lan, 就可以看到c和c++的配置
(2) 将c与c++配置后面添加;p:externAndforwardfunction;x:externAndforwardVariable
(3) 使用ctags -R --c-kinds=+px --c++-kinds=+px生成ctags文件
(4)重新打开vim,打开taglist,就可以看到结果了
2) 默认情况下,Taglist总是显示所有的打开的文件的taglist很不方便,我们要实现只显示当前打开文件的taglist
打开vim配置文件/etc/vim/gvimrc,添加配置let Tlist_Show_One_File='1'
3) 默认情况下,Taglist将按照tag出现的顺序来显示,为了查找方便,我们设置根据tag名称来排列
打开vim配置文件/etc/vim/gvimrc,添加配置let Tlist_Sort_Type='name'
6. 在整个工程内查找某些字符串
有些时候我们需要在整个工程内查找一些字符串,我们可以这样做:
1) 按照我的基础篇所示,使用vim打开source code根目录下某个文件 ,这样确保vim当前目录为source code根目录
2) normal模式下输入:vimgrep /your String/ **
3) :copen 出现查找的结果
4) :cclose 关闭查找结果
7. NERDTree
可能需要在同一个窗口中,对于不同的文件进行对比编辑,这时只需要在NERDTree中选中文件,按i键,即可split一个窗口打开文件
1. 跳转到 百分比
normal模式下,n%,跳转到百分之n处
2. 跳转到行首行尾, normal模式下,命令为^和$
3. cscope
cscope是比ctags更加强大的工具,ctags只是实现了查找定义,但是要查找声明和在何处引用了该定义时,就无能为力了
而cscope就可以实现这些功能。
1)安装,根据官网( 先apt-get install,后将cscope_maps拷贝到vim/plugin中去)
2) cscope -Rb sourceDirectory
3)在sourceDirectory目录下,命令行下用gvim打开一个源文件
4)有两种方法是用进行查找:
(1)将鼠标移至目标处,是用 ctrl+\ 组合键后,按g就可以使用了
(2)使用命令:cs cscopeCommands
cscope commands:
add : Add a new database (Usage: add file|dir [pre-path] [flags])
find : Query for a pattern (Usage: find c|d|e|f|g|i|s|t name)
c: Find functions calling this function
d: Find functions called by this function
e: Find this egrep pattern
f: Find this file
g: Find this definition
i: Find files #including this file
s: Find this C symbol
t: Find assignments to
help : Show this message (Usage: help)
kill : Kill a connection (Usage: kill #)
reset: Reinit all connections (Usage: reset)
show : Show connections (Usage: show)
注意:这个有可能查找很慢,所以执行命令后,等一会儿
4. CCTree
这个工具用来生成函数间调用图关系的工具,使用cscope生成的数据库cscope.out
1)安装,根据官网
2)在cscope.out的同级目录,命令行下使用gvim打开一个源文件
3)执行命令 :CCTreeLoadDB cscope.out (别忘记冒号), 时间有点长
3) 将鼠标移动到要解析的函数上面ctrl+\组合键后,按>键,就可以看到该函数调用的函数的结果
4) 将鼠标移动到要解析的函数上面ctrl+\组合键后,按<键,就可以看到调用该函数的函数的结果
5)如果感觉列出的内容太多而无法阅读的话,可以设置CCTree的参数CCTreeRecursiveDepth=0和CCTreeMinVisibleDepth=0
5. Ctag与Taglist功能增强
1)默认配置下,Taglist不会显示c/c++文件中extern变量和函数,我们下面实现此功能。
(1) 打开taglist.vim文件,搜索c lan, 就可以看到c和c++的配置
(2) 将c与c++配置后面添加;p:externAndforwardfunction;x:externAndforwardVariable
(3) 使用ctags -R --c-kinds=+px --c++-kinds=+px生成ctags文件
(4)重新打开vim,打开taglist,就可以看到结果了
2) 默认情况下,Taglist总是显示所有的打开的文件的taglist很不方便,我们要实现只显示当前打开文件的taglist
打开vim配置文件/etc/vim/gvimrc,添加配置let Tlist_Show_One_File='1'
3) 默认情况下,Taglist将按照tag出现的顺序来显示,为了查找方便,我们设置根据tag名称来排列
打开vim配置文件/etc/vim/gvimrc,添加配置let Tlist_Sort_Type='name'
6. 在整个工程内查找某些字符串
有些时候我们需要在整个工程内查找一些字符串,我们可以这样做:
1) 按照我的基础篇所示,使用vim打开source code根目录下某个文件 ,这样确保vim当前目录为source code根目录
2) normal模式下输入:vimgrep /your String/ **
3) :copen 出现查找的结果
4) :cclose 关闭查找结果
7. NERDTree
可能需要在同一个窗口中,对于不同的文件进行对比编辑,这时只需要在NERDTree中选中文件,按i键,即可split一个窗口打开文件
相关文章推荐
- vim菜鸟学习-中级篇2(vim常用快捷键)
- vim菜鸟学习-中级篇2(经典配置)
- asp.net2.0学习历程 菜鸟到中级程序员的飞跃[z转]
- asp.net2.0学习历程 菜鸟到中级程序员的飞跃
- 关于Vim的一些常用快捷键命令操作
- php学习笔记(一)IDE(Sublime3)配置、快捷键、常用插件
- Vim快捷键学习
- vim一些快捷键
- 学习记录(部分myeclipse快捷键,一些面试题),有点乱,但是挺有用
- vim技巧快捷键学习
- Vim 编辑器常用命令和快捷键的学习
- vim插件快捷键
- linux(菜鸟)---linux vim学习
- asp.net2.0学习历程 菜鸟到中级程序员的飞跃
- 关于MacBook电脑vim的配置和设置以及关于vim编辑器的一些快捷键的使用
- vim学习 - 插件管理插件
- asp.net2.0学习历程 菜鸟到中级程序员的飞跃
- asp.net2.0学习指导 菜鸟到中级程序员的飞跃
- 学习java,用到了新的IDE(IntelliJ Idea),收集了一些快捷键以及注册码
- vim技巧快捷键学习