YouCompletMe支持golang

cd .vim/bundle/YouCompleteMe

./install.sh --clang-completer --go-completer

clang-format 支持谷歌代码风格

clang-format --dump-config -style=Google >> ~/.clang-format

.vimrc

" Common config {

" 设置行号
set number " 不生成备份文件
set nobackup " 不创建临时交换文件
set noswapfile " 右下角显示光标位置
set ruler " 查找不区分大小写
set ignorecase " 查找高亮
set hlsearch " 启用256色
set t_Co= " 不兼容VI
set nocompatible " 设置保存历史(命令, 查找模式的历史
set history= " 右下角显示未完成的命令
set showcmd " 再输入部分查找模式时显示相应的匹配点
set incsearch " 使用UTF-8编码
set encoding=utf- " 使用鼠标
" set mouse=a " 显示TAB键
" set list " 自动保存
" set autowrite " 设置n个字自动换行
" set textwidth=n " } " Beautify-Powerline { set rtp+=/usr/local/lib/python2./dist-packages/powerline/bindings/vim/
set laststatus= " } " Plugin Management { filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'Valloric/YouCompleteMe' " 自动补全
Plugin 'scrooloose/nerdtree' " 目录树
Plugin 'scrooloose/nerdcommenter' " 注释
Plugin 'scrooloose/syntastic' " code detection
Plugin 'fatih/vim-go' " vim-go
Plugin 'rhysd/vim-clang-format' " 格式化代码
Plugin 'ludovicchabant/vim-gutentags' " auto ctags
call vundle#end() " Colorscheme { " 语法高亮
syntax on " 文件类型带上颜色
syntax enable " 文件类型探测 使用缩进文件
filetype plugin indent on " 设置背景色
set background=dark " 设置主题
colorscheme tomorrow-night " } " YCM { " 寻找全局配置文件
let g:ycm_global_ycm_extra_conf = '/home/${USER}/.vim/bundle/YouCompleteMe/third_party/ycmd/.ycm_extra_conf.py'
let g:ycm_seed_identifiers_with_syntax = " 语法关键字补全
set completeopt-=preview " 关闭预览
let g:ycm_enable_diagnostic_signs = " 关闭错误检测
let g:ycm_enable_diagnostic_highlighting = " 关闭错误检测高亮 " } " TagList { map <F3> :TlistToggle<CR>
let Tlist_Show_One_File= " 只显示当前文件的tags
let Tlist_WinWidth= " 设置taglist宽度
let Tlist_Exit_OnlyWindow= " tagList窗口是最后一个窗口,则退出Vim
let Tlist_Use_Right_Window= " 在Vim窗口右侧显示taglist窗口 " } " NERDTree { map <F4> :NERDTreeToggle<CR> "设置NERDTree的宽度
let NERDTreeWinSize=
" } " nerdcommenter { " 注释的时候自动加个空格, 强迫症必配
let mapleader=","
let g:NERDSpaceDelims=
map <C-m> ,c<space> " } " Compile { map <F6> :call CR()<CR>
func! CR()
exec "w"
exec "!g++ % -std=c++11 -o %<"
exec "! ./%<"
endfunc " } " Code Style { autocmd FileType cpp,c exec ":call SetCppFileConfig()"
autocmd FileType go,bash,python,java,html,javascipt,vim,sh exec ":call SetCommonFileConfig()" func SetCppFileConfig()
" 设置tab为2个空格
set tabstop= " 设置缩进为2个空格
set shiftwidth= " 用space替代tab的输入
set expandtab " 谷歌C++代码风格检测
let g:clang_format#command = 'clang-format'
nmap <F7> :ClangFormat<cr>
autocmd FileType c ClangFormatAutoEnable
let g:clang_format#detect_style_file = " ctags补全结构体
set completeopt=longest,menu endfunc func SetCommonFileConfig()
" 设置tab为4个空格
set tabstop= " 设置缩进为4个空格
set shiftwidth= " 用space替代tab的输入
set expandtab endfunc " }

个人vim配置的更多相关文章

  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. 蓝牙入门知识-CC2541知识

    蓝牙是为了能够通信,想要通信就必须遵守一定的规则, Profile 就可以理解为相互约定的规则,因为每个协议栈demo 都会有一个Profile 与之对应, 我们这里的SimpleBLExxx 对应的 ...

  2. Windows Server 2008 R2 安装域

    在Windows Server 2008 R2里面安装域. 1.首先在"服务"里面添加"角色": 2.选择对应的域角色 3.安装完成后要启动配置向导 4.选择新 ...

  3. Java图片转字符

    很久都没有更新博客了,昨天下午一个朋友问我能不能将一张图片转换成字符画,然后我想我这个朋友不知道,也许有的朋友以不知道,我就简单的分享一下 package com.xsl.zhuanhuan; imp ...

  4. <cfenv>(fenv.h) _c++11

    头文件 <cfenv>(fenv.h) c++11 浮点环境 这个头文件声明了一系列的函数和宏去访问浮点环境,以及特殊的类型. 浮点环境维护一系列的状态标志(status flags)和具 ...

  5. jQuery筛选器及对DOM修改(学习笔记)

    1.jQuery筛选器 注意:请先在管理Nuget程序包中查找jQuery包,并安装.也可以在jQuery官网下载. 实现: <!DOCTYPE html> <html xmlns= ...

  6. 树的层次遍历(Trees on the level,UVA 122)

    题目描述: 题目思路: 1.用结构链表来建树 2.用队列来实现层次遍历,当遍历到根节点时,将其子节点压入队列 #include <iostream> #include <cstdli ...

  7. C++ ifndef /define/ endif 作用和用法

    ifndef/define/endif”主要目的是防止头文件的重复包含和编译 比如你有两个C文件,这两个C文件都include了同一个头文件.而编译时,这两个C文件要一同编译成一个可运行文件,于是问题 ...

  8. Intro to Probabilistic Model

    概率论复习 概率(Probability) 频率学派(Frequentist):由大量试验得到的期望频率(致命缺陷:有些事情无法大量试验,例如一封邮件是垃圾邮件的概率,雷达探测的物体是一枚导弹的概率) ...

  9. java一些面试题

    java虚拟机 什么时候会触发full gc System.gc()方法的调用 老年代空间不足 永生区空间不足(JVM规范中运行时数据区域中的方法区,在HotSpot虚拟机中又被习惯称为永生代或者永生 ...

  10. Docker: 如何修改 Docker 的镜像存储位置

    我用的阿里云的服务器, 但是系统盘只有20G, 默认 Docker 的镜像文件是安装在/var/lib 目录下的, 这样的话我根本装不了太多的镜像... 这个必须得改改... 搜了下, 解决方案如下: ...