Linux中设置vimrc的statusline
一些关于statusline的设置实例如下:
set statusline=%f%m%r%h\ [%L]\ [%{&ff}]\ %y%=[%p%%]\ [line:%05l,col:%02v]
set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}][TYPE=%Y][ASCII=%03.3b][HEX=%02.2B]%=[POS=%04l,%04v][%p%%][LEN=%L]
set statusline=%F%m%r%h%w\ %{&ff}\ %Y\ [0x%02.2B]\ %=l/%L,%v\ %p%%
%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P
你可能还应该在合适的位置使用%<强制截断,以适应狭窄的窗口:
set statusline=%F%m%r%h%w%<\ %{&ff}\ %Y\ [0x%02.2B]\ %=l/%L,%v\ %p%%
vimrc中关于statusline的设置选项:
可以使用 %=,在%=左边的左对齐,在%=右边的右对齐。
"statusline
set statusline=
set statusline+=%7*\[%n] "buffernr
set statusline+=%1*\ %<%F\ "文件路径
set statusline+=%2*\ %y\ "文件类型
set statusline+=%3*\ %{''.(&fenc!=''?&fenc:&enc).''} "编码1
set statusline+=%3*\ %{(&bomb?\",BOM\":\"\")}\ "编码2
set statusline+=%4*\ %{&ff}\ "文件系统(dos/unix..)
set statusline+=%5*\ %{&spelllang}\%{HighlightSearch()}\ "语言 & 是否高亮,H表示高亮?
set statusline+=%8*\ %=\ row:%l/%L\ (%03p%%)\ "光标所在行号/总行数 (百分比)
set statusline+=%9*\ col:%03c\ "光标所在列
set statusline+=%0*\ \ %m%r%w\ %P\ \ "Modified? Read only? Top/bottom
set statusline=%F%=[FORMAT=%{&ff}][TYPE=%Y][TTL=%L][POS=%l,%v][%p%%]常用设置
set statusline=%F\ %=[POS=%l,%v][%p%%]最常用设置
set laststatus=2
function! HighlightSearch()
if &hls
return 'H'
else
return ''
endif
endfunction
hi User1 ctermfg=white ctermbg=darkred
hi User2 ctermfg=blue ctermbg=58
hi User3 ctermfg=white ctermbg=100
hi User4 ctermfg=darkred ctermbg=95
hi User5 ctermfg=darkred ctermbg=77
hi User7 ctermfg=darkred ctermbg=blue cterm=bold
hi User8 ctermfg=231 ctermbg=blue
"hi User9 ctermfg=#ffffff ctermbg=#810085
hi User0 ctermfg=yellow ctermbg=138

浙公网安备 33010602011771号