More than 3 years have passed since last update.

Powerlineが統一されたようですね.

過去の情報が残っていたり,統一後の情報が少なかったりで苦労したので,行ったことを残します.

いろいろ試しすぎて記憶が錯綜していたり,集めることができた情報のみで記載していくので,あくまで参考でよろしくお願いします.

今回はMacを対象にPowerlineを導入します.

Powerlineのバージョン2.4を対象とします。

zsh,vim,tmuxのインストールとともにPowerlineの設定をします.

Homebrewを導入済みとします.

本家ドキュメントを中心にやっていきます.


環境


導入するPC環境


  • OS X El Capitan

  • iTerm 2 Build 2.1.4

  • bash 5.2

  • Homebrew 0.9.9

  • git 2.8.1

iTerm上で作業していきます。

pyenvとかが入ってるとパスが変わってくるかもしれません(未確認).

初期の執筆時は上記の環境でしたが、その後El Capitanに対してこの手順で導入しても成功しました。

正式にEl Capitan用に書き直しました。


導入するバージョン


  • powerline 2.4

  • zsh 5.2

  • vim 7.4

  • tmux 2.1


インストール

統一前はvimの拡張としてのPowerline(?)だったのでNeoBundleで導入していましたが,統一後はpythonのpipを使用します.


python pip

Powerlineはpythonのpipを使って導入します.

まずはpythonの環境を整えます.

brew install python

python --version
pip --version

現時点ではpython2.7.11が導入されました.

パッケージインストーラのpipが同梱されているのでこれでOKです.

pipが入っていなかった場合はこちらが参考になりそうです.

easy_installからのpipだと思っていたんですけど簡単になったみたいですね.


Powerline


インストール

本体の導入です

pip install powerline-status==2.4

Homebrewでpythonを入れた場合は--userオプションはつけちゃいけないみたいです。

ここで error: can't combine user with prefix, exec_prefix/home, or install_(plat)base というエラーが出たら, ~/.pydistutils.cfg を作成


~/.pydistutils.cfg

[install]

prefix=

参考


インストール確認

powerlineの本体と、実行スクリプトファイルがあるかを確認します。

本体は /usr/local/lib/python2.7/site-packages

実行ファイルは /usr/local/bin/

にあります。


パスの確認

powerlineの実行ファイルにパスが通っているかを確認します。

powerline-daemon -h

でpowerlineのヘルプが出たらOKです。

出なかったら「パスを通す」に進んでください。

出たら「フォントの導入」に進んでください。


パスを通す

powerlineのスクリプトにパスを通します。

スクリプトのリンクを貼ってそのディレクトリを通します。

本体は/usr/local/lib/python2.7/site-packages

実行スクリプトは/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/bin

にあったとします。

実行スクリプトの場所は環境によって変わると思うので、この場所にない場合はsudo find /usr -name "powerline-deamon"などで探してください。

mkdir -p ~/.local/bin

ln -s /usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/bin/powerline ~/.local/bin/powerline
ln -s /usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/bin/powerline-config ~/.local/bin/powerline-config
ln -s /usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/bin/powerline-daemon ~/.local/bin/powerline-daemon
ln -s /usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/bin/powerline-lint ~/.local/bin/powerline-lint
ln -s /usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/bin/powerline-render ~/.local/bin/powerline-render
~
echo "export PATH=$PATH:~/.local/bin" >> .bashrc
source .bashrc


フォントの導入

専用のフォントを使用する必要があります.

既存のフォントにパッチを当てる方法がありますが,面倒なのであるものを使います.

cd ~/Desktop

git clone git@github.com:powerline/fonts.git
./fonts/install.sh

使いたいフォントをiTermに設定してください。

ここで設定するフォントは、フォント名に「powerline」が入っているものにしてください。

でないと文字化けしてしまいます。

iTermの Preferences... > Profiles > Text

から Regular Font と Non-ASCII Font の設定ができます。

Double-Width Characters のチェックは外してください。


各種ツールのインストール

必要に応じてどうぞ


zsh

最新版の導入とログインシェルを変更

詳しいこちらを見たほうがいいかも

brew install zsh

echo '/usr/local/bin/zsh' >> /etc/shells
chsh -s /usr/local/bin/zsh


Vim

Mac標準のVimでは都合が悪いみたいなのでVimを入れなおします

参考

brew install macvim --env-std --override-system-vim


tmux

Macにtmuxを導入する

brew install tmux


各設定

それぞれの設定ファイルを作成します.

初めは念のため新しく作成してください.


zsh

設定ファイルを作成

本家docs


~/.zshrc

source .bashrc

powerline-daemon -q
. /usr/local/lib/python2.7/site-packages/powerline/bindings/zsh/powerline.zsh


Vim

設定ファイルを作成

本家docs


~/.vimrc

" Powerline

python from powerline.vim import setup as powerline_setup
python powerline_setup()
python del powerline_setup
set laststatus=2
set showtabline=2
set noshowmode


tmux

設定ファイルを作成します.

本家docs


~/.tmux.conf

set-option -g default-terminal screen-256color

set -g terminal-overrides 'xterm:colors=256'
run-shell "powerline-daemon -q"
source "/usr/local/lib/python2.7/site-packages/powerline/bindings/tmux/powerline.conf"

ここで設定が有効になっていない(見た目が変わっていない)場合は,tmuxのプロセスが残っている可能性があるので再起動します.

参考


bash

$ ps ax | grep tmux

38638 ?? Ss 0:00.07 tmux
38764 s005 R+ 0:00.00 grep tmux
$ kill -9 38638
$ tmux


最後に

細かな設定に関してはわかっていないので各人でよろしくお願いします.

以上です.

shellがかっこ良くなるとテンション上がりますよね


参考リンク