作者:l季莫_339 | 来源:互联网 | 2023-05-18 09:59
准备vim#安装vim7.4yuminstall-yvim#更新vimyumupdate-yvimctags#安装ctagsyuminstall-yctagsgi
准备vim
#安装vim 7.4
yum install -y vim
#更新vim
yum update -y vim
#安装 ctags
yum install -y ctags
git
#安装git
#yum install -y git
自动提示
php 函数列表 下载
安装Vundle
安装
mkdir -p ~/.vim/bundle
git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
使用
:BundleList -列举出列表中(.vimrc中)配置的所有插件
:BundleInstall -安装列表中全部插件
:BundleInstall! -更新列表中全部插件
:BundleSearch foo -查找foo插件
:BundleSearch! foo -刷新foo插件缓存
:BundleClean -清除列表中没有的插件
:BundleClean! -清除列表中没有的插件
插件
安装
#随便打开一个文件
vim index.php
#查看插件列表
:BundleList
#安装插件
:BundleInstall
PHP自动提示文件
#把函数列表移动到插件目录
mv phpfunction.txt ~/.vim/bundle/phpfunction.txt
配置""""""""""""""""""""""""""""""""""""""""""""""""
" 插件管理
""""""""""""""""""""""""""""""""""""""""""""""""
""""""""""""""""""""""""""""""
" Vundle 插件
" :BundleList -列举出列表中(.vimrc中)配置的所有插件
" :BundleInstall -安装列表中全部插件
" :BundleInstall! -更新列表中全部插件
" :BundleSearch foo -查找foo插件
" :BundleSearch! foo -刷新foo插件缓存
" :BundleClean -清除列表中没有的插件
" :BundleClean! -清除列表中没有的插件
"""""""""""""""""""""""""""""""
set nocompatible " 这是必需的
filetype off " 这是必需的
" 你在此设置运行时路径
set rtp+=~/.vim/bundle/Vundle.vim
" vundle初始化
call vundle#begin()
" 这应该始终是第一个
Plugin 'gmarik/Vundle.vim'
"Plugin 'git://github.com/ilei/phpcheck-vim.git'
""""""""""""""""""""""""""""""
" 标签插件
" 常用命令 mx dmx m, m. m- m '] '[ [' ]' m/
" https://github.com/kshenoy/vim-signature
""""""""""""""""""""""""""""""
Plugin 'kshenoy/vim-signature'
"""""""""""""""""""""""""""""""
" 函数列表Bundle 'taglist.vim' 配置
" command yum install ctags
" command ctags -R | :set tags=/$DIR/tags | Ctrl+] Ctrl+t|man ctags
" Tlist
"""""""""""""""""""""""""""""""
Bundle 'taglist.vim'
let Tlist_Show_One_File=1 "只显示当前文件的tags
let Tlist_Winhljs-number">40
"设置taglist宽度 let Tlist_Exit_OnlyWindow=
1 "tagList窗口是最后一个窗口,则退出Vim let Tlist_Use_Right_Window=
1 "在Vim窗口右侧显示taglist窗口 """"""""""""""""""""""""""""""" 文件资源浏览器" :NERDTree 或者 f2""""""""""""""""""""""""""""""Bundle 'scrooloose/nerdtree'
let NERDTreeWinPos='left'
let NERDTreeWinSize=
30map
:NERDTreeToggle
""""""""""""""""""""""""""""""
" MiniBufExplorer 多文件编辑器
" :MBEbp :MBEbn :MBEdb [num] :MBEbd
""""""""""""""""""""""""""""""
Bundle 'fholgado/minibufexpl.vim'
let g:miniBufExplMapWindowNavVim = 1
let g:miniBufExplMapWindowNavArrows = 1
let g:miniBufExplMapCTabSwitchBufs = 1
let g:miniBufExplModSelTarget = 1
let g:miniBufExplMoreThanOne=0
map :MBEbp
map :MBEbn
call vundle#end() " required
""""""""""""""""""""""""""""""
" 插件结束
"""""""""""""""""""""""""""""""
set fileencodings=utf-8,gb2312,gbk,gb18030 "支持中文编码
set termencoding=utf-8
set fileformats=unix
set encoding=prc
""""""""""""""""""""""""""""""""""""""""
" Windows 兼容
"""""""""""""""""""""""""""""""""""""""
if has("win32")
set nocompatible
source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin
endif
" =======================================
" <<判断操作系统是 Windows 还是 Linux 和判断是终端还是 Gvim >>
" ========================================
" ----------------------------------------
" <判断操作系统是否是 Windows 还是 Linux >
" ----------------------------------------
let g:iswindows = 0
let g:islinux = 0
if(has("win32") || has("win64") || has("win95") || has("win16"))
let g:iswindows = 1
else
let g:islinux = 1
endif
" ------------------------------------------
" <判断是终端还是 Gvim >
" -------------------------------------------
if has("gui_running")
let g:isGUI = 1
else
let g:isGUI = 0
endif
if (g:iswindows && g:isGUI)
"解决菜单乱码
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
"解决consle输出乱码
language messages zh_CN.utf-8
endif
""""""""""""""""""""""""""""""
" Vim 7.4
" 行号相关begin
"""""""""""""""""""""""""
" 插入模式设置非相对行号
"""""""""""""""""""""""""
autocmd InsertEnter * :set norelativenumber
""""""""""""""""""""""""
" 命令模式设置相对行号
""""""""""""""""""""""""
autocmd InsertLeave * :set relativenumber
""""""""""""""""""""""""
" 初始化展示相对行号
""""""""""""""""""""""""
set number relativenumber
""""""""""""""""""""""""
" Ctrl+n 切换相对和绝对行号
""""""""""""""""""""""""
function! NumberToggle()
if(&relativenumber == 1)
set norelativenumber number
else
set relativenumber
endif
endfunc
nnoremap :call NumberToggle()
""""""""""""""""""""""""""""""""""
" 行号相关end
" 换行缩进设置begin
"""""""""""""""""""""""""""""
set smartindent "启用智能缩进方式
set autoindent "换行缩进内容同上
set tabstop=4 "Tab键的宽度为4个空格
set shifthljs-number">4 "Tab换行自动缩进4个空格
set expandtab "Tab转换为空格
set smarttab "一次backspace删除shitfwidth宽度
"set nowrap "设置不自动换行
set wrap "自动换行
"""""""""""""""""""""""""""""
" 搜索设置
""""""""""""""""""""""""""""
set hlsearch "高亮显示匹配内容
set incsearch "输入内容时开始查找
set ignorecase "搜索忽略大小写
""""""""""""""""""""""""""""
" 语法高亮
""""""""""""""""""""""""""""
syntax on
syntax enable
""""""""""""""""""""""""""""
" 智能补全
""""""""""""""""""""""""""""
set wildmenu "vim自身命令行模式智能补全
autocmd FileType php set omnifunc=phpcomplete#CompletePHP "对php文件自动补全
set dictionary+=~/.vim/bundle/phpfunction.txt
set complete-=k complete+=k
function! InsertTabWrapper()
let col=col('.')-1
if !col || getline('.')[col-1] !~ '\k'
return "\"
else
return "\"
endif
endfunction
inoremap =InsertTabWrapper()
""""""""""""""""""""""""""""
" 内容折叠
" http://blog.csdn.net/qq_27968607/article/details/60956584
""""""""""""""""""""""""""""
set foldmethod=marker
""""""""""""""""""""""""""""""
"" <<快捷键设置 >>
""""""""""""""""""""""""""""
"" Ctrl + K 插入模式下光标向上移动
"imap
"" Ctrl + J 插入模式下光标向下移动
"imap
"" Ctrl + H 插入模式下光标向左移动
"imap
"" Ctrl + L 插入模式下光标向右移动
"imap
"
""""""""""""""""""""""""""""
" 配色方案
"""""""""""""""""""""""""""
if has("gui_running")
colo solarized
else
colo desert
endif
"set nocp
set background=light
set guifOnt=YaHei\ Consolas\ Hybrid\ 12 "设置字体
set laststatus=2 "启用状态栏信息
"set cmd设置命令行高度为2,默认1
set ruler "显示光标当前位置
set cursorline "高亮显示当前行/列
"set cursorcolumn
"colorscheme molokai
"colorscheme solarized
"