Vim配置及说明-IDE编程环境

上传人:wuy****ng 文档编号:132201549 上传时间:2022-08-08 格式:DOC 页数:18 大小:314.51KB
收藏 版权申诉 举报 下载
Vim配置及说明-IDE编程环境_第1页
第1页 / 共18页
Vim配置及说明-IDE编程环境_第2页
第2页 / 共18页
Vim配置及说明-IDE编程环境_第3页
第3页 / 共18页
资源描述:

《Vim配置及说明-IDE编程环境》由会员分享,可在线阅读,更多相关《Vim配置及说明-IDE编程环境(18页珍藏版)》请在装配图网上搜索。

1、Vim配置及说明IDE编程环境o想起几年前第一次在Linux上面用vim(当时刚从Windows转到Linux下编程),第一印象就是怎么这么麻烦,界面还这么丑,各种不方便,对着vimtutor练习了一下午。当时满脑子怀念Window下的VS的各种方便,后来搜到吴垠的手把手教你把Vim改装成一个IDE编程环境,让我顿时欣喜了一番,感觉看到了曙光,又对着他的教程捣鼓折腾了几天后感觉vim好用了些,但还是不尽人意,感觉没VS方便,尤其是代码的自动补全方面,而且很多命令都要记,隔一段时间不用就忘记了。但是经过不断捣鼓折腾,现在我再也离不开vim了,在Windows下我也用vim。只有坚持使用一段时间v

2、im,选好自己喜欢的插件,你一定会对vim爱不释手的。言归正传,下面是我的配置。上张效果图:1、基本及字体对于用惯了Windows下ctrl+s一键保存的人是不是对与vim中在命令行下:w的保存方式很不习惯?在.vimrc中加入如下配置,你可以使用s一键保存 s 一键保存func! SaveFile() exec wendfuncmap s :call SaveFile()imap s :call SaveFile()vmap s :call SaveFile()安装字体Monaco默认字体不好看,挑个自己喜欢的,前提是你得先安装好该字体。我喜欢Monaco字体,美观,对中文支持也很好。下面是

3、找到的安装过程,亲自验证。 首先在 这个网址下载Monaco字体 使用命令 unzip monaco-font-master解压压缩包 切换到monaco-font-master目录中,修改脚本文件权限chmod +x install-font.sh 执行脚本文件sudo ./install-font.sh2、插件管理插件 gmarik/vundle推荐等级:vim 的各插件打包文档中通常也包含doc、plugin子目录,用户将插件打包文档中的对应子目录拷贝至.vim/目录中即可完成安装,但插件一多将混乱不堪,会出现名字冲突,卸载麻烦(有时分不清那个文件对应哪个插件,自己也不清楚到底安装了哪些

4、插件)等问题。vundle可以帮我们解决这些问题。通过使用vundle来安装新的插件也及其方便:1 可以去GIT,也可以去Vim Scripts查找并选好你想要的插件。2 在VIM的配置文件中写一句 Bundle plugin_name;3 执行一下Vundle的初始化命令,插件就装好了; o 升级和卸载也是同样的简单;Bundle 支持的格式有三种:第一种是一个普通的字符串,就是 vim 插件页面里左上角的插件名字,如果插件名有空格,使用 - 替换。第二种是github帐号/项目名。第三种就是git repository具体可查看vbundle的帮助文档。3、主题风格一套好的配色方案绝对会影

5、响你的编码效率,vim 内置了 10 多种配色方案供你选择GUI 下,可以通过菜单(Edit - Color Scheme)试用不同方案,字符模式下,需要你手工调整配置信息,再重启 vim 查看效果(csExplorer 插件,可在字符模式下不用重启即可查看效果)。 还不满意,可以在VIM Color Scheme Test - C这里选择自己喜欢的配色方案目前用得最多的是下面三种配色方案: solarized 推荐等级: molokai 推荐等级: phd 推荐等级:我的配置如下: 主题 solarizedBundle altercation/vim-colors-solarizedlet

6、g:solarized_termcolors=256let g:solarized_termtrans=1let g:solarized_contrast=normallet g:solarized_visibility=normal 主题 molokaiBundle tomasr/molokailet g:molokai_original = 1 配色方案set background=darkset t_Co=256if g:isGUI colorscheme solarized colorscheme molokai colorscheme phdelse colorscheme sola

7、rized colorscheme molokai colorscheme phdendif其中,不同主题都有暗/亮色系之分,这样三种主题六种风格,久不久换一换,给你不一样的心情4、窗口设置编辑器界面展示的应全是代码,不应该有工具条、菜单、滚动条浪费空间的元素,配置如下:if g:isGUI 使用GUI界面时的设置 set guioptions+=c 使用字符提示框 set guioptions-=m 隐藏菜单栏 set guioptions-=T 隐藏工具栏 set guioptions-=L 隐藏左侧滚动条 set guioptions-=r 隐藏右侧滚动条 set guioptions-

8、=b 隐藏底部滚动条 set showtabline=0 隐藏Tab栏 set cursorline 突出显示当前行endif我们把 vim 弄成全屏模式。vim 自身无法实现全屏,必须借助第三方工具wmctrl, 一个控制窗口XYZ坐标、窗口尺寸的命令行工具。先自行安装wmctrl(sudo apt-get install wmctrl) ,再在.vimrc中增加如下信息: fun! ToggleFullscreen() 将外部命令 wmctrl 控制窗口最大化的命令行参数封装成一个 vim 的函数 call system(wmctrl -ir . v:windowid . -b toggl

9、e,fullscreen) endf map :call ToggleFullscreen() 全屏开/关快捷键 autocmd VimEnter * call ToggleFullscreen() 启动 vim 时自动全屏5、目录树导航插件:vim-scripts/The-NERD-tree推荐等级:nerd-tree插件可以查看文件列表,要打开哪个文件,光标选中后回车即可在新 buffer 中打开。配置如下:目录文件导航Bundle scrooloose/nerdtree nt 打开nerdree窗口,在左侧栏显示nmap nt :NERDTreelet NERDTreeHighlight

10、Cursorline=1let NERDTreeIgnore= .pyc$, .pyo$, .obj$, .o$, .so$, .egg$, .git$, .svn$, .hg$ let g:netrw_home=/bakclose vim if the only window left open is a NERDTreeautocmd bufenter * if (winnr($) = 1 & exists(b:NERDTreeType) & b:NERDTreeType = primary) | q | end6、标签导航majutsushi/tagbar推荐等级: tagbar按作用域

11、归类不同的标签。按名字空间 n_foo、类 Foo 进行归类,在内部有声明、有定义; 显示标签类型。名字空间、类、函数等等; 显示完整函数原型; 图形化显示共有成员(+)、私有成员(-)、保护成员(#);配置如下:标签导航,纬度和taglist不同Bundle majutsushi/tagbarnmap tb :TagbarToggle tb 打开tagbar窗口let g:tagbar_autofocus = 17、taglistvim-scripts/taglist.vim推荐等级:在vimrc中配置如下:Bundle vim-scripts/taglist.vim tl 打开Taglis

12、t/TxtBrowser窗口,在右侧栏显示nmap tl :Tlist :Tlist 调用TagListlet Tlist_Show_One_File = 1 只显示当前文件的tagslet Tlist_Exit_OnlyWindow = 1 如果Taglist窗口是最后一个窗口则退出Vimlet Tlist_Use_Right_Window = 1 在右侧窗口中显示let Tlist_File_Fold_Auto_Close = 1 自动折叠let Tlist_Sort_Type = name items in tags sorted by name8、多文档编辑插件fholgado/min

13、ibufexpl.vim推荐等级:vim 的多文档编辑涉及三个概念:buffer、window、tab,这三个事物与我们常规理 解意义大相径庭。vim 把加载进内存的文件叫做 buffer,buffer 不一定可见;若要 buffer 要可见,则必须通过 window 作为载体呈现;同个看面上的多个 window 组合成 一个 tab。vim 中每打开一个文件,vim 就对应创建一个 buffer,多个文件就有多个 buffer,但默认你只看得到最后 buffer 对应的 windowvimrc中配置如下:Bundle fholgado/minibufexpl.vim 多文件切换,也可使用鼠标

14、双击相应文件名进行切换let g:miniBufExplMapWindowNavVim = 1let g:miniBufExplMapWindowNavArrows = 1let g:miniBufExplMapCTabSwitchBufs = 1let g:miniBufExplModSelTarget = 1解决FileExplorer窗口变小问题let g:miniBufExplForceSyntaxEnable = 1let g:miniBufExplorerMoreThanOne=2let g:miniBufExplCycleArround=1 buffer 切换快捷键,默认方向键左

15、右可以切换buffermap :MBEbnmap :MBEbp9、文件搜索插件:kien/ctrlp.vim推荐等级:CtrlP会沿着vim打开的目录一直向上查找类似.git/.svn等这样的项目管理的目录,如果找到则将这个作为项目的根目录 vimrc中配置如下:for file search ctrlp, 文件搜索Bundle kien/ctrlp.vim 打开ctrlp搜索let g:ctrlp_map = fflet g:ctrlp_cmd = CtrlP 相当于mru功能,show recently opened filesmap fp :CtrlPMRUset wildignore+

16、=*/tmp/*,*.so,*.swp,*.zip MacOSX/Linuxlet g:ctrlp_custom_ignore = dir: v/.(git|hg|svn|rvm)$, file: v.(exe|so|dll|zip|tar|tar.gz)$, link: SOME_BAD_SYMBOLIC_LINKS,let g:ctrlp_working_path_mode=0let g:ctrlp_match_window_bottom=1let g:ctrlp_max_height=15let g:ctrlp_match_window_reversed=0let g:ctrlp_mru

17、f_max=500let g:ctrlp_follow_symlinks=110、美化状态栏插件:Lokaltog/vim-powerline推荐等级:状态栏增强展示,通过本插件,增强后的状态栏,不仅界面漂亮多了,而且多 了好些辅助信息(所在函数名、文件编码格式、文件类型)。 vimrc中配置如下:Bundle Lokaltog/vim-powerlineif want to use fancy,need to add font patch - git clone git:/ /.fonts/ttf-dejavu-powerlinelet g:Powerline_symbols = fancy

18、let g:Powerline_symbols = unicode11、括号匹配高亮插件:kien/rainbow_parentheses.vim推荐等级:括号显示增强 vimrc中配置如下:Bundle kien/rainbow_parentheses.vimlet g:rbpt_colorpairs = brown, RoyalBlue3, Darkblue, SeaGreen3, darkgray, DarkOrchid3, darkgreen, firebrick3, darkcyan, RoyalBlue3, darkred, SeaGreen3, darkmagenta, Dark

19、Orchid3, brown, firebrick3, gray, RoyalBlue3, black, SeaGreen3, darkmagenta, DarkOrchid3, Darkblue, firebrick3, darkgreen, RoyalBlue3, darkcyan, SeaGreen3, darkred, DarkOrchid3, red, firebrick3, let g:rbpt_max = 40let g:rbpt_loadcmd_toggle = 012、可视化缩进插件:nathanaelkane/vim-indent-guides推荐等级:可视化的方式能将相同

20、缩进的代码关联起来。 显可视化缩进,示对齐线。 vimrc中配置如下:Bundle nathanaelkane/vim-indent-guideslet g:indent_guides_enable_on_vim_startup = 0 默认关闭let g:indent_guides_guide_size = 1 指定对齐线的尺寸let g:indent_guides_start_level = 2 从第二层开始可视化显示缩进 ig 打开/关闭 vim-indent-guides13、标志无效空格bronson/vim-trailing-whitespace推荐等级:将代码行最后无效的空格标红

21、vimrc中配置如下:for show no user whitespacesBundle bronson/vim-trailing-whitespacemap :FixWhitespace +space去掉末尾空格14、快速移动插件:Lokaltog/vim-easymotion推荐等级:效率提升杀手锏,跳转到光标后任意位置vimrc中配置如下:更高效的移动 / + w/f/lBundle Lokaltog/vim-easymotion15、括号匹配跳转插件:vim-scripts/matchit.zip推荐等级:匹配成对的标签,在()、甚至HTML标签之间快速跳转,快捷键为% vimrc中

22、配置如下:Bundle vim-scripts/matchit.zip16、自动补全插件:Valloric/YouCompleteMe推荐等级:强烈推荐 Ubuntu13.04配置YCM可参考这里17、宏定义补全插件:SirVer/ultisnips推荐等级:配合YCM使用,双剑合璧,方便快捷,强烈推荐开发时,我经常要输入相同的代码片断,比如 if-else、switch 语句,ultisnips可以快速插入我们自定义的代码片段,实现高效补全。 UltiSnips 预定义了几十种语言常用的代码模板,位于/.vim/bundle/UltiSnips/UltiSnips/,UltiSnips 有一

23、套自己的代码模板语法规则。 vimrc中配置如下:快速插入代码片段Bundle SirVer/ultisnipslet g:UltiSnipsExpandTrigger = let g:UltiSnipsJumpForwardTrigger = let g:UltiSnipsJumpBackwardTrigger=定义存放代码片段的文件夹 .vim/snippets下,使用自定义和默认的,将会的到全局,有冲突的会提示let g:UltiSnipsSnippetDirectories=snippets, bundle/ultisnips/UltiSnips18、快速加减注释插件:scrooloo

24、se/nerdcommenter推荐等级:快速批量注释,方便好用常用操作: cc,注释当前选中文本,如果选中的是整行则在每行首添加 /,如果选中一行的部分内容则在选中部分前后添加分别 /、/; cu,取消选中文本块的注释。更多内容见帮助文档。Bundle scrooloose/nerdcommenterlet NERDSpaceDelims = 119、快速加环绕符tpope/vim-surround 详情见帮助文档 配合使用增强版命令重复 pope/vim-repeat vimrc中配置如下:Bundle tpope/vim-surroundfor repeat - enhance surr

25、ound.vim, . to repeat commandBundle tpope/vim-repeat20、自动括号补全插件:Raimondi/delimitMate推荐等级:vimrc中配置如下:自动补全单引号,双引号等Bundle Raimondi/delimitMate for python docstring ,优化输入au FileType python let b:delimitMate_nesting_quotes = 21、代码对齐插件:godlygeek/tabular推荐等级:vimrc中配置如下:for code alignmentBundle godlygeek/ta

26、bular bb 按=号对齐代码 Tabular插件nmap bb :Tab /= bn 自定义对齐 Tabular插件nmap bn :Tab /22、静态代码分析插件:scrooloose/syntastic推荐等级:syntastic是一款支持多语言的实时语法检查插件。在 syntastic 的作用下,编码中、编译前,所有语法错误都将被抓出来并 呈现给你。vimrc中配置如下: 使用pyflakes,速度比pylint快Bundle scrooloose/syntasticlet g:syntastic_error_symbol = set error or warning signsl

27、et g:syntastic_warning_symbol = let g:syntastic_check_on_open=1let g:syntastic_enable_highlighting = 0let g:syntastic_python_checker=flake8,pyflakes,pep8,pylintlet g:syntastic_python_checkers=pyflakeshighlight SyntasticErrorSign guifg=white guibg=blacklet g:syntastic_cpp_include_dirs = /usr/include/

28、let g:syntastic_cpp_remove_include_errors = 1let g:syntastic_cpp_check_header = 1let g:syntastic_cpp_compiler = clang+let g:syntastic_cpp_compiler_options = -std=c+11 -stdlib=libstdc+let g:syntastic_enable_balloons = 1 whether to show balloons23、快速跳转到TODO列表插件:vim-scripts/TaskList.vim推荐等级:查看并快速跳转到代码中

29、的TODO列表。重构代码时一般通读,标记修改位置,非常实用vimrc中配置如下:Bundle vim-scripts/TaskList.vimmap td TaskList24、维基百科插件:vim-scripts/vimwiki推荐等级:vim下的维基百科,我的博客就是用vimwiki写的。vimrc中配置如下:Bundle vim-scripts/vimwikilet g:vimwiki_w32_dir_enc = utf-8 设置编码let g:vimwiki_use_mouse = 1 使用鼠标映射let g:vimwiki_valid_html_tags = a,img,b,i,s,

30、u,sub,sup,br,hr,div,del,code,red,center,left,right,h1,h2,h3,h4,h5,h6,pre,script,style 声明可以在wiki里面使用的HTML标签 对中文用户来说,我们并不怎么需要驼峰英文成为维基词条let g:vimwiki_camel_case = 0let blog = if g:isWIN if g:atCompany let blog.path = D:/Files/Files/mysite/wiki/ let blog.path_html = D:/Files/Files/mysite/html/ let blog.

31、template_path = D:/Files/Files/mysite/templates/ let blog.nested_syntaxes = python: python, c+: cpp else let blog.path = D:/Files/mysite/wiki/ let blog.path_html = D:/Files/mysite/html/ let blog.template_path = D:/Files/mysite/templates/ let blog.nested_syntaxes = python: python, c+: cpp endifelse l

32、et blog.path = /mysite/wiki/ let blog.path_html = /mysite/html/ let blog.template_path = /mysite/templates/endiflet blog.template_default = sitelet blog.template_ext = .htmllet blog.auto_export = 1let g:vimwiki_list = blog25、多光标批量操作插件:terryma/vim-multiple-cursors推荐等级:vimrc中配置如下:for mutil cursorBundl

33、e terryma/vim-multiple-cursorslet g:multi_cursor_use_default_mapping=0 Default mappinglet g:multi_cursor_next_key=let g:multi_cursor_prev_key=let g:multi_cursor_skip_key=let g:multi_cursor_quit_key=26、python语法高亮python syntax highlightBundle hdima/python-syntaxlet python_highlight_all = 127、其他说明在我的vimrc中使用了ctags,需要安装sudo apt-get install ctags推荐等级:

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!