C编程vim初步配置
我的 .vimrc文件
- "********************************************************
- " 一般性配置 *
- "********************************************************
- "关闭vim一致性原则
- set nocompatible
- "显示行号
- set number
- "设置在编辑过程中右下角显示光标的行列信息
- set ruler
- "在状态栏显示正在输入的命令
- set showcmd
- "设置历史记录条数
- set history=1000
- "设置取消备份 禁止临时文件的生成
- set nobackup
- set noswapfile
- "设置匹配模式
- set showmatch
- "设置C/C++方式自动对齐
- set autoindent
- set cindent
- "开启语法高亮功能
- syntax enable
- syntax on
- "指定配色方案为256色
- set t_Co=256
- "设置搜索时忽略大小写
- set ignorecase
- "配置backspace的工作方式
- set backspace=indent,eol,start
- "设置在vim中可以使用鼠标
- set mouse=a
- "设置tab宽度
- set tabstop=4
- "设置自动对齐空格数
- set shiftwidth=4
- "设置退格键时可以删除4个空格
- set smarttab
- set softtabstop=4
- "将tab键自动转换为空格
- set expandtab
- "设置编码方式
- set encoding=utf-8
- "自动判断编码时 依次尝试以下编码
- set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
- "检测文件类型
- filetype on
- "针对不同的文件采取不同的缩进方式
- filetype indent on
- "允许插件
- filetype plugin on
- "启动智能补全
- filetype plugin indent on
- "*********************************************************
- " vundle 配置 *
- "*********************************************************
- set rtp+=~/.vim/bundle/vundle/
- call vundle#rc()
- " let Vundle manage Vundle
- Bundle 'gmarik/vundle'
- " My Bundles here:
- Bundle 'tpope/vim-fugitive'
- Bundle 'Lokaltog/vim-easymotion'
- Bundle 'rstacruz/sparkup', {'rtp': 'vim/'}
- Bundle 'tpope/vim-rails.git'
- Bundle 'taglist.vim'
- Bundle 'The-NERD-tree'
- Bundle 'Syntastic'
- Bundle 'L9'
- Bundle 'FuzzyFinder'
- Bundle 'Lokaltog/vim-powerline'
- Bundle 'Valloric/YouCompleteMe'
- "*****************************************************
- " taglist配置 *
- "*****************************************************
- "不显示"press F1 to display help"
- let Tlist_Compact_Format=1
- "窗口在左侧显示
- let Tlist_Use_Right_Window=1
- "只显示当前文件的tags
- let Tlist_Show_One_File=1
- "高亮显示
- let Tlist_Auto_Highlight_tag=1
- "随文件自动更新
- let Tlist_Auto_Update=1
- "设置宽度
- let Tlist_WinWidth=30
- "taglist窗口是最后一个窗口,则退出vim
- let Tlist_Exit_OnlyWindow=1
- "单击跳转
- let Tlist_Use_SingClick=1
- "打开关闭快捷键
- nnoremap <silent> <F8> :TlistToggle<CR>
- "********************************************************
- " NERD_Tree 配置 *
- "********************************************************
- "显示增强
- let NERDChristmasTree=1
- "自动调整焦点
- let NERDTreeAutoCenter=1
- "鼠标模式:目录单击,文件双击
- let NERDTreeMouseMode=2
- "打开文件后自动关闭
- let NERDTreeQuitOnOpen=1
- "显示文件
- let NERDTreeShowFiles=1
- "显示隐藏文件
- let NERDTreeShowHidden=1
- "高亮显示当前文件或目录
- let NERDTreeHightCursorline=1
- "显示行号
- let NERDTreeShowLineNumbers=1
- "窗口位置
- let NERDTreeWinPos='left'
- "窗口宽度
- let NERDTreeWinSize=31
- "不显示'Bookmarks' label 'Press ? for help'
- let NERDTreeMinimalUI=1
- "快捷键
- nnoremap <silent> <F4> :NERDTreeToggle<CR>
- "*****************************************************
- " YouCompleteMe配置 *
- "*****************************************************
- "leader映射为逗号“,”
- let mapleader = ","
- "配置默认的ycm_extra_conf.py
- let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py'
- "按,jd 会跳转到定义
- nnoremap <leader>jd :YcmCompleter GoToDefinitionElseDeclaration<CR>
- "打开vim时不再询问是否加载ycm_extra_conf.py配置
- let g:ycm_confirm_extra_conf=0
- "使用ctags生成的tags文件
- let g:ycm_collect_identifiers_from_tag_files = 1
- "*****************************************************
- " Syntastic配置 *
- "*****************************************************
- let g:Syntastic_check_on_open=1
效果图
用到的主要插件:
- vundle(用于插件管理)
- taglist(显示代码结构)
- NERD_Tree(树形目录)
- YouCompleteMe(智能补全)
- Syntastic( 语法检查)
学习时间不长,如有问题请指出!感谢!