vim php psr2 插件,vim插件管理

Vim插件管理

一、安装vim

Ubuntu安装vim:

sudo apt-get install vim vim-scripts vim-doc

说明:中文支持的方法:

在下面的网站下载中文帮助的文件包:

http://vimcdoc.sf.net       (English)

http://vcd.gro.clinux.org    (中文)

下载的文件包应该是类似这样的:vimcdoc-1.8.0.tar.gz

解压后其中有个doc文件夹,将其中的内容全部复制到~/.vim/doc,或者vim安装目录下(/usr/share/vim)的doc目录中,此时vim中的help信息已经是中文的了.

注意:

a.如果无法显示中文,在~/.vimrc中增加下面这句试试:

set helplang=cn

b.帮助文件的文本是utf-8编码的,如果想用vim直接查看,需要在~/.vimrc中设置:

set encoding=utf-8

二、语法高亮

在~/.vimrc文件中增加下面几句话:

syntax enable

syntax on

再重新启动vim,并打开一个c程序文件即可。如果你不喜欢这个配色方案你可以在"编辑->配色方案"(gvim)中选择一个你满意的配色方案,然后在~/.vimrc文件中增加下面这句:

colorscheme desert

如果菜单中的配色方案你还不满意,在vim.org上跟你一样的人很多,他们做了各种各样的颜色主题,你可以下载下来一个一个的试,多地可以看到你眼花。如果这样你还不满意(你还真是XXXX),没关系,vim的作者早想到会有你这种人了。你可以创建你自己的颜色主题:

:help syntax.txt

更炫的语法高亮:

你可能会发现很多东西没有高亮起来,比如运算符号,各种括号,函数名,自定义类型等。操作方法如下:

主要的思路是新建一个语法文件,在文件中定义你要高亮的部分,想高亮什么就高亮什么,用vim就是这么自信。所谓的语法文件就是vim用来高亮各种源文件的一个脚本,vim靠这个脚本的描述来使文件中的不同文本显示不同的颜色,比如C语言的语法文件放在类似于这样的一个路径中:/usr/share/vim/vim72/syntax/c.vim

其他语言的语法文件也可以在这个路径中找到,你的也许不在这个路径中,不管它,在你自己的HOME下新建一个语法文件,新建一个空文件:~/.vim/syntax/c.vim

在其中加入

"========================================================" Highlight All Function"========================================================synmatchcFunction"/[^()]*)("me=e-2synmatchcFunction"//s*("me=e-1hicFunctiongui=NONEguifg=#B5A1FF"========================================================" Highlight All Math Operator"========================================================" C math operatorssynmatchcMathOperatordisplay"[-+/*/%=]"" C pointer operatorssynmatchcPointerOperatordisplay"->/|/."" C logicaloperators - boolean resultssynmatchcLogicalOperatordisplay"[!<>]=/="synmatchcLogicalOperatordisplay"=="" C bit operatorssynmatchcBinaryOperatordisplay"/(&/||/|/^/|<|>>/)=/="synmatchcBinaryOperatordisplay"/~"synmatchcBinaryOperatorErrordisplay"/~="" More C logical operators - highlight in preference to binarysynmatchcLogicalOperatordisplay"&&/|||"synmatchcLogicalOperatorErrordisplay"/(&&/|||/)="" Math OperatorhicMathOperatorguifg=#3EFFE2hicPointerOperatorguifg=#3EFFE2hicLogicalOperatorguifg=#3EFFE2hicBinaryOperatorguifg=#3EFFE2hicBinaryOperatorErrorguifg=#3EFFE2hicLogicalOperatorguifg=#3EFFE2hicLogicalOperatorErrorguifg=#3EFFE2

再打开你的C文件看看,许多高亮符号。如果你自己增加了一个类型或者结构之类的,怎么让它也象"int", "void"这样高亮起来呢?再在上面的文件~/.vim/syntax/c.vim中添加下面的内容:

"========================================================" My Own DataType"========================================================synkeywordcTypeMy_Type_1 My_Type_2 My_Type_3

这样你自己的类型My_Type_1,My_Type_2,My_Type_3就也可以向"int"一样高亮起来了,这样的缺点是每增加一个类型,就要手动在这里添加一下。

三、Ctags

ctags可以建立源码树的标签索引(标签就是一个标识符被定义的地方,如函数定义),使程序员在编程时能迅速定位函数、变量、宏定义等位置去查看原形。以下是在ubuntu下ctags的下载安装和配置过程:

1、下载并安装ctags

sudo apt-get install ctags

2、建立源码索引

比如我经常需要查阅Linux的内核代码,而这些代码放在/home/lqb/arm/linux-2.6.24.7目录下那么在终端进入到该目录后,输入命令

ctags -R *

你会发现多了一个tags文件,这个就是索引文件。

3、注册索引文件tags的路径

vi ~/.vimrc

在打开文件的最后添加如下内容(当然,具体路径根据你自己的情况)

"--ctags setting--

"按下F5重新生成tag文件,并更新taglist

map :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q . :TlistUpdate

imap :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q . :TlistUpdate

settags=tags

settags+=./tags "add current directory's generated tags file

settags+=~/arm/linux-2.6.24.7/tags "add new tags file

在ctags -R生成tags文件后,不要将tags移动到别的目录,否则ctrl+]时,会提示找不到源码文件)set tags+=./tags表示在当前工作目录下搜索tags文件。

set tags+=~/arm/linux-2.6.24.7/tags表示在搜寻tags文件的时候,也要搜寻~/arm/linux-2.6.24.7/文件夹下的tags文件。

然后保存并退出vi。这样,你就可以用vim在任意地方查看有关Linux的函数原形

4、Ctags命令用法

在当前窗口显示标签执行下列命令:

Ctrl+]跳到当前光标下单词的标签

Ctrl+O返回上一个标签

Ctrl+T返回上一个标签

:tag TagName跳到TagName标签

如果不希望在当前窗口显示标签,可以使用以下命令:

:stag TagName新窗口显示TagName标签,光标跳到标签处

Ctrl+W +]新窗口显示当前光标下单词的标签,光标跳到标签处

当一个标签有多个匹配项时(函数(或类中的方法)被多次定义),":tags"命令会跳转到第一处。如果在当前文件中存在匹配,那它将会被首先使用。

可以用这些命令在各匹配的标签间移动:

:tfirst到第一个匹配

:[count]tprevious向前[count]个匹配

:[count]tnext向后[count]个匹配

:tlast到最后一个匹配

或者使用以下命令选择要跳转到哪一个

:tselect TagName

输入以上命令后,vim会为你展示一个选择列表。然后你可以输入要跳转到的匹配代号(在第一列)。其它列的信息可以让你知道标签在何处被定义过。

以下命令将在预览窗口显示标签

:ptag TagName预览窗口显示TagName标签,光标跳到标签处

Ctrl+W + }预览窗口显示当前光标下单词的标签,光标跳到标签处

:pclose关闭预览窗口

:pedit file.h在预览窗口中编辑文件file.h(在编辑头文件时很有用)

:psearch atoi查找当前文件和任何包含文件中的单词并在预览窗口中显示匹配,在使用没有标签文件的库函数时十分有用。

四、管理Vim插件的工具------Vim-addons-manager

大家都知道,vim有很多扩展,比如latexsuite, taglist, calendar, bufexplorer等。这些扩展使得vim的威力倍增,大大的方便了各种处理工作。但是也带来了一个问题,系统中的扩展装的多了之后,vim的启动速度就会变慢。最重要的是,系统默认安装的很多扩展我们平常都使用不到,经常使用的也就几个扩展,偶尔会用一下另外的几个扩展。对于个人电脑这个很容易解决,只安装需要的扩展就行了,但是对于多个用户一起使用的服务器来说就不合适了。另外,vim-scripts这个包里有巨多的扩展,要么全装,要么不装,也不好办。debian是如何解决这个问题呢,就是通过vim-addon-manager。vim-addon-manager提供了一套机制。首先,安装到系统中的所有扩展默认情况下都不加入vimruntimepath路径,这样就不会自动装载。其次,vim-addon-manager提供了一个注册机制,每安装一个扩展,就需要向vim-addon-manager进行注册。这样一来,vim-addon-manager就知道了系统中所有扩展的信息。

vim-addon-manager提供了vim-addons命令,允许每个用户自由的控制使用哪些扩展,禁用哪些扩展。实现方式是通过符号链接将扩展的文件到每个用户的.vim/目录。使用上很简单:

vim-addons status显示系统中安装了哪些扩展,哪些是对当前用户开启的,哪些是禁用的

vim-addons install extension-name

对当前用户安装某个扩展,即创建符号链接

vim-addons remove

对当前用户删除某个扩展,即删除符号链接

vim-addons disable

对当前用户禁用某个扩展,在配置文件中插入扩展的禁用命令

vim-addons amend

对当前用户启用某个扩展,从配置文件中移除扩展的禁用命令

说明:如果不先安装vim-script,使用vim-addons显示的插件比较少,安装完成之后可以显示很多插件。

我们介绍如何独立于系统配置文件之外,建立自己的Vim配置文件。当我们自己下载安装Vim插件的时候,也可以另外建立目录,放置我们自己的插件。这个目录一般为/home/user/.vim,另外还需要建立一个插件子目录,一个插件文档子目录,以上的可以进入/home/user目录下通过下面的命令执行:

mkdir .vim

cd .vim

mkdir plugin

mkdir doc

# vim官方插件的安装,xxxx是要安装的插件名,以status中显示的名称为准。安装插件xxxx时使用以下命令(前提是在目录/home/user/.vim/下建立好了plugin和doc两个文件夹)

vim-addons install xxxx

关于vim-addons命令的详细用法,可以通过“man vim-addons”查看其帮助文档

五、vim自动补全——OmniCppComplete

1、安装OmniCppComplete

vim-addons install omnicppcomplete

2、配置OmniCppComplete

在vim配置文件/home/user/.vimrc中加入如下的配置:

"-- omnicppcomplete setting --

"按下F3自动补全代码,注意该映射语句后不能有其他字符,包括tab;否则按下F3会自动补全一些乱码

imap

"按下F2根据头文件内关键字补全

imap

set completeopt=menu,menuone "关掉智能补全时的预览窗口

let OmniCpp_MayCompleteDot = 1 " autocomplete with .

let OmniCpp_MayCompleteArrow = 1 " autocomplete with ->

let OmniCpp_MayCompleteScope = 1 " autocomplete with ::

let OmniCpp_SelectFirstItem = 2 " select first item (but don't insert)

let OmniCpp_NamespaceSearch = 2 " search namespaces in this and included files

let OmniCpp_ShowPrototypeInAbbr = 1 " show function prototype in popup window

let OmniCpp_GlobalScopeSearch=1 " enable the global scope search

let OmniCpp_DisplayMode=1 " Class scope completion mode: always show all members

"let OmniCpp_DefaultNamespaces=["std"]

let OmniCpp_ShowScopeInAbbr=1 " show scope in abbreviation and remove the last column

let OmniCpp_ShowAccess=1

OmniCppComplete是基于ctags数据库即tags文件实现的(基于ctags生成的索引信息来实现自动补全的),所以在ctags -R生成tags时还需要一些额外的选项,这样生成的tags文件才能与OmniCppComplete配合运作。使用下列命令生成tags文件,就可以与OmniCppComplete配合运作:

ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .

--c++-kinds=+p:为C++文件增加函数原型的标签

--fields=+iaS:在标签文件中加入继承信息(i)、类成员的访问控制信息(a)、以及函数的指纹(S)

--extra=+q:为标签增加类修饰符。注意如果没有此选项,将不能对类成员补全

当自动补全下拉窗口弹出后,一些可用的快捷键:

Ctrl+P向前切换成员Ctrl+N向后切换成员Ctrl+E表示退出下拉窗口,并退回到原来录入的文字Ctrl+Y表示退出下拉窗口,并接受当前选项其他补全方式:

Ctrl+X Ctrl+L整行补全Ctrl+X Ctrl+N根据当前文件里关键字补全Ctrl+X Ctrl+K根据字典补全Ctrl+X Ctrl+T根据同义词字典补全Ctrl+X Ctrl+I根据头文件内关键字补全Ctrl+X Ctrl+]根据标签补全Ctrl+X Ctrl+F补全文件名Ctrl+X Ctrl+D补全宏定义Ctrl+X Ctrl+V补全vim命令Ctrl+X Ctrl+U用户自定义补全方式Ctrl+X Ctrl+S拼写建议帮助文档:help omnicppcomplete

六、提示函数原型echofunc

1、插件地址

下载完成后,把echofunc.vim文件放到~/.vim/plugin文件夹中当你在vim插入(insert)模式下紧接着函数名后输入一个"("的时候,这个函数的声明就会自动显示在命令行中。如果这个函数有多个声明,则可以通过按键"Alt+-"和"Alt+="向前和向后翻页,这个两个键可以通过设置g:EchoFuncKeyNext和g:EchoFuncKeyPrev参数来修改。这个插件需要tags文件的支持,并且在创建tags文件的时候要加选项"--fields=+lS"(OmniCppComplete创建的tag文件也能用),整个创建tags文件的命令如下:

$ ctags -R --fields=+lS其他插件说明详见echofunc.vim

如果你在编译vim时加上了"+balloon_eval"特性,那么当你把鼠标放在函数名上的时候会有一个tip窗口弹出,该窗口中也会有函数的声明

七、标签浏览器Taglist

Taglist用于列出了当前文件中的所有标签(宏,全局变量,函数名等)

1、安装Taglist

vim-addons install taglist

2、配置Taglist

在vim配置文件/home/user/.vimrc中加入如下的配置:

"-- Taglist setting --

let Tlist_Ctags_Cmd='ctags' "因为我们放在环境变量里,所以可以直接执行

let Tlist_Use_Right_Window=1 "让窗口显示在右边,0的话就是显示在左边

let Tlist_Show_One_File=0 "让taglist可以同时展示多个文件的函数列表

let Tlist_File_Fold_Auto_Close=1 "非当前文件,函数列表折叠隐藏

let Tlist_Exit_OnlyWindow=1 "当taglist是最后一个分割窗口时,自动推出vim

"是否一直处理tags.1:处理;0:不处理

let Tlist_Process_File_Always=1 "实时更新tags

let Tlist_Inc_Winwidth=0

进入vim后用命令":Tlist"打开/关闭taglist窗口

帮助文档:help taglist.txt

八、文件浏览器和缓冲区管理器WinManager

WinManager用于管理文件浏览器和缓冲区(buffer)。2.0以上版本的WinManager还可以管理其他IDE类型插件,不过要用户在插件中增加一些辅助变量和hook来支持WinManager(帮助文档有相关说明)。Taglist插件本身就提供了对WinManager的支持,不需要我们去修改它。这里,我们就用WinManager来管理文件浏览器netrw和标签浏览器Taglist。netrw是标准的vim插件,已经随vim一起安装进系统里了,不需要我们自行下载安装。

1、安装WinManager

vim-addons install winmanager

2、配置WinManager

在vim配置文件/home/user/.vimrc中加入如下的配置:

"-- WinManager setting --

let g:winManagerWindowLayout='FileExplorer|TagList' "设置我们要管理的插件

"let g:persistentBehaviour=0 "如果所有编辑文件都关闭了,退出vim

nmap wm :WMToggle

3、常用命令

:WMToggle打开/关闭WinManage,不过我们在配置文件.vimrc中做了快捷键映射,所以直接按wm就可以打开/关闭WinManage文件浏览器命令(在文件浏览器窗口中使用)

或双击如果光标下是目录,则进入该目录;如果光标下文件,则打开该文件

如果光标下是目录,则进入该目录;如果光标下文件,则在新窗口打开该文件

刷新列表

-返回上一层目录

c使浏览目录成为vim当前工作目录

d创建目录

D删除当前光标下的目录或文件

i切换显示方式

R文件或目录重命名

s选择排序方式

r反向排序列表

x定制浏览方式,使用你指定的程序打开该文件

winmanager帮助文档:help winmanager

netrw帮助文档

:help netrw

九、安装MiniBufferExplorer

1、安装minibufexplorer

vim-addons install minibufexplorer

2、配置MiniBufferExplorer

在vim配置文件/home/user/.vimrc中加入如下的配置:

" -- MiniBufferExplorer --

let g:miniBufExplMapWindowNavVim = 1 "按下Ctrl+h/j/k/l,可以切换到当前窗口的上下左右窗口

let g:miniBufExplMapWindowNavArrows = 1 "按下Ctrl+箭头,可以切换到当前窗口的上下左右窗口

let g:miniBufExplMapCTabSwitchBufs = 1 "启用以下两个功能:Ctrl+tab移到下一个buffer并在当前窗口打开;Ctrl+Shift+tab移到上一个buffer并在当前窗口打开;ubuntu好像不支持

"let g:miniBufExplMapCTabSwitchWindows = 1 "启用以下两个功能:Ctrl+tab移到下一个窗口;Ctrl+Shift+tab移到上一个窗口;ubuntu好像不支持

let g:miniBufExplModSelTarget = 1"不要在不可编辑内容的窗口(如TagList窗口)中打开选中的buffer

3、常用命令

移到上一个buffer

移到下一个buffer

打开光标所在的buffer

d删除光标所在的buffer

十、折叠方式foldmethod

1、vim提供以下6种方法来选定折叠方式:

manual手工定义折叠indent更多的缩进表示更高级别的折叠expr用表达式来定义折叠syntax用语法高亮来定义折叠diff对没有更改的文本进行折叠marker对文中的标志折叠

2、折叠级别foldlevel

'foldlevel'是个数值选项:数字越大则打开的折叠更多。当'foldlevel'为0时,所有的折叠关闭。当'foldlevel'为正数时,一些折叠关闭。当'foldlevel'很大时,所有的折叠打开。折叠栏foldcolumn

'foldcolumn'是个数字,它设定了在窗口的边上表示折叠的栏的宽度。当为0时,没有折叠栏。最大是12。一个打开的折叠由一栏来表示,顶端是'-',其下方是'|'。这栏在折叠结束的地方结束。当折叠嵌套时,嵌套的折叠出现在被包含的折叠右方一个字符位置。一个关闭的折叠由'+'表示。当折叠栏太窄而不能显示所有折叠时,显示一数字来表示嵌套的级别。在折叠栏点击鼠标,可以打开和关闭折叠:-点击'+'打开在这行的关闭折叠-在任何其他非空字符上点击,关闭这行上的打开折叠

在vim配置文件/home/user/.vimrc中加入如下的配置:

"--fold setting--

set foldmethod=syntax "用语法高亮来定义折叠

set foldlevel=100 "启动vim时不要自动折叠代码

set foldcolumn=5 "设置折叠栏宽度

3、常用命令

za打开/关闭在光标下的折叠zA循环地打开/关闭光标下的折叠zo打开(open)在光标下的折叠zO循环打开(Open)光标下的折叠zc关闭(close)在光标下的折叠zC循环关闭(Close)在光标下的所有折叠zM关闭所有折叠zR打开所有的折叠帮助文档:help usr_28.txt

:help fold.txt

十一、项目目录数管理器Project

Project插件是用来显示项目的目录树的,这个目录树是默认保存在~/.vimprojects文件中。

1、安装Project

vim-addons install project

Project目录树可以通过下面的步骤生成:1)打开vim在命令模式下输入:Project,在屏幕的最左边就会出现一个project框。不过因为没有初始化暂时是空的2)在命令模式下(不是插入模式)输入\C(大写的C),会出现下面这些信息:Enter the Name of the Entry: xxxx(输入项目名称)Enter the Absolute Directory to Load: /xxx/xxx/xxx(输入项目根目录的绝对路径)Enter the CD parameter: .(“.”为当前目录)或者和项目根目录一致Enter the File Filter: *.*(符合条件的源文件,可以是*.cpp/*.h等)PS:项目目录可以嵌套。而且更改之后在~/.vimprojects文件中就能看到内容,你可以手动进行更改。

十二、quickfix命令集

通过quickfix命令集,你可在Vim内编译程序并直接跳转到出错位置进行修正。你可以接着重新编译并做修正,直到不再出错为止。在vim配置文件/home/user/.vimrc中加入如下的配置:

"-- QuickFix setting --

"按下F6,执行make clean

map :make clean

"按下F7,执行make编译程序,并打开quickfix窗口,显示编译信息

map :make :copen

"按下F8,光标移到上一个错误所在的行

map :cp

"按下F9,光标移到下一个错误所在的行

map :cn

"以上的映射是使上面的快捷键在插入模式下也能用

imap :make clean

imap :make :copen

imap :cp

imap :cn

帮助文档:help usr_30

:help quickfix下面的命令运行"make" (包括你所给出的参数)程序并捕捉其运行结果: >

:make {arguments}如果编译时出现错误,按,回到vim界面,看不到出错信息了!这时,可以运行以下命令:cw[indow]打开quickfix窗口来查看出错信息,它会自动跳到第一处出错的地方。然后,你可以双击出错某一条出错信息,vim就会自动跳转到相应的出错位置:cn[ext]光标移到下一个错误所在的行:cp[revious]光标移到上一个错误所在的行:cfirst到第一处错误:clast到最后一处错误:cc空间不够时,Vim会缩短出错信息。如果你想查看详细信息,可以使用此命令:cl[ist]列出所有出错信息的概览(只有那些含有文件名或行数的错误信息会被显示,需要查看那些并不含文件名或行数的信息可用“:cl[ist]!”命令)

十三、Cscope

Cscope是一个类似于ctags的工具,不过其功能比ctags强大很多。1、安装Cscope

sudo apt-get install cscope

在vim配置文件/home/user/.vimrc中加入如下的配置:

"-- Cscope setting --

if has("cscope")

set csprg=/usr/bin/cscope"指定用来执行cscope的命令

set csto=0"设置cstag命令查找次序:0先找cscope数据库再找标签文件;1先找标签文件再找cscope数据库

set cst"同时搜索cscope数据库和标签文件

set cscopequickfix=s-,c-,d-,i-,t-,e-"使用QuickFix窗口来显示cscope查找结果

set nocsverb

if filereadable("cscope.out")"若当前目录下存在cscope数据库,添加该数据库到vim

cs add cscope.out

elseif $CSCOPE_DB != """否则只要环境变量CSCOPE_DB不为空,则添加其指定的数据库到vim

cs add $CSCOPE_DB

endif

set csverb

endif

map :cs add ./cscope.out . :cs reset

imap :cs add ./cscope.out . :cs reset

"将:cs find c等Cscope查找命令映射为c等快捷键(按法是先按Ctrl+Shift+-,然后很快再按下c)

nmap s :cs find s =expand("") :copen

nmap g :cs find g =expand("")

nmap d :cs find d =expand("") :copen

nmap c :cs find c =expand("") :copen

nmap t :cs find t =expand("") :copen

nmap e :cs find e =expand("") :copen

nmap f :cs find f =expand("")

nmap i :cs find i =expand("") :copen

cscope的主要功能是通过其"find"子命令来实现的

"cscope find"的用法:

cs find c|d|e|f|g|i|s|t name

0或s查找这个C符号(可以跳过注释)

1或g查找这个定义2或d查找这个函数调用的函数3或c查找调用过这个函数的函数4或t查找这个字符串6或e查找这个egrep模式7或f查找这个文件8或i查找包含这个文件的文件用法:<1>、为源码建立一个cscope数据库lingd@ubuntu:~/arm/linux-2.6.28.7$ cscope -Rbq

lingd@ubuntu:~/arm/linux-2.6.28.7$ ls cscope.*

cscope.in.out  cscope.out  cscope.po.out

<2>、用vim打开某个源码文件,末行模式下,输入“:cs add cscope.out"(该命令已被我们映射为快捷键F4),添加cscope数据库到vim。因为我们已将vim配置为启动时,自动添加当前目录下的cscope数据库,所以你再添加该cscope数据库时,vim会提示“重复cscope数据库未被加入“

<3>、完成前两步后,现在就可以用“cs find c”等Cscope查找命令查找关键字了。我们已在.vimrc中将“cs find c”等Cscope查找命令映射为c等快捷键(按法是先按Ctrl+Shift+-,然后很快按下c)

帮助文档

:help if_cscop注意:帮助文档if_cscop中,快捷键映射nmap i :cs find i ^=expand("")$是有误的!比如光标“header.h”上按下i,也就是查找包含“header.h“的文件。但是按照这个映射规则,则是将i映射为cs find i ^header.h$,也就是查找包含“^header.h$“的文件,这显然不是我们想要的结果。该映射规则应该改成nmap i :cs find i =expand("")

十四、c/h文件间相互切换--插件: A

下载地址

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

版本

安装

将a.vim放到~/.vim/plugin文件夹中

作为一个C程序员,日常Coding时在源文件与头文件间进行切换是再平常不过的事了,直接用vim打开其源/头文件其实也不是什么麻烦事,但是只用一个按键就切换过来了。

安装好a.vim后有下面的几个命令可以用了:

:A

在新Buffer中切换到c/h文件

:AS

横向分割窗口并打开c/h文件

:AV

纵向分割窗口并打开c/h文件

:AT

新建一个标签页并打开c/h文件

其他还有一些命令,你可以在它的网页上看看,我都没用过,其实也都是大同小异,找到自己最顺手的就行了.

我在~/.vimrc中增加了一句:

nnoremap :A

意思是按F12时在一个新的buffer中打开c/h文件,这样在写程序的时候就可以不假思索地在c/h文件间进行切换,减少了按键的次数,思路也就更流畅了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值