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 on

    autocmd FileType text setlocal textwidth=78
    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=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(‘.‘)==0
        normal! l
    else
        if foldclosed(‘.‘)<0
            . foldclose!
        else
            . foldopen!
        endif
    endif
    " clear status line
    echo
endfunction

noremap <space> :call ToggleFold()<CR>

function FoldBrace()
    if getline(v:lnum+1)[0]==‘{‘
        return 1
    endif
    if getline(v:lnum)=~‘{‘
        return 1
    endif
    if getline(v:lnum)[0]=~‘}‘
        return ‘<1‘
    endif
    return -1
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
时间: 2024-08-01 21:07:35

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

CentOS6.3下DNS安装与配置

1.下载并安装最新的bind包 yum install –y bind bind-chroot bind-utis 2.配置named.conf acl internals{ 127.0.0.0/8; 192.168.0.0/24; }; view "internal" { match-clients {internals; }; zone "youdomian.com" { type master; file "/etc/named/internals/

CentOS6下Nginx安装配置

本人虚拟机安装的CentOS6.9和CentOS7.4都是仅主机模式,为了尝试不同方式安装nginx,将CnetOS6.9的网络模式切换成桥接模式.一:桥接模式下安装Nginx(CentOS6.9)--查看系统是否有Nginx[[email protected] ~]# find -name nginx--卸载原有的Nginx[[email protected] ~]# yum remove nginx--建立yum库vim /etc/yum.repos.d/nginx.repo --安装yum

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

这篇文章主要介绍了CentOs6.5中安装和配置vsftp简明教程,需要的朋友可以参考下 一.vsftp安装篇 复制代码代码如下: # 安装vsftpdyum -y install vsftpd# 启动service vsftpd start# 开启启动chkconfig vsftpd on 二.vsftp相关命令之服务篇 复制代码代码如下: # 启动ftp服务service vsftpd start# 查看ftp服务状态service vsftpd status # 重启ftp服务servic

CentOS6下编译安装Python2.7.6方法

关于在CentOS6下编译安装Python2.7.6的方法非常的多了,小编以前也介绍过相关的文章了,下面一聚教程小编再来为各位介绍一下吧,希望文章能帮助到各位. CentOS下面Python在升级到2.7.6的时候,没有找到安装包直接安装,只能通过源代码编译的方式来安装Python 2.7.6版本.这篇是编译和安装Python2.7.6的过程记录. CentOS系统中安装了development tools.要编译安装Python,执行下面代码:  代码如下 复制代码 $ pushd /usr/

centos 7 下nagios 安装和配置

        centos 7 下nagios 安装和配置 一.yum -y install httpd gcc glibc glibc-common *gd* php php-mysql mysql mysql-server mysql-devel php-snmp net-snmp net-snmp-libs net-snmp-utils php-pdo perl-DBD-MySQL rrd-tool   perl-rrdtool             rrdtool-devel  ma

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

来源:https://my.oschina.net/gzyh/blog/266097 摘要: 利用vmware安装了centos 6.5,并在网友的资料帮助下成功安装并配置了vim 7.4. 在这儿记录一下输入的命令. 开始学习一下Linux知识,用vmware安装了一个centos系统,在windows下习惯用vim7.4,所以也想在centos  6.5上也安装这个编辑器,决定做了,就在网上找相关资料. 参照了:http://blog.chinaunix.net/uid-29550914-i

[转]Windows环境下尝试安装并配置PHP PEAR备忘

转自:http://wangye.org/blog/archives/266/ 什么是PEAR 来自百度百科:PEAR 是PHP扩展与应用库(the PHP Extension and Application Repository)的缩写.它是一个PHP扩展及应用的一个代码仓库,简单地说,PEAR之于PHP就像是CPAN(Comprehensive Perl Archive Network)之于Perl. 由此可见PEAR是PHP代码的仓库,在这里可以找到很多有用的代码,避免我们重复写一些功能,

Windows和Linux环境下Memcached安装与配置(转)

一.memcached安装配置 windows平台安装 1.memcached-1.2.6-win32-bin.zip下载地址: http://code.jellycan.com/memcached/,执行memcached.exe -d install 安装. 2.守护进程方式启动:memcached.exe -m 512 -d start-d为守护进程启动,不能指定端口 默认端口11211-m为指定内存大小 3.指定端口启动:memcached.exe –p 33000 -m 512可以启动

windows下手动安装和配置xamarin

安装xamarin xamarin官方给出了两种安装方式,自动安装和手动安装. 自动安装比较简单,到http://xamarin.com/download下载xamarininstaller.exe 运行后它会自动下载所需组件.过程还是比较简单的,下面重点说明一下手动安装和配置xamarin. 由于我的系统(win8.1 64位)在运行xamarininstaller.exe时老是报错,给xamarin的支持组发了个邮件,他们回复说还是手动安装吧,并把各个组件的下载链接发了过来.这段时间在网上查