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= " 检测文件类型
filetype on
filetype plugin on " 设置编码
set encoding=utf-
set termencoding=utf-
set fileencodings=ucs-bom,utf-,gbk,gb2312,cp936
set fileencoding=utf- " 设置语言
set langmenu=zh_CN.UTF-
set helplang=cn " 设置tab
set noexpandtab " 不将tab扩展成空格
set tabstop= " 一个tab显示出来是多少个空格
set shiftwidth= " 每一级缩进多少个空格
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 on autocmd FileType text setlocal textwidth=
autocmd FileType text set nocindent
autocmd FileType html set formatoptions+=tl
autocmd FileType css set smartindent
autocmd 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= " --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= " autocomplete with .
let OmniCpp_MayCompleteArrow= " autocomplete with ->
let OmniCpp_MayCompleteScope= " autocomplete with ::
let OmniCpp_SelectFirstItem= " select first item, but don't insert
let OmniCpp_NamespaceSearch= " search namespaces in this and included files
let OmniCpp_ShowPrototypeInAbbr= " show function prototype in popup window
let OmniCpp_GlobalScopeSearch= " enable the global scope search
let OmniCpp_DisplayMode= " class scope completion mode: always show all members
"let OmniCpp_DefaultNamespaces=["std"]
let OmniCpp_ShowScopeInAbbr= " show scope in abbreviation and remove the last column
let OmniCpp_ShowAccess= " --Taglist settings--
let Tlist_Ctags_Cmd='ctags'
let Tlist_Use_Right_Window=
let Tlist_Show_One_File= " 允许同时显示多个文件的函数列表
let Tlist_File_Fold_Auto_Close= " 非当前文件,函数列表折叠隐藏
let Tlist_Exit_OnlyWindow= " 当Taglist是最后一个分割窗口时,自动退出vim
let Tlist_Process_File_Always= " 实时更新tags
let Tlist_Inc_Winwidth=
let Tlist_WinWidth=
"nmap tl :Tlist<CR> " --BufExplorer settings--
let g:bufExplorerDefaultHelp= " Do not show default help.
let g:bufExplorerShowRelativePath= " Show relative paths.
let g:bufExplorerSortBy='mru' " Sort by most recently used. " --WinManager setting--
let g:winManagerWindowLayout='BufExplorer|FileExplorer' " 设置我们要管理的插件
let g:persistentBehaviour= " 如果所有编辑文件都关闭了,退出vi
let g:winManagerWidth=
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('.')==
normal! l
else
if foldclosed('.')<
. foldclose!
else
. foldopen!
endif
endif
" clear status line
echo
endfunction noremap <space> :call ToggleFold()<CR> function FoldBrace()
if getline(v:lnum+)[]=='{'
return
endif
if getline(v:lnum)=~'{'
return
endif
if getline(v:lnum)[]=~'}'
return '<1'
endif
return -
endfunction if 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=expr
autocmd 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

CentOS6 下Vim安装和配置的更多相关文章

  1. 阿里云centOS6 下python安装及配置、pip安装及配置、ipython安装及配置

    我是在阿里云服务器上进行的python环境搭建,阿里云服务器会自带python但是版本低,所以打算自己安装一个,期间遇到各种问题,而且百度根本不够用无奈上的外网很快解决了.在此分享一下. 一.pyth ...

  2. CentOs6.5中安装和配置vsftp简明

    这篇文章主要介绍了CentOs6.5中安装和配置vsftp简明教程,需要的朋友可以参考下     一.vsftp安装篇 复制代码代码如下: # 安装vsftpdyum -y install vsftp ...

  3. CentOs6.5中安装和配置vsftp简明教程[转]

    CentOs6.5中安装和配置vsftp简明教程 林涛 发表于:2017-3-17 10:10 分类:WebServer 标签: 101次 一.vsftp安装篇 复制代码代码如下: # 安装vsftp ...

  4. [moka同学摘录]在Centos 6.5下成功安装和配置了vim7.4

    来源:https://my.oschina.net/gzyh/blog/266097 资源下载地址: 链接:http://pan.baidu.com/s/1kVuaV5P 密码:xkq9   摘要: ...

  5. CentOS6下编译安装Python2.7.6方法

    关于在CentOS6下编译安装Python2.7.6的方法非常的多了,小编以前也介绍过相关的文章了,下面一聚教程小编再来为各位介绍一下吧,希望文章能帮助到各位.   CentOS下面Python在升级 ...

  6. centos6下的安装navicat premium

    centos6下的安装navicat premium CentOS6下做开发的时候,数据库客户端是一个必须要有的工具,因为经常要和数据库打交道.由于数据库的类型多样,有MySQL.Oracle.Pos ...

  7. centos6下yum安装mariadb数据库的解决方法

    在centos6下Yum安装mariadb数据库时老是提示无法正常安装,看错误日志才发现,是没有mariadb release源文件在/etc/yum.repos.d/中,为此,我特意在新建文件: # ...

  8. [转]:Ubuntu 下Apache安装和配置

    [转]:Ubuntu 下Apache安装和配置_服务器应用_Linux公社-Linux系统门户网站  https://www.linuxidc.com/Linux/2013-06/85827.htm ...

  9. libCURL开源库在VS2010环境下编译安装,配置详解

    libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...

随机推荐

  1. erl_0011 erlang 定时器相关

    转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=20764167&id=4470124 3.1  The time ...

  2. 【英语】Bingo口语笔记(33) - 面部器官系列

    to play by ear Play就是玩的意思.可是,play by ear的意思并不是“玩耳朵”.这个词汇的来源和音乐有关系.它原来指的是那些会弹钢琴或某种乐器,但是却不会看五线谱的人.每当他们 ...

  3. 2015-10-11 Sunday 晴 ARM学习

    基础的知识看得差不多了,linux系统相关的,最主要是c语言基础知道,还有linux系统编程,网络编程socket等相关的.这些内容最最基础的看完了,接下来我在考虑看什么呢?是看ARM以及驱动编程系列 ...

  4. 通过github提升自己-测试反馈、持续精进

    如果我们仅仅是将自己的代码commit.push到github上,那么对于我们的技术不会有太多的提升.我们所做的仅仅只是将github当成了我们的网盘. 我们每发布一个版本的时候,是不是也就意味着给用 ...

  5. 如何定义 Java 中的方法

    所谓方法,就是用来解决一类问题的代码的有序组合,是一个功能模块. 一般情况下,定义一个方法的语法是: 其中: 1. 访问修饰符:方法允许被访问的权限范围, 可以是 public.protected.p ...

  6. 嵌入式 RTSP流媒体播放器实现

    最近需要做一个RTSP流媒体播放器,研究了一下,封装了一个RTSP播放类CRTSPPlayer,解码库采用ffmpeg.由于需求比较简单,时间也有限,目前只实现了播放.停止.暂停几个基本的接口.下面是 ...

  7. 开发者必须知道的HTML5十五大新特性

    HTML5想必大家都很熟悉了,因为太多的媒体在讨论这一技术.然而,你能准确地说出HTML5带来了哪些新特性吗?本文总结了HTML5带来的15项你必须知道的新特性. 一起来看下: 1.新的文档类型  ( ...

  8. DBus学习笔记

    摘要:DBus作为一个轻量级的IPC被越来越多的平台接受,在MeeGo中DBus也是主要的进程间通信方式,这个笔记将从基本概念开始记录笔者学习DBus的过程 [1] DBus学习笔记一:DBus学习的 ...

  9. strus2中获取表单数据 两种方式 属性驱动 和模型驱动

    strus2中获取表单数据 两种方式 属性驱动 和模型驱动 属性驱动 /** * 当前请求的action在栈顶,ss是栈顶的元素,所以可以利用setValue方法赋值 * 如果一个属性在对象栈,在页面 ...

  10. Yii入门,登录

    验证和授权在页面需要限制访问时用到.验证就是确认某人就是他所声称的那个人.通常涉及到用户名和密码,但也包含其他方式,例如智能卡,指纹等.授权是在验证用户后,查明他是否被允许管理指定的资源.通常判断他是 ...