如何在 Ubuntu 下正確顯示 vim-airline 的箭頭符號?
之前是在windows下編程,用的也是gvim7.4,相信用過vim並且對界面有強迫症的同學都折騰過airline或者powerline,我在windows下是用的win7系統自帶的consolas,不需要patch就有很好的symbol箭頭,但是轉戰ubuntu以後,使用了打好補丁了的Ubuntu Mono,感覺這個箭頭真的小了一號啊,在狀態欄和buffer上顯示真的會比較丑,如圖:
而且在windows下的表現很好的字體,移植到ubuntu下以後就發現和狀態欄會出現一點錯位,如圖:有沒有大牛能支支招或者給一個ubuntu下可以顯示得比較舒服的字體?我的系統是ubuntu 14.04
如果要顯示正確的話,「黑三角」必須嚴格匹配行高,能做到的基本上只有在設計時就加入 Powerline 支持的,比如 Iosevka。後期打補丁很容易造成行高不匹配。而且基本上只能兼容默認行高,你調整行高之後就會失效。
我在 Ubuntu 14.04 上使用從 Lokaltog/powerline-fonts · GitHub 下載的字體,沒有出現題主的問題。題主不妨一試。注意,不要在 vimrc 中添加自定義的相關符號,只需要使用
let g:airline_powerline_fonts = 1
啟用 airline 即可。
首先你要安裝了補丁字體 powerline/fonts · GitHub
克隆之 然後運行./install.sh
然後重新設定字體(for gvim)比如 終端也要相應設定(for vim)set guifont=DejaVu Sans Mono for Powerline 11 "config font for gvim 」for gvim你需要 用vim 打開 ./vim-airline/doc/airline.txt 目錄中的airline.txt 找到下面的一些語句 將其複製到.vimrc中就可以了
例如 let g:airline_left_sep = "" 這裡" "" 在這裡顯示不出來 如果正確安裝了補丁字體會是實心的箭頭符號 有一個比較大的實心箭頭 和一個比較小的實心箭頭 選大的所在的那條語句複製到.vimrc中就可以正確契合的顯示箭頭符號了當然你要事先在.vimrc中寫上
let g:airline_powerline_fonts=1 if !exists("g:airline_symbols") let g:airline_symbols = {}endif這樣就好
注意;
用gedit等 複製可能不生效 用vim複製粘貼時可能報出關於fenc的警告 這時要輸入 :set fenc=置空fenc 就可以了
附圖
1. Mac下iTerm2如下配置:
2. .vimrc中添加:let g:airline_powerline_fonts = 1具體做法請參考powerline的文檔,記得linux是由兩種方式的一種是fontconfig,一種是patched font,隨你喜歡,最後記得像 @王備 的答案中說的一樣,在你的vimrc文件中加上
let g:airline_powerline_fonts = 1
至於丑的問題,可以換一種字體啊,反正我用patched的Source Code Pro顯示效果很好
用這個字體試一試:Cousine Powerline
我從powerline給的做好的字體(也在hithub上)沒出現這問題
看看有沒有設置linespace吧 請嘗試set linespace=0
https://powerline.readthedocs.io/en/latest/installation/linux.html#font-installation
試試這個?http://blog.feng.zone/217.html
推薦閱讀:
※為什麼比起 Emacs,更多人使用 vim?
※vim8發布有一年了,有沒有基於vim8新特性開發的黑科技插件?
※Linux裡面的vim做什麼用的?我在terminal裡面輸入vi進入vi編輯器,可是不知道這個編輯器能實現什麼功能?
※如何讓vim像網頁一樣按Ctrl+放大字型大小?
※在xshell等終端上看c++代碼用哪些插件更加方便?