vim C\C++ 插件ctags+OmniCppComplete+taglist+WinManager+c.vim配置
2013-01-12 22:53
651 查看
已经很久没有写博客了,但新年新气象,况且我又有新的打算,所以,学习是在所难免的
环境:
Linux ubuntu 3.2.0-23-generic-pae
所有插件的下载地址
http://www.vim.org/scripts/
准备工作:
$ mkdir ~/.vim #用于存放所有的vim插件
$ mkdir ~/.vim/tags #用于存放ctags文件
$ cat ~/.vimrc #vim的配置文件
1) 安装ctags:
ctags在Ubuntu里面我记得是默认安装好了的,如果没有的话apt-get也很方便
2) 建立ctags数据
本质上来说,ctags就是抓取所有.h头文件中的结构体,类名,函数的声明,并把这些存到一个文件中去
具体步骤为:
$ sudo ctags -I __THROW -I __THROWNL -I __attribute_pure__ -I __nonnull -I __attribute__ -R --c-kinds=+p --fields=+iaS --extra=+q --language-force=C /usr/include/
记住一定要加绝对路径,网上的一些教程写的是相对路径,是对出错的
执行完命令后会生成一个tags文件,vi打开会看到全是各种声明
$ cp /usr/include/tags ~/.vim/tags
然后在.vimrc文件里添加
set tags+=~/.vim/tags/tags
以上完成后,你可以vi打开cpp文件,然后在有比如printf的地方, ctrl+] 可以跳转到相应的声明
注意,有可能tags文件的权限是root,需要把它改成user权限
3) 安装OmniCppComplete
去vim页面上下载,并且解压到~/.vim下
添加以下内容到.vimrc
" OmniCppComplete
let OmniCpp_NamespaceSearch = 1
let OmniCpp_GlobalScopeSearch = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_ShowPrototypeInAbbr = 1 " show function parameters
let OmniCpp_MayCompleteDot = 1 " autocomplete after .
let OmniCpp_MayCompleteArrow = 1 " autocomplete after ->
let OmniCpp_MayCompleteScope = 1 " autocomplete after ::
这时,比如输入gethost然后按ctrl+x ctrl+o这时就能提示gethostbyname等函数
参考资料:
http://www.libaqiang.com/?p=78163 http://www.cnblogs.com/zen_chou/archive/2009/12/18/1626975.html http://blog.csdn.net/tge7618291/article/details/4216977 http://lug.fh-swf.de/vim/vim-c/csupport.html#csupport-usage-vim
完整的.vimrc文件
set nocompatible
set nu
nmap <C-B> <LEFT>
nmap <C-F> <RIGHT>
nmap <C-P> <UP>
nmap <C-N> <DOWN>
nmap <C-A> <HOME>
nmap <C-E> <END>
imap <C-B> <LEFT>
imap <C-F> <RIGHT>
imap <C-P> <UP>
imap <C-N> <DOWN>
imap <C-A> <HOME>
imap <C-E> <END>
nmap <C-K> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .
set tabstop=2
set shiftwidth=2
:colorscheme ron
set cindent
filetype plugin on
set completeopt=menu
" configure tags - add additional tags here or comment out not-used ones
set tags+=~/.vim/tags/tags
set tags+=~/.vim/tags/linux_include
"set the auto complete menu color
highlight Pmenu ctermbg=13 guibg=LightGray
highlight PmenuSel cterm=bold ctermfg=9 ctermbg=4
" OmniCppComplete
let OmniCpp_NamespaceSearch = 1
let OmniCpp_GlobalScopeSearch = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_ShowPrototypeInAbbr = 1 " show function parameters
let OmniCpp_MayCompleteDot = 1 " autocomplete after .
let OmniCpp_MayCompleteArrow = 1 " autocomplete after ->
let OmniCpp_MayCompleteScope = 1 " autocomplete after ::
let g:acp_enableAtStartup = 0 "disable it
let g:acp_behaviorKeywordCommand="\<C-x>\<C-o>"
let Tlist_Show_One_File=1
let Tlist_Auto_Open=1
let Tlist_Show_Menu=1
let Tlist_WinWidth=18
let Tlist_WinHeight=10
let Tlist_Close_On_Select=0
let Tlist_Sort_Type='name'
let Tlist_Use_Right_Window = 1
let g:winManagerWindowLayout='FileExplorer'
let g:persistentBehaviour=0 "leave vim if only one window
let g:winManagerWidth=20
":WMToggle to open the winmanager
环境:
Linux ubuntu 3.2.0-23-generic-pae
所有插件的下载地址
http://www.vim.org/scripts/
准备工作:
$ mkdir ~/.vim #用于存放所有的vim插件
$ mkdir ~/.vim/tags #用于存放ctags文件
$ cat ~/.vimrc #vim的配置文件
ctags+OmniCppComplete
主要是用于C\C++代码提示,比如按下 点 ( . )或箭头 ( -> )就会出现相应的变量或函数名1) 安装ctags:
ctags在Ubuntu里面我记得是默认安装好了的,如果没有的话apt-get也很方便
2) 建立ctags数据
本质上来说,ctags就是抓取所有.h头文件中的结构体,类名,函数的声明,并把这些存到一个文件中去
具体步骤为:
$ sudo ctags -I __THROW -I __THROWNL -I __attribute_pure__ -I __nonnull -I __attribute__ -R --c-kinds=+p --fields=+iaS --extra=+q --language-force=C /usr/include/
记住一定要加绝对路径,网上的一些教程写的是相对路径,是对出错的
执行完命令后会生成一个tags文件,vi打开会看到全是各种声明
$ cp /usr/include/tags ~/.vim/tags
然后在.vimrc文件里添加
set tags+=~/.vim/tags/tags
以上完成后,你可以vi打开cpp文件,然后在有比如printf的地方, ctrl+] 可以跳转到相应的声明
注意,有可能tags文件的权限是root,需要把它改成user权限
3) 安装OmniCppComplete
去vim页面上下载,并且解压到~/.vim下
添加以下内容到.vimrc
" OmniCppComplete
let OmniCpp_NamespaceSearch = 1
let OmniCpp_GlobalScopeSearch = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_ShowPrototypeInAbbr = 1 " show function parameters
let OmniCpp_MayCompleteDot = 1 " autocomplete after .
let OmniCpp_MayCompleteArrow = 1 " autocomplete after ->
let OmniCpp_MayCompleteScope = 1 " autocomplete after ::
这时,比如输入gethost然后按ctrl+x ctrl+o这时就能提示gethostbyname等函数
参考资料:
http://www.libaqiang.com/?p=78163 http://www.cnblogs.com/zen_chou/archive/2009/12/18/1626975.html http://blog.csdn.net/tge7618291/article/details/4216977 http://lug.fh-swf.de/vim/vim-c/csupport.html#csupport-usage-vim
完整的.vimrc文件
set nocompatible
set nu
nmap <C-B> <LEFT>
nmap <C-F> <RIGHT>
nmap <C-P> <UP>
nmap <C-N> <DOWN>
nmap <C-A> <HOME>
nmap <C-E> <END>
imap <C-B> <LEFT>
imap <C-F> <RIGHT>
imap <C-P> <UP>
imap <C-N> <DOWN>
imap <C-A> <HOME>
imap <C-E> <END>
nmap <C-K> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .
set tabstop=2
set shiftwidth=2
:colorscheme ron
set cindent
filetype plugin on
set completeopt=menu
" configure tags - add additional tags here or comment out not-used ones
set tags+=~/.vim/tags/tags
set tags+=~/.vim/tags/linux_include
"set the auto complete menu color
highlight Pmenu ctermbg=13 guibg=LightGray
highlight PmenuSel cterm=bold ctermfg=9 ctermbg=4
" OmniCppComplete
let OmniCpp_NamespaceSearch = 1
let OmniCpp_GlobalScopeSearch = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_ShowPrototypeInAbbr = 1 " show function parameters
let OmniCpp_MayCompleteDot = 1 " autocomplete after .
let OmniCpp_MayCompleteArrow = 1 " autocomplete after ->
let OmniCpp_MayCompleteScope = 1 " autocomplete after ::
let g:acp_enableAtStartup = 0 "disable it
let g:acp_behaviorKeywordCommand="\<C-x>\<C-o>"
let Tlist_Show_One_File=1
let Tlist_Auto_Open=1
let Tlist_Show_Menu=1
let Tlist_WinWidth=18
let Tlist_WinHeight=10
let Tlist_Close_On_Select=0
let Tlist_Sort_Type='name'
let Tlist_Use_Right_Window = 1
let g:winManagerWindowLayout='FileExplorer'
let g:persistentBehaviour=0 "leave vim if only one window
let g:winManagerWidth=20
":WMToggle to open the winmanager
相关文章推荐
- VIM插件配置——ctags/taglist/omnicppcomplete/winmanager
- VIM插件配置——ctags/taglist/omnicppcomplete/winmanager
- C++ 自建IDE Ubuntu10.04下 Vim + ctags + taglist + winmanager + OmniCppcomplete
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)(转)
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)