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. AOSP 设置编译输出目录

    export OUT_DIR=/media/caoxinyu/TomasYu/out 注意:export OUT_DIR= OUT_DIR 后面直接跟= ,不要有空格.否则报错.

  2. javasript 字符串 数组操作

    Javascript中经常涉及到对字符串和数组的处理,今天总结一下具体的用法 一 操作字符串 String对象有很多函数,可以以不同的方式访问和操作字符串,具体方法如下:   charAt(index ...

  3. Web应用服务器性能压力测试

    压力测试需要关注三个方面:如何正确产生压力.如何定位瓶颈.如何预估系统的承载能力 产生压力的方法 通常可以写脚本产生压力机器人对服务器进行发包和收包操作,也可以使用现有的工具(像jmeter.Load ...

  4. 第一阶段·Linux运维基础-第2章·Linux系统目录结构介绍

    01 变量与PS1 02 添加用户 03 关闭SELinux 04 关闭iptables 05 显示中文乱码排查过程 06 总结 07 目录结构课程内容 08 Linux目录结构特点 09 Linux ...

  5. [JSON].valueOf( keyPath )

    语法:[JSON].valueOf( keyPath ) 返回:[任意类型 | null] 说明:获取键名路径原值,它保留原始值的类型 示例: b = sysFile.binary("tes ...

  6. 【view】 视图组件说明

    view 是视图容器,可用于包裹其它组件或文本内容. 原型: <view hover-class="[String]" hover-stop-propagation=&quo ...

  7. linux 学习总结---- mysql 总结

    用户的创建 ---->修改 ---->删除用户 create alter drop (数据定义语言 DDL) 授权: insert update delete grant *.* revo ...

  8. javascript常用对象方法

    concat:连接产生一个新数组 [1,2].concat([3,4])     >> [1, 2, 3, 4] filter:返回符合条件的一个新数组 [1,2,3,4,5].filte ...

  9. Python练习—循环

    1.输入n的值,求出n的阶乘. s=1 n = int(input("请输入一个数")) for i in range(1,n+1): s=s*i print(s) 2.折纸上月球 ...

  10. postmortem report of period M2

    一.设想和目标 1.我们的软件主要要解决学长设计的学霸系统中视频及文档的浏览功能问题. 2.时间相对充裕.不过对于我们这些零基础的人来说还是比较困难. 3.我们团队中不同意见通常会进行进一步讨论,说出 ...