配置vim时我原本安装了vim-powerline插件,后来发现了一个更好的插件可以替代它:vim-airline,它自带buffer功能可以省去minibufexpl.vim了,
1. 安装airline
- 手动安装:github地址:https://github.com/vim-airline/vim-airline.git
- 使用Vundle安装:在vimrc配置的Vundle插件列表加入 Plugin ‘bling/vim-airline’ 并在Vim 执行 PluginInstall。
2. 配置字体
安装这个插件主要是这个地方比较坑爹,各种百度后发现了最终字体解决方案
1. 安装字体
- Linux: 下载 powerline fonts,并按指示安装。
- windows:下载里面的四种字体并安装 powerline fonts
2. 注意:
安装过字体需要用vim 打开 ./vim-airline/doc/airline.txt 目录中的airline.txt 找到下面的一些语句 将其复制到.vimrc中就可以了
例如 let g:airline_left_sep = ‘’ 这里’ ‘’ 在这里显示不出来 如果正确安装了补丁字体会是实心的箭头符号 有一个比较大的实心箭头 和一个比较小的实心箭头 选大的所在的那条语句复制到.vimrc中就可以正确契合的显示箭头符号了如果仍然无法正常显示,可能是编码设置的问题,我的编码设置为:
"----------------------------------------------------------------
"编码设置
"----------------------------------------------------------------
"Vim 在与屏幕/键盘交互时使用的编码(取决于实际的终端的设定)
set encoding=utf-8
set langmenu=zh_CN.UTF-8
" 设置打开文件的编码格式
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
set fileencoding=utf-8
"解决菜单乱码
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
"解决consle输出乱码
set termencoding = cp936
"设置中文提示
language messages zh_CN.utf-8
"设置中文帮助
set helplang=cn
"设置为双字宽显示,否则无法完整显示如:☆
set ambiwidth=double
3. 配置airline
以下是我的配置:
"--------------------------------------------------------------------------
"vim-airline
"--------------------------------------------------------------------------
Plugin 'vim-airline'
let g:airline_theme="molokai"
"这个是安装字体后 必须设置此项"
let g:airline_powerline_fonts = 1
"打开tabline功能,方便查看Buffer和切换,省去了minibufexpl插件
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#buffer_nr_show = 1
"设置切换Buffer快捷键"
nnoremap <C-tab> :bn<CR>
nnoremap <C-s-tab> :bp<CR>
" 关闭状态显示空白符号计数
let g:airline#extensions#whitespace#enabled = 0
let g:airline#extensions#whitespace#symbol = '!'
" 设置consolas字体"前面已经设置过
"set guifont=Consolas\ for\ Powerline\ FixedD:h11
if !exists('g:airline_symbols')
let g:airline_symbols = {}
endif
" old vim-powerline symbols
let g:airline_left_sep = '⮀'
let g:airline_left_alt_sep = '⮁'
let g:airline_right_sep = '⮂'
let g:airline_right_alt_sep = '⮃'
let g:airline_symbols.branch = '⭠'
let g:airline_symbols.readonly = '⭤'