CentOS6 下Vim安装和配置

1.系统只安装了vim-minimal,执行以下命令安装另外两个组件

yum install vim-common
yum install vim-enhanced

2.安装ctags

yum install ctags

   下载linux-2.6.32.27内核源码并解压到~/arm/linux-2.6.32.27,进入该目录,生成索引文件

ctags -R *

3.安装插件(基本上就是解压到~/.vim目录):taglist/nerdcommenter/omnicppcomplete/echofunc/bufexplorer/winmanager

4.配置文件

" 关闭vi的键盘模式
set nocompatible
" 关闭备份
set nobackup
" 禁止生成临时文件
set noswapfile" 允许使用鼠标定位和选择
set mouse=a
set selection=exclusive
set selectmode=mouse,key" 显示行号
set number
" 禁止折行
set nowrap" 突出显示当前行
"set cursorline cursorcolumn" 切换文件时自动保存当前改动文件
set autowrite" 设置状态栏显示的内容
"set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")}
" 设置总是显示状态栏
"set laststatus=2" 光标移动到顶部和底部时保持3行距离
set scrolloff=3" 检测文件类型
filetype on
filetype plugin on" 设置编码
set encoding=utf-8
set termencoding=utf-8
set fileencodings=ucs-bom,utf-8,gbk,gb2312,cp936
set fileencoding=utf-8" 设置语言
set langmenu=zh_CN.UTF-8
set helplang=cn" 设置tab
set noexpandtab  " 不将tab扩展成空格
set tabstop=2    " 一个tab显示出来是多少个空格
set shiftwidth=2 " 每一级缩进多少个空格
set smarttab     " 根据文件中其他地方的缩进空格个数来确定一个tab是多少个空格" 设置缩进
set nocindent     " 关闭cindent缩进方式
"set cindent       " 开启C/C++语言的缩进方式
"set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s " 设置C/C++语言的具体缩进方式
set noautoindent  " 关闭autoindent缩进方式
set nosmartindent " 关闭smartindent缩进方式if has("autocmd")filetype plugin indent onautocmd FileType text setlocal textwidth=78autocmd FileType text set nocindentautocmd FileType html set formatoptions+=tlautocmd FileType css set smartindentautocmd FileType c,cpp,slang,esqlc set cindent
endif" 语法高亮
syntax enable
syntax on" 设置配色
colorscheme desert
"colorscheme darkblue
"colorscheme peachpuff" 搜索忽略大小写
set ignorecase
" 如果搜索模式包含大写字母则忽略'ignorecase'选项
set smartcase
" 搜索逐字符高亮
set hlsearch
set incsearch" 高亮显示匹配的括号
set showmatch
" 匹配括号高亮的时间(单位是十分之一秒)
set matchtime=1" --ctags settings--
map <F12> :!ctags -R --c++-kinds=+p --fields=+ialS --extra=+q .<CR><CR> :TlistUpdate<CR>
imap <F12> <ESC>:!ctags -R -c++kinds=+p --fields=+ialS --extra=+q .<CR><CR> :TlistUpdate<CR>
set tags=tags
set tags+=~/arm/linux-2.6.32.27/tags " add the linux kernel source's tags file
set tags+=./tags " add current directory's generated tags file" --OmniCppComplete settings--
imap<F3> <C-X><C-O>
set completeopt=menu,menuone   " 关闭智能补全时的预览窗口
let OmniCpp_MayCompleteDot=1   " autocomplete with .
let OmniCpp_MayCompleteArrow=1 " autocomplete with ->
let OmniCpp_MayCompleteScope=1 " autocomplete with ::
let OmniCpp_SelectFirstItem=2  " select first item, but don't insert
let OmniCpp_NamespaceSearch=2  " search namespaces in this and included files
let OmniCpp_ShowPrototypeInAbbr=1 " show function prototype in popup window
let OmniCpp_GlobalScopeSearch=1 " enable the global scope search
let OmniCpp_DisplayMode=1       " class scope completion mode: always show all members
"let OmniCpp_DefaultNamespaces=["std"]
let OmniCpp_ShowScopeInAbbr=1   " show scope in abbreviation and remove the last column
let OmniCpp_ShowAccess=1" --Taglist settings--
let Tlist_Ctags_Cmd='ctags'
let Tlist_Use_Right_Window=1
let Tlist_Show_One_File=0        " 允许同时显示多个文件的函数列表
let Tlist_File_Fold_Auto_Close=1 " 非当前文件,函数列表折叠隐藏
let Tlist_Exit_OnlyWindow=1      " 当Taglist是最后一个分割窗口时,自动退出vim
let Tlist_Process_File_Always=1  " 实时更新tags
let Tlist_Inc_Winwidth=0
let Tlist_WinWidth=40
"nmap tl :Tlist<CR>" --BufExplorer settings--
let g:bufExplorerDefaultHelp=0      " Do not show default help.
let g:bufExplorerShowRelativePath=1 " Show relative paths.
let g:bufExplorerSortBy='mru'       " Sort by most recently used." --WinManager setting--
let g:winManagerWindowLayout='BufExplorer|FileExplorer' " 设置我们要管理的插件
let g:persistentBehaviour=0 " 如果所有编辑文件都关闭了,退出vi
let g:winManagerWidth=30
nmap wm :TlistToggle<CR> :WMToggle<CR>" --QuickFix settings--
"map <F7> :make<CR> :copen<CR>
"map <F8> :cp<CR>
"map <F9> :cn<CR>
"imap <F7> <ESC>:make<CR> :copen<CR>
"imap <F8> <ESC>:cp<CR>
"imap <F9> <ESC>:cn<CR>" --Fold settings--
function! ToggleFold()if foldlevel('.')==0normal! lelseif foldclosed('.')<0. foldclose!else. foldopen!endifendif" clear status lineecho
endfunctionnoremap <space> :call ToggleFold()<CR>function FoldBrace()if getline(v:lnum+1)[0]=='{'return 1endifif getline(v:lnum)=~'{'return 1endifif getline(v:lnum)[0]=~'}'return '<1'endifreturn -1
endfunctionif has("autocmd")autocmd BufReadPost *.h,*.hh,*.c,*.ec,*.cpp,*.hpp,*.ecpp,*.pc set foldexpr=FoldBrace()autocmd BufReadPost *.h,*.hh,*.c,*.ec,*.cpp,*.hpp,*.ecpp,*.pc set foldmethod=exprautocmd BufReadPost *.h,*.hh,*.c,*.ec,*.cpp,*.hpp,*.ecpp,*.pc set foldenable
endif" --Terminal color settings--
hi Folded term=standout cterm=bold ctermfg=DarkGreen ctermbg=NONE
hi IncSearch term=bold ctermfg=red ctermbg=black
hi Search term=bold ctermfg=red ctermbg=black

 

转载于:https://www.cnblogs.com/codingthings/p/4698895.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/358440.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

端到端测试_端到端测试的滥用–测试技术2

端到端测试我的上一个博客是有关测试代码方法的一系列博客中的第一篇&#xff0c;概述了使用一种非常常见的模式从数据库检索地址的简单方案&#xff1a; …并描述了一种非常通用的测试技术&#xff1a; 不编写测试 &#xff0c; 而是手动进行所有操作。 今天的博客涵盖了另一…

vue全家桶指的是哪些?

vue全家桶&#xff1a; vue&#xff08;整体架构&#xff09;  vuex&#xff08;状态管理&#xff09;  vue-router&#xff08;路由&#xff09;  vue_resource || axios&#xff08;ajax请求&#xff09;  mint-UI(移动端UI框架库) || antd-vue(PC端UI框架库)

Metasploit 之生成木马(msfvenom)

msfvenom参数 相关参数介绍 -p, --payload <payload> 指定需要使用的payload(攻击荷载) -l, --list [module_type] 列出指定模块的所有可用资源,模块类型包括: payloads, encoders, nops, all -n, --nopsled <length> 为payload预先指定一个NOP滑动长度 -f, --for…

KVO 和 KVC 的区别?

KVO 和 KVC 的区别&#xff1f; key value coding ,key value observer KVC 是 路径访问的规范 KVO 观察某个变量的变化过程 它提供一种机制&#xff0c;当指定的对象的属性被修改后&#xff0c;则对象就会接受到通知。简单的说就是每次指定的被观察的对象的属性被修改…

react全家桶指的是哪些?

react全家桶&#xff1a; react&#xff08;整体架构&#xff09;  redux || mobx&#xff08;状态管理&#xff09;  react-router&#xff08;路由&#xff09;  axios&#xff08;ajax请求&#xff09;  antd || react-material || antd-model(UI框架库)

将Redis集成到您的Spring项目中

本文展示了如何通过注释配置将Redis缓存集成到您的spring项目中。 我们将从Gradle配置开始。 我们将使用jedis驱动程序。 group com.gkatzioura.spring version 1.0-SNAPSHOTapply plugin: java apply plugin: eclipse apply plugin: idea apply plugin: spring-bootbuildscr…

自学前端的误区和痛点解决办法

网上有很多自学的方案路线&#xff0c;还有一些知道&#xff1b;但是我感觉他们很多人都是没有真实学习过的&#xff0c;很多人说的那些路线&#xff0c;真的是扯淡&#xff1b;肯定不是自己通过自学后的感悟&#xff0c;他们所谓的路线可能是结合培训班大纲和知乎的一些答案组…

指纹识别工具(CMSeek)

你喜欢上别人挺好的啊&#xff0c;不然我总觉得我们还有可能。。。 ---- 网易云热评 介绍&#xff1a;一款扫描CMS相关信息的软件&#xff0c;该软件可进行170多个CMS的基本检测&#xff0c;可检测Drupal版本信息&#xff0c;可扫描多个站点 下载地址&#xff08;软件作者&…

kafka监控工具kafkaOffsetMoniter的使用

简介 KafkaOffsetMonitor是由Kafka开源社区提供的一款Web管理界面&#xff0c;用来实时监控Kafka的Consumer以及Partition中的Offset&#xff0c;可以在web界面直观的看到每个Partition的Message的增长速度&#xff0c;是否消费&#xff0c;是否阻塞等。 使用 如果不想编译&…

前端开发攻城狮必须知道的开发环境和插件

前端开发&#xff0c;做到后面&#xff0c;是可以走很多方向的&#xff1b;但是要保证后期的平滑过度&#xff0c;前期还是要把一些必须的知识搞扎实的&#xff1b;下面是我根据自己学习的感悟&#xff0c;写的一些东西&#xff1b;一个网站的流程,由前端工程师 使用 HTMLCSSJa…

hibernate示例_通过示例Hibernate–第1部分(删除孤儿)

hibernate示例所以我想做一系列的冬眠例子&#xff0c;展示冬眠的各种特征。 在第一部分中&#xff0c;我想展示有关删除孤儿功能及其在故事情节中的使用方式。 因此&#xff0c;让我们开始:) 先决条件 &#xff1a; 为了尝试以下示例&#xff0c;您将需要以下提到的JAR文件&…

docker更换国内镜像源

国内下载docker镜像大部分都比较慢&#xff0c;下面给大家介绍2个镜像源。 一、阿里云的docker镜像源 注册一个阿里云用户,访问 https://cr.console.aliyun.com/#/accelerator 获取专属Docker加速器地址 使用的时候修改/etc/docker/daemon.json文件就可以了&#xff0c;修改保…

【APICloud系列|22】关于苹果开发者账号续费的总结

以前用APICloud开发的一款App应用,苹果开发者账号一般需要续费,按年收费,个人或者公司$99/年,企业$199年。里面涉及到的邓白氏编码,开通,证书,上架在这里不做讨论,需要的话可以看我以前的帖子。 使用APPuploader申请ios开发证书及ios发布证书教程 上架ios应用到苹果应用…

以编程方式衡量分配

我从Heinz Kabutz撰写的Java专家通讯中获得了这个技巧。 &#xff08;对于所有想要了解JDK内容的Java开发人员来说&#xff0c;这是绝对必要的&#xff01;&#xff09; 特别是对于编写低延迟代码但对于普通Java代码的开发人员来说&#xff0c;分配是您真正要避免的事情。 有关…

(转)搞定DC/DC电源转换方案设计,必看金律十一条

[导读] 搞嵌入式的工程师们往往把单片机、ARM、DSP、FPGA搞的得心应手&#xff0c;而一旦进行系统设计&#xff0c;到了给电源系统供电&#xff0c;虽然也能让其精心设计的程序运行起来&#xff0c;但对于新手来说&#xff0c;有时可能效率低下&#xff0c;往往还有供电电流不足…

ThinkPHP 5.0.x、5.1.x、5.2.x 全版本远程命令执行漏洞

ThinkPHP 5.0.x、5.1.x、5.2.x 全版本远程代码执行漏洞 漏洞概述: ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架。借鉴Struts框架的Action对象&#xff0c;同时也使用面向对象的开发结构和MVC模式。1月11日&#xff0c;ThinkPHP官方发布新版本5.0.24&#xff0c…

CSDN如何上传视频?

最近想在CSDN上面上传视频&#xff0c;发现找不到入口&#xff0c;包含APP和PC端的博客&#xff0c;无奈之下只能咨询客服&#xff0c; 这个是需要提前申请讲师资格&#xff0c;需要3年以上相关经验。 发布纯IT类视频&#xff0c;先申请讲师&#xff0c;讲师申请 按照提示信息…

读《数学之美》第四章 谈谈分词

中文分词其实有点像古代的句读&#xff08;dou&#xff09;&#xff0c;韩愈的《师说》中就有&#xff1a;“彼童子之师&#xff0c;授之书而习其句读者也”。古人文章是没有标点符号的&#xff0c;行文一气呵成。如果不懂离经断句&#xff0c;就很难理解古文的意思。从某种程度…

【APICloud系列|17】百度开发者平台为了帮助开发者积极开展APP隐私合规风险排查工作, 准确高效的识别违规风险

前段时间开发了一款APP,最近有时间看看了一下自己的邮件。 发现一条比较有意思的。 申请入口 为什么会受到这个邮件呢,因为我安卓上架了华为应用商店、百度手机开放平台,小米应用商店,阿里应用分发平台、腾讯应用宝,360这个不谈,一个IOS的苹果应用商店。 这个只是针对那…