Gvim C++ IDE for windows XP (Ubuntu)

      程序语言 2007-4-24 9:53:00

Gvim C++IDE for windows XP (Ubuntu)
GVim v7(主程序)+Ctags+taglist+omnicppcomplete+supertab(插件)

一,安装
-1,omnicppcomplete 的安装:
   --1,下载omnicppcomplete,解压可得到三个文件夹(autoload,after,doc),分别复制到gvim的安装目录下的vimfiles文件夹中(ubuntu中为~/.vim)。这样omnicppcomplete就安装完成了。
-2,ctags 安装
   --1,下载Ctags最新win32版本(当前是5.6),解压至某一目录(如c:\ctags56),并在系统环境变量中把添加ctags的安装路径(如path=c:\ctags56),至此ctags也安装完成了(ubuntu 中直接 sudo apt-get install ctags)。
-3,taglist 安装
   --1,下载taglist插件,解压得到两个文件夹(doc,plugin),把里面的文件分别复制到vim安装目录下对应的文件夹中(ubuntu中为~/.vim)。
-4,supertab插件安装
   --1,下载supertab插件,复制supertab.vim到vim安装目录的plugin目录下,使用时只要直接按tab键,就可以直接进行补全。

二,配置
-1,下载本文的附件,解压可得到两个文件(stltags,cpptags;这两个文件是根据mingw5.3和c++ 标准库stl3.3制作的),复制到某目录(C:\ctags56\),然后在_vimrc(ubuntu下为~/.gvimrc或/usr/share/vim/gvimrc)中添加下列代码,使用时用TAB键选择提示的代码:

-----------------------------
"setting for omnicppcomplete
set nocp
filetype plugin on

"下面的设置用于当用户预先声明namespace时也能自动补全代码(如使用using std::string)
let OmniCpp_DefaultNamespaces = ["std"]

" 设置代码提示窗口的颜色(默认为粉红色,如附图1,下面的设置的效果如附图2)
highlight Pmenu ctermbg=13 guibg=LightGray
highlight PmenuSel ctermbg=7 guibg=DarkBlue guifg=White
highlight PmenuSbar ctermbg=7 guibg=DarkGray
highlight PmenuThumb guibg=Black

"设置tags目录,可以根据自己的设置自动调整
set tags+=C:\ctags56\stltags
set tags+=C:\ctags56\cpptags
------------------------------


-2,制作其它库文件的tags文件
    --1,在命令行模式下进入库文件的目录(一般为include和src),执行ctags -R --c++-kinds=+p --fields=+iaS --extra=+q ,然后在该库文件目录下即可得到一个名为tags的文件,更名后复制到自己的tags目录下,并在_vimrc中设置

本文参考了以下网文:
[1]  http://blog.sina.com.cn/u/4b0d4cdd0100076e 
[2]  http://blog.csdn.net/easwy/archive/2007/04/23/1576032.aspx   
[3]  http://swik.net/Vim/Vim+Tips?page=2
   (可以查到更多的omnicppcomplete的个性设置)

相关网址:www.vim.org

附件:c++ tags 文件(适用于ubuntu及windows xp,其它系统应该也能用,未测)http://pickup.mofile.com/6476444359537727

截图(windows xp):

另外推荐一下windows 下另一款极好用的C++ ide ,即C-free,它能实现上面所述的所有功能,下载地址http://www.programarts.com/ (注:进入英文网站,下载for education 版本)

标签集:TAGS:ubuntu IDE linux
回复Comments() 点击Count()
喜欢就顶一下

回复Comments

{commentauthor}
{commentauthor}
{commenttime}
{commentnum}
{commentcontent}
作者:
{commentrecontent}