1. 程式人生 > >VIM 的狀態行(statusline)設定

VIM 的狀態行(statusline)設定

設定

研究了一下 VIM 的狀態行設定,並嘗試了幾個外掛(Neat Status Linevim-airline)。這些外掛顯示效果確實比較炫酷,但是配置過程稍顯麻煩,比如: vim-airline 需要另外安裝字型才能顯示漂亮的箭頭字元。但該字型顯示中文時,不如預設的“宋體”好看。另外,這些外掛預設不顯示“檔案編碼”,而“檔案編碼”恰好又是我需要的。我是簡單、實用主義者,對於 VIM 狀態行設定,就放棄使用外掛了。

下面的狀態行配置足以滿足我的日常需要:

" 顯示狀態行當前設定
set statusline

" 設定狀態行顯示常用資訊
" %F 完整檔案路徑名
" %m 當前緩衝被修改標記
" %m 當前緩衝只讀標記
" %h 幫助緩衝標記
" %w 預覽緩衝標記
" %Y 檔案型別
" %b ASCII值
" %B 十六進位制值
" %l 行數
" %v 列數
" %p 當前行數佔總行數的的百分比
" %L 總行數
" %{...} 評估表示式的值,並用值代替
" %{"[fenc=".(&fenc==""?&enc:&fenc).((exists("+bomb") && &bomb)?"+":"")."]"} 顯示檔案編碼
" %{&ff} 顯示檔案型別
set statusline=%F%m%r%h%w%=\ [ft=%Y
]\ %{\"[fenc=\".(&fenc==\"\"?&enc:&fenc).((exists(\"+bomb\")\ &&\ &bomb)?\"+\":\"\").\"]\"}\ [ff=%{&ff}]\ [asc=%03.3b]\ [hex=%02.2B]\ [pos=%04l,%04v][%p%%]\ [len=%L] " 設定 laststatus = 0 ,不顯式狀態行 " 設定 laststatus = 1 ,僅當視窗多於一個時,顯示狀態行 " 設定 laststatus = 2 ,總是顯式狀態行 set laststatus=2

參考:

VIM 的狀態行設定

VIM 的狀態行外掛