ミニマムな.zshrc
友達に影響を受け、zshを使い始めてから早数ヶ月。
デフォルトの設定で使い続けていました。
ぼちぼち最小限の設定くらいはしようと弄った備忘録。
zshのインストール
手元のCentOSにzshが入っていなかったのでインストールからやってみます。
# yum -y install zsh
確認。
$ zsh --version zsh 4.3.10 (x86_64-redhat-linux-gnu)
入ってますね!
現在のシェルを確認してみましょう。
$ echo $SHELL /bin/bash
bashですね。
確認も兼ねてシェルのパス一覧を表示してみます。
$ cat /etc/shells /bin/sh /bin/bash /sbin/nologin /bin/dash /bin/tcsh /bin/csh /bin/zsh
chsh コマンドでデフォルトのシェルを変更します。
$ chsh user のシェルを変更します。 パスワード: 新しいシェル [/bin/bash]: /bin/zsh シェルを変更しました。
ターミナルを再起動して反映させます。
これでzshが使えるようになりました!
preztoのインストール
oh-my-zshを使っていて重いと感じている方、preztoはいかが? - Qiita に則って進めていきます。
まずは公式に載っているコマンドを実行。
$ 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
反映。
source ~/.zshrc
変わらなくてワロタ。
zshのアップデート
よく見たらログイン時に以下のメッセージが。
prezto: old shell detected, minimum required: 4.3.11
どうやらyumで入れたzshのバージョンが腐ってたようです。。。
ソースからコンパイルして最新版にしましょう。。。
まずソースを取ってきます。
# wget http://sourceforge.net/projects/zsh/files/zsh/5.0.6/zsh-5.0.6.tar.gz/download
解凍して。。。
# tar zxvf zsh-5.0.6.tar.gz
# cd zsh-5.0.6 # ./configure --enable-multibyte
ライブラリが足りたいとか言われたので入れます。。。
# yum install ncurses-devel
気を取り直してコンパイルからのインストール。
# make # sudo make install
無事アップデートできました!
$ zsh --version $ zsh 5.0.6 (x86_64-unknown-linux-gnu)
泣く泣くコメントアウト
が、なぜか先のエラーメッセージが消えないので ~/.zprezto/init.zsh の該当部をコメントアウトすることに。
$ vi .zprezto/init.zsh # Check for the minimum supported version. # min_zsh_version='4.3.11' # if ! autoload -Uz is-at-least || ! is-at-least "$min_zsh_version"; then # print "prezto: old shell detected, minimum required: $min_zsh_version" >&2 # return 1 # fi # unset min_zsh_version
保存して反映ッ!!
source ~/.zshrc
めっちゃ変わってワロタ。
テーマの設定
皆さんはVimの設定を変更するとき、何から弄りますか?
はい!テーマですよね!
zshもテーマから弄りましょう!
以下のコマンドでテーマのプレビューができます。
$ prompt -p
僕は redhat が好みです!
設定しましょう!
vi .zpreztorc (88行目付近) zstyle ':prezto:module:prompt' theme 'redhat'
できました!
プロンプトの変更
続いてプロンプトの表示を変えてみます。
vi .vimrc (以下を追記) PROMPT="%F{cyan}[%n@%m %d]%f (๑˃̵ᴗ˂̵)و> "
まとめ
ざっとこんな感じでしょうか。
軽量なフレームワーク zprezto を使って設定の管理を容易にし、最低限テーマとプロンプトを設定してみました。