Ubuntu配置C++开发环境以及Vim的配置
1. 安装gcc, g++环境
新的ubuntu系统一般都已经安装好,可通过 “gcc –version” 以及 “g++ –version” 查看是否已经安装好;如果没有安装,命令如下:
sudo apt-get install build-essential
sudo apt-get install g++-4.4
2. 安装Vim
sudo apt-get install vim vim-scripts vim-doc
并创建如下.vimrc文件和三个目录,安装插件大概就是将.plugin和.doc文件放到对应的目录中(解压缩时选择合并即可)然后修改.vimrc文件即可;
~/.vimrc(~/.vimrc文件中的配置会覆盖/etc/vimrc中的配置);
~/.vim/plugin
~/.vim/doc
~/.vim/syntax
.vimrc中常用定义:
"设置编码
set encoding=utf-8
set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
set fileencodings=utf-8,ucs-bom,chinese
"语言设置
set langmenu=zh_CN.UTF-8
"设置行号
set nu
"设置语法高亮
syntax enable
syntax on
"设置配色方案
colorscheme desert
"可以在buffer的任何地方使用鼠标
set mouse=a
set selection=exclusive
set selectmode=mouse,key
"高亮显示匹配的括号
set showmatch
"去掉vi一致性
set nocompatible
"设置缩进
set tabstop=4
set softtabstop=4
set shiftwidth=4
set autoindent
set cindent
if &term=="xterm"
set t_Co=8
set t_Sb=^[[4%dm
set t_Sf=^[[3%dm
endif
"打开文件类型自动检测功能
filetype on
3. 安装vim中文文档
vim中文帮助文档tar包下载地址:http://sourceforge.net/projects/vimcdoc/files/vimcdoc/
解压后其中有个doc文件夹, 将其中的内容全部复制到~/.vim/doc, 或者vim安装目录下的doc目录中, 此时vim中的help信息已经是中文的了.
4. 安装Ctags
安装命令:
sudo apt-get install ctags
并在.vimrc文件中添加:
" Ctags
map <C-F12> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR>
在Vim中按下Ctrl-F12快捷键自动生成tags文件。命令执行完后,会在源代码目录生成tags文件。Vim默认会自动读取当前目录下的tags文件,所以不需要修改~/.vimrc文件。此时,我们已经具有定义跳转的功能了。有两组快捷键是最常用的。
Ctrl-] 跳转到光标所在符号的定义;
Ctrl-t 回到上次跳转前的位置;
在Vim命令行下运行help ctags查询更多功能。
5.其它插件安装
- Taglist: 提供源代码符号的结构化视图。
- Cscope: 提供交互式查询语言符号功能,如查询哪些地方使用某个变量或调用某个函数。
- OmniCppComplete: 主要提供输入时实时提供类或结构体的属性或方法的提示和补全。
- SuperTab: 使Tab快捷键具有更快捷的上下文提示功能。
- NERDTree: 提供树形浏览文件系统的界面。
- MiniBufExplorer: 提供多文件同时编辑功能。
- Winmanager: 将这NERDTree界面和Taglist界面整合起来,使Vim更像VS!
具体安装办法请参考2
安装之后的效果图
这些插件更新较慢,汇总后的插件(更新截止2017-02-14)上传至百度云
网址:https://pan.baidu.com/s/1dEM4YRJ
密码:cbpb
你也可以自己下载最新插件版本,下载地方分别为:
- Taglist: http://www.vim.org/scripts/script.php?script_id=273
- Cscope: http://cscope.sourceforge.net/cscope_maps.vim
- OmniCppComplete: http://www.vim.org/scripts/script.php?script_id=1520
- SuperTab: http://www.vim.org/scripts/script.php?script_id=1643
- NERDTree: http://www.vim.org/scripts/script.php?script_id=1658
- MiniBufExplorer: http://www.vim.org/scripts/script.php?script_id=159
- Winmanager: http://www.vim.org/scripts/script.php?script_id=95
全部.vimrc内容如下:
"设置编码
set encoding=utf-8
set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
set fileencodings=utf-8,ucs-bom,chinese
"语言设置
set langmenu=zh_CN.UTF-8
"设置行号
set nu
"设置语法高亮
syntax enable
syntax on
"设置配色方案
colorscheme desert
"可以在buffer的任何地方使用鼠标
set mouse=a
set selection=exclusive
set selectmode=mouse,key
"高亮显示匹配的括号
set showmatch
"去掉vi一致性
set nocompatible
"设置缩进
set tabstop=4
set softtabstop=4
set shiftwidth=4
set autoindent
set cindent
if &term=="xterm"
set t_Co=8
set t_Sb=^[[4%dm
set t_Sf=^[[3%dm
endif
"打开文件类型自动检测功能
filetype on
"Ctags
map <C-F12> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR>
"TagList
let Tlist_Show_One_File=1
let Tlist_Exit_OnlyWindow=1
"OmniCppComplete
set nocp
filetype plugin on
"SuperTab
let g:SuperTabDefaultCompletionType="context"
"MiniBufExplorer
let g:miniBufExplMapWindowNavVim = 1
let g:miniBufExplMapWindowNavArrows = 1
let g:miniBufExplMapCTabSwitchBufs = 1
let g:miniBufExplModSelTarget = 1
let g:miniBufExplMoreThanOne=0
let g:miniBufExplorerMoreThanOne=0
"NERDTree WinManager
let g:NERDTree_title="[NERDTree]"
let g:winManagerWindowLayout="NERDTree|TagList"
let g:bufExplorerMaxHeight=30
function! NERDTree_Start()
exec 'NERDTree'
endfunction
function! NERDTree_IsValid()
return 1
endfunction
nmap wm :WMToggle<CR>
参考:
[1] 将Vim改造为强大的IDE
[2] 手把手教你把Vim改装成一个IDE编程环境(图文)
[3] VIM关于winmanager中FileExplorer窗口大小的问题