最近一直在linux下搞cocos2dx可是没有很好的开发环境
开发速度直接下降
试过geany
不行,好多都读不出来
试过eclipse + cdt
也不行,头文件什么的都不支持,尽管我在工程项目下添加了引用的头文件,和库文件还是不行
还算得用最原始的vim
于是从网上找了一片文章关于vim配置
我只配置到1234步还有doxygen和gdb没有配置
下面是转载的文章内容
1.Ctags,非vim插件。Ctags是Vim必不可少的工具,它可以将C/C++的宏、变量、函数、类等一系列信息提取出来,以方便切换。 Ctags还可以使用更强大的cscope代替。
2.Taglist,Vim插件。Taglist是与ctags的配合的vim的强大工具之一,其功能是将当前buffer的所有信息作成一个列表放 在旁边,随时可以切换。
3.omnicppcomplete,Vim插件。其功能顾名思义就是自动补全工具(可不是简单的Ctrl+N哦),比如定义了一个类叫 myClass,生成一个实例myClass c; 那么输入c.之后就可以出现一个框,里面是c所有的成员函数。
4.csupport,Vim插件。这是一个非常好的C/C++ ide,有了它什么编译运行一键搞定,定义一个类一键就可以给出一个模板格式,相当实用。
5.clewn, 非Vim插件。其用处是联结vim与gdb(没听说过gdb?google补个课吧~)。在打开clewn的时候,它利用NetBeans,把gVim与 gdb无缝地联结起来,还可以像matlab一样,在调试的时候把鼠标放在变量名上,就会有一个ballon出来显示这个变量的指,炫吧?谁说只有 emacs才能与gdb结合的好?另外它的另外一个替代品是VimGdb,这是个Vim插件。
6.Doxygenkit。注释与文档合二为一的最强工具当然是Doxygen,有了Doxygenkit,用Vim写Doxygen格式一键搞定。
每一步,网上都有专门的文章,我就不详细写了
下面写上我的.vimrc文件
1 "语法高亮
2 syntax on
3
4 "显示行号
5 set number
6
7 "自动缩进与C语言风格缩进
8 set autoindent
9 set cindent
10
11 "缩进宽度
12 set tabstop=4
13 set softtabstop=4
14 set shiftwidth=4
15
16 "建议开启expandtab选项,会自动将tab扩展很空格,代码缩进会更美观
17 set expandtab
18 "set noexpandtab
19
20 "switch case 对齐风格
21 set cino=g0,:0
22
23
24 "
25 " taglist
26 "
27 let Tlist_Show_One_File=1 "只显示当前文件的tags
28 "let Tlist_WinWidth=40 "设置taglist宽度
29 let Tlist_Exit_OnlyWindow=1 "tagList窗口是最后一个窗口,则退出Vim
30 let Tlist_Use_Right_Window=1 "在Vim窗口右侧显示taglist窗口
31
32 "
33 "设置开启filetype选项
34 "
35 set nocp
36 filetype plugin on
37
38 "
39 "以下设在omnicppcomplete
40 "
41
42 "vim自动生成ctags,只要按ctrl+F12 之前要注意保存
43 map <C-F12> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR>
44
45
46 "设置ctags的目录
47 set tags+=~/.ctags/stl
48 set tags+=~/.ctags/cocos2dx
49 "set tags+=D:/ctags/tags/curl
50
51 let OmniCpp_NamespaceSearch = 1 "设置NameSpace搜索
52 let OmniCpp_GlobalScopeSearch = 1 "设置全局搜索
53 let OmniCpp_DisplayMode = 0 "自动显示成员,1是全部显示
54 let OmniCpp_ShowAccess = 1 "显示 + # -
55 let OmniCpp_ShowScopeInAbbr = 0 "这个属性不重要
56 let OmniCpp_ShowPrototypeInAbbr = 1 " 显示函数参数列表.
57 let OmniCpp_SelectFirstItem = 0 "不选择第一项
58 let OmniCpp_MayCompleteDot = 1 " 输入 . 后自动补全
59 let OmniCpp_MayCompleteArrow = 1 " 输入 -> 后自动补全
60 let OmniCpp_MayCompleteScope = 1 " 输入 :: 后自动补全
61 let OmniCpp_DefaultNamespaces = ["std"] "使用默认namepace
62
63 "自动关闭补全窗口
64 au CursorMovedI,InsertLeave * if pumvisible() == 0|silent! pclose|endif
65 set completeopt=menuone,menu,longest
66
67 "设置弹出窗口的样
68 highlight Pmenu guibg=darkgrey guifg=black
69 highlight PmenuSel guibg=lightgrey guifg=black
70
71 "我这里按不出来"\",所以换个按键
72 "let g:C_MapLeader=';'
73 "let g:C_Ctrl_j_mode='i'