当前用户的Vim配置便存储在文件 ~/.vimrc 中,该文件的每一行便是一个配置项

设置自动换行,在配置文件中加入如下代码:

syntax on
set tabstop=4
set softtabstop=4
set shiftwidth=4
set expandtab
set autoindent
set cindent
set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s
set nu
set ruler

ps:    set nonu 就是不显示行号

Vundle

参考:http://zuyunfei.com/2013/04/12/killer-plugin-of-vim-vundle/

下载vundle:

git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle

在.vimrc 中添加:

set nocompatible                " be iMproved
filetype off " required!
set rtp+=~/.vim/bundle/vundle/
call vundle#rc() " let Vundle manage Vundle
Bundle 'gmarik/vundle' "my Bundle here:
"
" original repos on github
Bundle 'kien/ctrlp.vim'
Bundle 'sukima/xmledit'
Bundle 'sjl/gundo.vim'
Bundle 'jiangmiao/auto-pairs'
Bundle 'klen/python-mode'
Bundle 'Valloric/ListToggle'
Bundle 'SirVer/ultisnips'
Bundle 'Valloric/YouCompleteMe'
Bundle 'scrooloose/syntastic'
Bundle 't9md/vim-quickhl'
" Bundle 'Lokaltog/vim-powerline'
Bundle 'scrooloose/nerdcommenter'
"..................................
" vim-scripts repos
Bundle 'YankRing.vim'
Bundle 'vcscommand.vim'
Bundle 'ShowPairs'
Bundle 'SudoEdit.vim'
Bundle 'EasyGrep'
Bundle 'VOoM'
Bundle 'VimIM'
"..................................
" non github repos
" Bundle 'git://git.wincent.com/command-t.git'
"......................................
filetype plugin indent on

安装:vim +BundleInstall +qall

等把插件都安装完,我等了很久,有些要翻出去才能装完

YouCompleteMe

参考:http://valloric.github.io/YouCompleteMe/#ubuntu-linux-x64

装完上面的插件后,打开一个cpp文件,vim提示YouCompleteMe unavailable:…… 什么的,这个时候

cd ~/.vim/bundle/YouCompleteMe
./install.py

这个时候可能会提示没有哪个module什么的,而且出现了下面这条语句,恩,执行之

 git submodule update --init --recursive

遇到了这个:

fatal: Needed a single revision 无法在子模组路径 'third_party/ycmd/third_party/OmniSharpServer' 中找到当前版本

这个时候删除掉那个文件夹即可

等了很久,翻出去才全部下载完

然后再执行

./install.py

出现如下错误:

 pyconfig.h: 没有那个文件或目录

找到了这个网址:https://github.com/okfn/piati/issues/65

执行  sudo apt-get install python-dev libxml2-dev libxslt-dev

完成后再尝试

./install.py

终于可以正常安装了,等它安装完,这个时候再打开一个cpp,会出现代码补全提示了,差不多算是搞定了?

关闭预览,草稿

安装完这一波插件,会自动补全了,但是会出现很恶心的预览,草稿啥的乱七八糟的占据屏幕上方一大截。

这个时候就要用 :set completeopt=menu ,记得写在vimrc中

注释

如果上面的vundle中的插件都装成功了的话,nerdcommenter就是用来注释的

<leader>cc   加注释
<leader>cu 解开注释 <leader>c<space> 加上/解开注释, 智能判断
<leader>cy 先复制, 再注解(p可以进行黏贴)

这里的<leader>默认是 \ ,不过有点远 ,可以自己设置,在配置文件中加入一条 let mapleader="," 将<leader>换成" , ”

编译运行

参考:http://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html

在配置文件中加入代码

map <F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
exec "w"
if &filetype == 'c'
exec "!g++ % -o %<"
exec "! ./%<"
elseif &filetype == 'cpp'
exec "!g++ % -o %<"
exec "! ./%<"
endif
endfunc

即可按F5一键编译运行,写了个hello world 能用 ,不过应该还有一些问题,以后再折腾

编译C++11

g++ -std=c++11 test.cpp

如果里面没有C++11的东西,直接g++ test.cpp 也是可以的,就会出来一个a.out的文件,然后 ./a.out 就能看到执行结果了

Vim配置C++的更多相关文章

  1. acm的ubuntu (ubuntu16.04 安装指南,chrome安装,vim配置,git设置和github,装QQ)

    日常手贱把ubuntu14.04更新到了16.04,然后就game over了.mdzz,不然泥萌也看不到这篇博客了=.= 然后花了些时间重装了一个16.04版的,原来那个14.04的用可以用,就是动 ...

  2. 简单快捷好用的vim配置和终端配置推荐

    vim 配置实用spf13-vim,安装方便简单快捷,极力推荐. 另外oh-my-zsh 终端配置很好,与之搭配使用效果更佳. 安装都很简单,一个脚本搞定, 都是在gitHub上开源的,自行搜索,这里 ...

  3. 快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础

    上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是W ...

  4. centos vim配置高亮语法和格式化粘贴

    centos vim配置高亮语法和格式化粘贴 设置vim别名和高亮grep词语 echo -e "\nalias vi=vim\nalias grep='grep --color'\n&qu ...

  5. vim配置方法

    /etc/vimrc (公共的) ~/.vimrc (私人的) rpm -qa|grep vim 这个命令,如何vim已经正确安装,则会显示上面三个包的名称 全部安装 yum -y install v ...

  6. VIM配置相关记录

    把一直使用中的vim配置做个GIT入库管理,也把之前积累在机器上的文档,做个汇总. https://github.com/wujuguang/kyvim 1. 安装完整版vim vi和vim的区别?在 ...

  7. Vim配置及说明——IDE编程环境

    Vim配置及说明——IDE编程环境 Vim配置及说明——IDE编程环境 1.基本及字体 2.插件管理 3.主题风格 4.窗口设置 5.目录树导航 6.标签导航 7.taglist 8.多文档编辑 9. ...

  8. Env:VIM配置

    注:文章来自于http://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html 花了很长时间整理的,感觉用起来很方便,共享一下. 我的vim配 ...

  9. vim配置python开发环境

    vim配置python开发环境 一.安装vim sudo apt-get install vim 二.vim基础配置 #Centos6.5 /usr/share/vim/vim72 vi /etc/v ...

  10. Vim配置IDE开发环境

    我的vim IDE界面: 1.安装Vim和Vim基本插件首先安装好Vim和Vim的基本插件.这些使用apt-get安装即可:lingd@ubuntu:~/arm$sudo apt-get instal ...

随机推荐

  1. php 高并发下数据同步的问题

    1.加锁缺点:降低性能优点:减少代码逻辑复杂度(题主现在这样超过1w条就删数据的逻辑,感觉看起来就点糟糕啊,如果整个系统一复杂,这样的来回写数据,你确定你的逻辑还维护得下去?建议题主梳理一下代码的逻辑 ...

  2. Swift 学习笔记 (二)

    原创:转载请注明出处 41.闭包表达式语法(Closure Expression Syntax) 闭包表达式语法有如下一般形式: { (parameters) -> returnType in ...

  3. linux C++通过ntp协议获取网络时间

    转自:http://blog.csdn.net/ccjjyy/article/details/42871993 #include <stdio.h> #include <sys/ty ...

  4. 如何删除tomcat下的一目

    不知道我有没有把问题想简单了,是不是应该把webapps下对应的文件夹删了就可以了. work下面对应的也删掉 这个取决于你在tomcat下发布那个项目的方式. 首先是工程的根目录要删除,然后是工程相 ...

  5. Node.js学习 - CallBack Function

    Node.js异步编程的直接体现就是回调,Node使用了大量的回调函数,其所有的API都支持回调. 阻塞代码实例(同步) var fs = require("fs"); var d ...

  6. R语言——基本绘图函数

    通过一个综合的例子测试绘图函数 学习的内容是tigerfish老师的教程. 第一节:基本知识 用seq函数产生100位学生的学号. > num = seq(,) > num [] [] [ ...

  7. PAT1064(上)分析部分

    Complete Binary Search Tree (30) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 16000 B A Binary Search Tree (BST) ...

  8. Django: 之数据库导入、迁移和联用

    Django 数据库导入 从网上下载的一些数据,excel表格,xml文件,txt文件等有时候我们想把它导入数据库,应该如何操作呢? 以下操作符合 Django版本为 1.6 ,兼顾 Django 1 ...

  9. MySQL查询order by相减select相减的Sql语句

    先看一张表 create_time是订单创建时间,pay_time是支付时间 现在我想按照订单完成耗时的时间进行排序,并且取出来的数据中直接算好了差值,怎么用Sql呢,请看 select id,tid ...

  10. 用css怎么制作下拉列表

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...