この記事はVim Advent Calender 2017の23日目の記事です。(夜までに書き終わってるといいな)
前書き
実は最近、Ubuntuで競プロとかやることが増えてきたのですが(僕はこっちにも記事を出す予定です。「競プロ!!」 競技プログラミング Advent Calendar 2017)Ubuntuなんて、仮想環境の上に組み立ててやるぐらいしかやらないので、なんども再インストールしたりするのですが、その度にPowerlineのセットアップにすごい時間を使うので、いい加減、手順をまとめておこうと思います。ちなみにJOI(情報オリンピック)本選に出場する人は本選でUbuntuを使わされると思うので、見ておくといいかもしれません。(本選で新たにパッケージをインストールすることはできないので、Vimになれるぐらいにしかならないけど)
完成予想図
環境
MacBook Air Early 2015
容量が足りない。(128GB)
tmux
入ってないことはないとは思いますが、入れてください。
$ sudo apt-get install tmux
zsh
zshですが、個人的にはoh-my-zshがお勧めです。
まず、zshに切り替えます。
$ which zsh /usr/bin/zsh $ chsh Password: Changing the login shell for hoge Enter the new value, or press ENTER for the default Login Shell [/bin/bash]: /usr/bin/zsh
それから、oh-my-zshをインストールします。
$ sudo sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
あと、oh-my-zshはテーマを変えることができます。個人的にはavitがお勧めです。
ZSH_THEME="avit"
Vim
普通、標準で入っていますが、一応。
$ sudo apt-get install vim
あと重要なのが、自分のVimに入っているpythonのバージョンを調べることです。
+cryptv +linebreak -python +vreplace +cscope +lispindent +python3 +wildignore
標準だと、python3が入っているはずです。(Ubuntu 16.04)
Powerlineのインストール
ついに、Powerlineのインストールをするのですが、その前に上で調べてもらったpythonがpython3だった場合はpip3をインストールしましょう。(Vimのpythonのバージョンの関係でPowerlineが呼び出せない)
$ sudo apt-get install python3-pip
その後、Powerlineをインストールします。
$ pip3 install --user powerline-status
それから、Powerlineの設定ファイルの場所を調べておきます。通常は以下の位置にあるはずです。
$ cd .local/lib/python3.5/site-packages/powerline/bindings/
パスは自分のpythonのバージョンに変えてください。
tmuxの設定
.tmux.confに書き込みます。
run-shell "powerline-daemon -q" source ".local/lib/python3.5/site-packages/powerline/bindings/tmux/powerline.conf"
パスは自分のpythonのバージョンに変えてください。
(ちなみに、この設定だとホームディレクトリからtmuxを起動しないと、エラーが出ます。それを回避するには、パスを絶対パスにしてください。)
Vimの設定
追加するだけ、自分のpythonのバージョンに合わせてください。あと、laststatusを2にして、常に最終行が表示されるようにすること。
" Powerline settings set laststatus=2 set showtabline=2 set t_Co=256 python3 from powerline.vim import setup as powerline_setup python3 powerline_setup() python3 del powerline_setup
最後に
以上がUbuntuでPowerlineとtmux + Vim + zshでの最速での環境構築だと思います。バージョンの違いとかで、公式ドキュメントにも載ってない罠がところどころにあるので、気をつけてください。