読者です 読者をやめる 読者になる 読者になる

青空コメントアウト

WEBのこと、デザインのこと、ご飯のこと、趣味のこと。青空の向こうの誰かに届きますように。

zshとpreztoを導入した話

// WEB開発の話
このエントリーをはてなブックマークに追加

ターミナルを触らない日はないと言っても過言ではないくらい、開発者にとってターミナルは必須の存在です。かく言うあろえりーな(@aloerina_)もgitコマンドをたたいたりsshサーバにアクセスしたりとよく使っています。にも関わらずターミナルやシェルについては無頓着で、コマンド使えれば何でもいいなんて時代遅れなことを考えていました。恥じます。

そんなわけで、イケてるシェルであるzshを導入してファッショナブルでセンシティブでモテモテな開発者を目指す話をします。



おさらい

Macのターミナルというアプリは、標準ではbashというシェルを(mac流に)使いやすくしてくれているもので、つまり私たちはターミナルという道具を通じてシェルと対話しているわけです。でもってシェルにもいろんな種類があって、今回はその中のひとつであるzshを使おう、という話です。

ちなみに「bashの設定ファイルはさっくり理解している(ググれば理解できる)」程度の知識を前提としています。PATHの設定の仕方やbashの設定の引き継ぎについては記載しませんのでご了承ください。

なぜzshがイケてるのか

コマンドの自動補完やガイドがすごいよ

git [TAB] と打つと…ほら

f:id:cocoro27:20161118114635p:plain


見た目がかわいいよ

たとえば…ほら

f:id:cocoro27:20161118115128p:plain agnoster/README.md - Gist

設定めちゃくちゃいじれるので世界に一つの愛すべきターミナルがつくれるよ

ほら…といいたけどゼロからカスタマイズはむずいので、そこで役立つのが設定フレームワークのprezto。ある程度のベースとなる設定とパッケージ管理する仕組みを提供してくれます。きっとその他にもいろいろできる。



導入方法

概要

  1. zsh用の設定フレームワークpreztoを導入する
  2. ターミナルの標準シェルをzshに変更する
  3. 設定をいじる


zsh用の設定フレームワークpreztoを導入する

まずzshの起動

zsh


preztoをgitから落とす

git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto"


設定ファイルをつくる

setopt EXTENDED_GLOB
for rcfile in "${ZDOTDIR:-$HOME}"/.zprezto/runcoms/^README.md(.N); do
  ln -s "$rcfile" "${ZDOTDIR:-$HOME}/.${rcfile:t}"
done

参考:sorin-ionescu/prezto - GitHub


ターミナルの標準シェルをzshに変更する

chsh -s /bin/zsh

macにはあらかじめzsh含む数種類のシェルが用意されていて、初期設定ではbashを使うようになっているので、それを変更する作業です。


設定をいじる① テーマ

テーマがいっぱい用意されていて、プレビューしながら選べます。こういうの選んでるときが一番楽しいです。

prompt -l               // themeの名前一覧が表示
prompt -p <theme_name>  // themeのプレビュー
prompt -s <theme_name>  // themeの変更


設定をいじる② パッケージ

preztoにはパッケージを管理する機能が含まれています。.zpreztorcを開いてgitパッケージを追加しておきましょう。

zstyle ':prezto:load' pmodule \
  'environment' \
  'terminal' \
  'editor' \
  'history' \
  'directory' \
  'spectrum' \
  'utility' \
  'completion' \
  'git' \                   ←この行を追加
  'syntax-highlighting' \
  'prompt'

その他にもパッケージはいっぱいあるのでお好きにカスタマイズしましょう。
参考: prezto/modules at master · sorin-ionescu/prezto · GitHub


設定をいじる③ zshの魔法の呪文

メリットのひとつである強力な補完機能を有効にする呪文です。.zshrcの最後に追加しておきましょう。

autoload -Uz compinit
compinit


設定をいじるときに知っておくといいこと

設定ファイルが多くてどれに何をかけばいいのかわからなくなることってあるよね、あったよ。細かいことは参考サイトに頼るとして、知っておくといい前提として設定ファイルの読み込み順をまとめておきます。

  1. .zshenv
  2. .zshprorfile
  3. .zshrc
  4. .zshlogin

参考:zshの設定ファイルの読み込み順序と使い方Tipsまとめ



愛すべきターミナルができました

zshの設定に加えてターミナルの設定もいじって、最終的にこんな感じになりました。かわいいかわいい。 f:id:cocoro27:20161118120132p:plain

TOP