Ubuntu配置C++开发环境以及Vim的配置

时间:2022-12-11 20:32:20

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

安装之后的效果图
Ubuntu配置C++开发环境以及Vim的配置

这些插件更新较慢,汇总后的插件(更新截止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窗口大小的问题