在Mac OS中為命令列介面和VIM添加狀態提示欄的教程

來源:互聯網
上載者:User

   什麼是powerline

  如果你不是通過搜尋引擎搜到這篇文章的話,也許你還沒有聽說過powerline。而你又恰巧是個*UNIX黨,或者VIM黨的話,那麼強烈建議你瞭解並使用powerline。powerline是一個stateless status line,即一個全域狀態/提示欄。如果你成功為你的bash,Terminal,iTerm2,VIM配置上powerline的話,那麼效果將會是這樣的:

  Bash的提示符將會是這樣的:

  VIM的狀態列將會是這樣的:

  VIM的整體效果圖:

  相信看了以上幾個截圖後,powerline的功能也就不言而喻了。他提供了各個app各個環境下的狀態提示,極大的提高了工作效率

  開始Mac上安裝powerline

  首先我們需要下載安裝powerline。在正式安裝之前先囉嗦幾句powerline的代碼結構,github上的powerline項目下涵蓋了用於適配各種APP(bash,vim等)的代碼。因此,你完全可以在Mac任何一個地方下載該程式碼封裝,然後將不同的APP配置使用這個路徑,以Plugin形式載入。為了方便讀者選擇性安裝,本文對於不同的程式將分開給出安裝路徑和配置。

  先確定本機環境有一套版本大於等於2.7的Python的環境。如果沒有合適環境的話,可以通過homebrew安裝,這裡不多做贅述。

  代碼如下:

  shell> python -V

  Python 2.7.9

  然後通過pip安裝powerline:

  代碼如下:

  shell> pip install powerline-status[code]

安裝完成後通過pip show powerline-status查看powerline所處的具體路徑。注意:這個路徑很重要,會用在之後的配置環節:

[code]shell> pip show powerline-status

  Name: powerline-status

  Version: 2.0

  Location: /Library/Python/2.7/site-packages

  Requires:

  配置Bash使用powerline

  配置方法很簡單,只需要在Bash設定檔(例如:/etc/bashrc,~/.bashrc,~/.bash_profile)中增加一行調用安裝路徑下的bindings/bash/powerline.sh即可。這樣每次調用產生新的Bash視窗時,都會自動執行powerline.sh檔案中的內容。下面以~/.bash_profile為例:

  代碼如下:

  shell> echo << EOF >> ~/.bash_profile

  . /Library/Python/2.7/site-packages/powerline/bindings/bash/powerline.sh

  EOF

  shell> . /Library/Python/2.7/site-packages/powerline/bindings/bash/powerline.sh

  注意:根據python安裝方式的不同,你的powerline所在路徑也可能不同。如果你是通過python官網或者apple store通過安裝工具安裝的python,那麼你的powerline安裝路徑就是/Library/Python/2.7/site-packages/powerline/。如果你是通過brew install python的話,那麼你的powerline路徑可能會有不同。請根據實際情況修改上面的命令。

  Teriminal字型配置

  執行完上面兩步後,不出意外powerline就已經開始工作了。但是你會發現Bash提示符會和下圖一樣是一些非常噁心的符號。

  出現這樣情況的原因是powerline為了美觀自己造了一些符號,而這些符號不在Unicode字型檔內(如果你不知道Unicode字型檔是什麼的話可以看下博主以前的相關介紹)。所以想要powerline正常顯示的話,需要安裝特殊處理過的字型。好在有一位熱心人的協助,他把大部分的程式猿常用的等寬字型都打上了powerline patch使得我們的這部配置將異常簡單。首先我們從github上下載並安裝字型:

  代碼如下:

  shell> git clone https://github.com/powerline/fonts.git

  shell> cd fonts

  shell> ./install.sh

  安裝完成後我們就可以在iTerm2或者Terminal的字型選項裡看到並選擇多個xxx for powerline的字型了。*注意:對於ASCII fonts和non-ASCII fonts都需要選擇for powerline的字型。如下圖:

  VIM相關配置

  這部分我們將介紹如何為VIM配置powerline。首先你需要確保你的vim編譯時間開啟了python支援。如果通過python --version|grep +python沒有結果的話,那麼你需要通過brew install vim --with-python --with-ruby --with-perl重新編譯安裝vim,或者使用brew install macvim --env-std --override-system-vim安裝macvim。

  然後,你只需要在~/.vimrc中加上以下部分,VIM就能夠正常載入powerline功能了:

  注意:其中set rtp+=/Library/Python/2.7/site-packages/powerline/bindings/vim和上文一樣需要按照自己的實際情況調整。

  代碼如下:

  set rtp+=/Library/Python/2.7/site-packages/powerline/bindings/vim

  " These lines setup the environment to show graphics and colors correctly.

  set nocompatible

  set t_Co=256

  let g:minBufExplForceSyntaxEnable = 1

  python from powerline.vim import setup as powerline_setup

  python powerline_setup()

  python del powerline_setup

  if ! has('gui_running')

  set ttimeoutlen=10

  augroup FastEscape

  autocmd!

  au InsertEnter * set timeoutlen=0

  au InsertLeave * set timeoutlen=1000

  augroup END

  endif

  set laststatus=2 " Always display the statusline in all windows

  set guifont=Inconsolata for Powerline:h14

  set noshowmode " Hide the default mode text (e.g. -- INSERT -- below the statusline)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.