博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C编程vim初步配置
阅读量:6372 次
发布时间:2019-06-23

本文共 3339 字,大约阅读时间需要 11 分钟。

C编程vim初步配置

我的 .vimrc文件

 
  1. "********************************************************
  2. " 一般性配置 *
  3. "********************************************************
  4.  
  5. "关闭vim一致性原则
  6. set nocompatible
  7.  
  8. "显示行号
  9. set number
  10.  
  11. "设置在编辑过程中右下角显示光标的行列信息
  12. set ruler
  13.  
  14. "在状态栏显示正在输入的命令
  15. set showcmd
  16.  
  17. "设置历史记录条数
  18. set history=1000
  19.  
  20. "设置取消备份 禁止临时文件的生成
  21. set nobackup
  22. set noswapfile
  23.  
  24. "设置匹配模式
  25. set showmatch
  26.  
  27. "设置C/C++方式自动对齐
  28. set autoindent
  29. set cindent
  30.  
  31. "开启语法高亮功能
  32. syntax enable
  33. syntax on
  34.  
  35. "指定配色方案为256色
  36. set t_Co=256
  37.  
  38. "设置搜索时忽略大小写
  39. set ignorecase
  40.  
  41. "配置backspace的工作方式
  42. set backspace=indent,eol,start
  43.  
  44. "设置在vim中可以使用鼠标
  45. set mouse=a
  46.  
  47. "设置tab宽度
  48. set tabstop=4
  49.  
  50. "设置自动对齐空格数
  51. set shiftwidth=4
  52.  
  53. "设置退格键时可以删除4个空格
  54. set smarttab
  55. set softtabstop=4
  56.  
  57. "tab键自动转换为空格
  58. set expandtab
  59.  
  60. "设置编码方式
  61. set encoding=utf-8
  62.  
  63. "自动判断编码时 依次尝试以下编码
  64. set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
  65.  
  66. "检测文件类型
  67. filetype on
  68.  
  69. "针对不同的文件采取不同的缩进方式
  70. filetype indent on
  71.  
  72. "允许插件
  73. filetype plugin on
  74.  
  75. "启动智能补全
  76. filetype plugin indent on
  77.  
  78.  
  79. "*********************************************************
  80. " vundle 配置 *
  81. "*********************************************************
  82.  
  83. set rtp+=~/.vim/bundle/vundle/
  84. call vundle#rc()
  85. " let Vundle manage Vundle
  86. Bundle 'gmarik/vundle'
  87. " My Bundles here:
  88.  
  89. Bundle 'tpope/vim-fugitive'
  90. Bundle 'Lokaltog/vim-easymotion'
  91. Bundle 'rstacruz/sparkup', {'rtp': 'vim/'}
  92. Bundle 'tpope/vim-rails.git'
  93. Bundle 'taglist.vim'
  94. Bundle 'The-NERD-tree'
  95. Bundle 'Syntastic'
  96. Bundle 'L9'
  97. Bundle 'FuzzyFinder'
  98. Bundle 'Lokaltog/vim-powerline'
  99. Bundle 'Valloric/YouCompleteMe'
  100.  
  101. "*****************************************************
  102. " taglist配置 *
  103. "*****************************************************
  104.  
  105. "不显示"press F1 to display help"
  106. let Tlist_Compact_Format=1
  107.  
  108. "窗口在左侧显示
  109. let Tlist_Use_Right_Window=1
  110.  
  111. "只显示当前文件的tags
  112. let Tlist_Show_One_File=1
  113.  
  114. "高亮显示
  115. let Tlist_Auto_Highlight_tag=1
  116.  
  117. "随文件自动更新
  118. let Tlist_Auto_Update=1
  119.  
  120. "设置宽度
  121. let Tlist_WinWidth=30
  122.  
  123. "taglist窗口是最后一个窗口,则退出vim
  124. let Tlist_Exit_OnlyWindow=1
  125.  
  126. "单击跳转
  127. let Tlist_Use_SingClick=1
  128.  
  129. "打开关闭快捷键
  130. nnoremap <silent> <F8> :TlistToggle<CR>
  131.  
  132.  
  133.  
  134.  
  135. "********************************************************
  136. " NERD_Tree 配置 *
  137. "********************************************************
  138.  
  139. "显示增强
  140. let NERDChristmasTree=1
  141.  
  142. "自动调整焦点
  143. let NERDTreeAutoCenter=1
  144.  
  145. "鼠标模式:目录单击,文件双击
  146. let NERDTreeMouseMode=2
  147.  
  148. "打开文件后自动关闭
  149. let NERDTreeQuitOnOpen=1
  150.  
  151. "显示文件
  152. let NERDTreeShowFiles=1
  153.  
  154. "显示隐藏文件
  155. let NERDTreeShowHidden=1
  156.  
  157. "高亮显示当前文件或目录
  158. let NERDTreeHightCursorline=1
  159.  
  160. "显示行号
  161. let NERDTreeShowLineNumbers=1
  162.  
  163. "窗口位置
  164. let NERDTreeWinPos='left'
  165.  
  166. "窗口宽度
  167. let NERDTreeWinSize=31
  168.  
  169. "不显示'Bookmarks' label 'Press ? for help'
  170. let NERDTreeMinimalUI=1
  171.  
  172. "快捷键
  173. nnoremap <silent> <F4> :NERDTreeToggle<CR>
  174.  
  175.  
  176.  
  177. "*****************************************************
  178. " YouCompleteMe配置 *
  179. "*****************************************************
  180.  
  181. "leader映射为逗号“,”
  182. let mapleader = ","
  183.  
  184. "配置默认的ycm_extra_conf.py
  185. let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py'
  186. "按,jd 会跳转到定义
  187. nnoremap <leader>jd :YcmCompleter GoToDefinitionElseDeclaration<CR>
  188.  
  189. "打开vim时不再询问是否加载ycm_extra_conf.py配置
  190. let g:ycm_confirm_extra_conf=0
  191.  
  192. "使用ctags生成的tags文件
  193. let g:ycm_collect_identifiers_from_tag_files = 1
  194.  
  195.  
  196. "*****************************************************
  197. " Syntastic配置 *
  198. "*****************************************************
  199.  
  200.  
  201. let g:Syntastic_check_on_open=1

  

效果图

用到的主要插件:

  • vundle(用于插件管理)
  • taglist(显示代码结构)
  • NERD_Tree(树形目录)
  • YouCompleteMe(智能补全)
  • Syntastic( 语法检查)

 原文发布时间:2014-07-05

本文来自云栖合作伙伴“linux中国”

转载地址:http://zcfqa.baihongyu.com/

你可能感兴趣的文章
爱立信物联网广州路演
查看>>
云计算企业业绩分化明显 9家上市公司中期预喜
查看>>
《VMware Virtual SAN权威指南(原书第2版)》一3.5 可能发生的网络配置问题
查看>>
SK电讯发布Q2财报 净利润同比下降26.9%
查看>>
零售品牌如何驾驭大数据主导商业决策?
查看>>
经济模式UPS在数据中心的应用(上)
查看>>
Intel首款32核Xeon E5 v5跑分曝光:史上最强
查看>>
中国基于国产龙芯处理器的大数据一体机
查看>>
物联网影响商业发展三要素
查看>>
China Unicom and Chunghwa Telecom work together&nb
查看>>
Java图片上查找图片算法
查看>>
Python fabric实现远程操作和部署
查看>>
详解Java中staitc关键字
查看>>
前中情局局长:FBI目的是从根本上改善iPhone
查看>>
大隐隐于市,你身边的那些安全隐患你都知道么?
查看>>
物联网市场迅猛发展 “中国芯”如何把握机会?
查看>>
aws 上使用elb 的多域名问题
查看>>
环球花木网的目标就是致力于打造成为“园林相关行业的专业性门户网站
查看>>
《编写高质量代码:改善c程序代码的125个建议》—— 建议14-1:尽量避免对未知的有符号数执行位操作...
查看>>
《C语言编程魔法书:基于C11标准》——2.2 整数在计算机中的表示
查看>>