Ubuntu配置C++开发环境以及Vim的配置
来源:互联网 发布:北邮网络电视 编辑:程序博客网 时间:2024/05/24 06:40
Ubuntu配置C++开发环境以及Vim的配置
1. 安装gcc, g++环境
新的ubuntu系统一般都已经安装好,可通过 “gcc –version” 以及 “g++ –version” 查看是否已经安装好;如果没有安装,命令如下:
sudo apt-get install build-essentialsudo 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-8set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936set fileencodings=utf-8,ucs-bom,chinese"语言设置set langmenu=zh_CN.UTF-8"设置行号set nu"设置语法高亮syntax enablesyntax on"设置配色方案colorscheme desert"可以在buffer的任何地方使用鼠标set mouse=aset selection=exclusiveset selectmode=mouse,key"高亮显示匹配的括号set showmatch"去掉vi一致性set nocompatible"设置缩进set tabstop=4set softtabstop=4set shiftwidth=4set autoindentset cindentif &term=="xterm" set t_Co=8 set t_Sb=^[[4%dm set t_Sf=^[[3%dmendif"打开文件类型自动检测功能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文件中添加:
" Ctagsmap <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-8set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936set fileencodings=utf-8,ucs-bom,chinese"语言设置set langmenu=zh_CN.UTF-8"设置行号set nu"设置语法高亮syntax enablesyntax on"设置配色方案colorscheme desert"可以在buffer的任何地方使用鼠标set mouse=aset selection=exclusiveset selectmode=mouse,key"高亮显示匹配的括号set showmatch"去掉vi一致性set nocompatible"设置缩进set tabstop=4set softtabstop=4set shiftwidth=4set autoindentset cindentif &term=="xterm" set t_Co=8 set t_Sb=^[[4%dm set t_Sf=^[[3%dmendif"打开文件类型自动检测功能filetype on"Ctagsmap <C-F12> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR>"TagListlet Tlist_Show_One_File=1let Tlist_Exit_OnlyWindow=1"OmniCppCompleteset nocpfiletype plugin on"SuperTablet g:SuperTabDefaultCompletionType="context""MiniBufExplorerlet g:miniBufExplMapWindowNavVim = 1let g:miniBufExplMapWindowNavArrows = 1let g:miniBufExplMapCTabSwitchBufs = 1let g:miniBufExplModSelTarget = 1let g:miniBufExplMoreThanOne=0let g:miniBufExplorerMoreThanOne=0"NERDTree WinManagerlet g:NERDTree_title="[NERDTree]"let g:winManagerWindowLayout="NERDTree|TagList"let g:bufExplorerMaxHeight=30function! NERDTree_Start() exec 'NERDTree'endfunctionfunction! NERDTree_IsValid() return 1endfunctionnmap wm :WMToggle<CR>
参考:
[1] 将Vim改造为强大的IDE
[2] 手把手教你把Vim改装成一个IDE编程环境(图文)
[3] VIM关于winmanager中FileExplorer窗口大小的问题
- Ubuntu配置C++开发环境以及Vim的配置
- 配置vim的C开发环境
- Ubuntu 下 vim 开发Php 环境配置
- ubuntu/centos vim配置golang开发环境
- Ubuntu 中vim配置Python开发环境
- ubuntu 16.04 配置vim开发环境
- 在ubuntu 上配置vim的php开发环境
- ubuntu下配置VIM做PHP的IDE开发环境
- ubuntu下配置VIM做PHP的IDE开发环境
- vim @ ubuntu环境配置
- vim配置为C/C++开发环境
- vim 配置c/c++开发环境
- 安装ubuntu以及配置开发环境
- 配置 VIM 开发环境
- VIM开发环境配置
- Vim 开发环境配置
- vim开发环境配置
- vim的c语言环境简单配置
- zoj D friends (脑洞+队列)
- 图的遍历BFS
- TabLayout+ViewPager+Fragment联合使用
- httpd.ini伪静态实现不带www域名自动跳转到带www域名
- 死锁问题
- Ubuntu配置C++开发环境以及Vim的配置
- java 集合框架 List集合共性方法
- TCP协议通讯流程
- 解析Concurrent包下的ReentrantLock、LockSupport、AQS
- 阿里巴巴Java开发手册-异常日志-异常处理
- Android Material Design 史上最全的材料设计控件大全
- Android下pm 命令详解 - 安装/卸载/APK等
- error C2572 重定义默认参数 的说明
- 什么是高内聚、低耦合?