使用VIM搭建Qt的C++ IDE学习笔记
时间:2008-12-05 来源:liaopy
使用VIM搭建Qt的C++ IDE学习笔记
廖亮 2008年11月30日星期日 整理
1. Vim支持对Qt的关键字高亮
添加支持Qt类名及关键字高亮的插件cpp.vim,该插件定义了基本上所有的Qt类为关键字,Vim将这些关键字识别为C++关键字予以彩色高亮显示。插件中内容示例如下:
syn keyword qClass QCheckListItem QFtp QMetaProperty QSpinBox QWidget
highlight link qClass Type
为了让Vim还支持函数名符号的高亮显示,添加如下内容使得VIM能识别函数并显示彩色高亮:
syn match cFunction "\<[a-zA-Z_][a-zA-Z_0-9]*\>[^()]*)("me=e-2
syn match cFunction "\<[a-zA-Z_][a-zA-Z_0-9]*\>\s*("me=e-1
hi cFunction gui=NONE guifg=#80A0F
2. 代码自动补全
使用这两个插件:Omnicppcomplete和superTab
为了能够实现Qt函数的自动补全,使用Ctag对Qt下的头文件进行处理生成tags文件。在vimrc中添加使得vim能从该文件去找相应内容。
使用方法:按tab键提示补全,有列表。
ctags -R --c++-kinds=+p --fields=+iaS --extra=+q
在vimrc文件中添加如下:
" for omnicppcomplete, added by LiaoLiang Nov28,2008
set nocp
filetype plugin indent on
set completeopt=longest,menu
let OmniCpp_DefaultNamespaces = ["std"]
" for qt-cppcomplete, added by LiaoLiang Nov28,2008
set tags+=$QTDIR\include\tags
set tags+=$QTDIR\src\tag
" for supertab, added by LiaoLiang Nov28,2008
let g:SuperTabRetainCompletionType=2
let g:SuperTabDefaultCompletionType="<C-X><C-O>"
原来根据水木上的推荐,使用过wordcomplete插件,是自动搜索补全的,如果搜索过程较长的话会无法忍受,敲一个字符得等上半天。使用上面说的这两个插件Omnicppcomplete和superTab,按Tab键提示补全,不会耽误敲字符,不想自动补全就不用。但缺点是跟Tab键混用,在字符后敲tab键变成了补全,而不是跳格。
3. 文件浏览器和Taglist
使用这三个插件:winmanager.vim,bufexploer.vim,taglist.vim
在vimrc中添加如下:
nnoremap <silent> <F9> :TlistToggle<CR>
let Tlist_Use_SingleClick=1
let Tlist_File_Fold_Auto_Close=1
""""""""""""""""""""""""""""""
" winManager setting
""""""""""""""""""""""""""""""
let g:winManagerWindowLayout = "BufExplorer,FileExplorer|TagList"
let g:winManagerWidth = 30
let g:defaultExplorer = 0
nmap <C-W><C-F> :FirstExplorerWindow<cr>
nmap <C-W><C-B> :BottomExplorerWindow<cr>
nmap <silent> <F8> :WMToggle<cr>
使用办法:按F8自动布局。
4. 编译工程
在工程目录下,使用:!qmake(外部命令)生成工程文件,再生成Makefile,选择编译器为gcc(Windows下可选择msvc),make即可。
如何返回错误的定位待学习……
5. 调试程序
待学习使用GDB……