jump to navigation

zshの基本的な使い方 2/3 「bash風プロンプト」編

2008-01-23 23:38 Posted by
nase
in : ソフトウェア
keyboard2_2.jpg

zshを使い始めるにあたって、いちばん違和感を感じたのは実はプロンプトだったりしました。

ここではzshの機能を活かした上で、bashユーザにも違和感のないプロンプトの設定を紹介します。

bashユーザのためのプロンプト設定

zshの標準プロンプトはこんな感じ。

localhost%

bashとはだいぶ違います。

やっかいなのは、このプロンプトの設定が特種な文字列を使うものであり、初心者にはやたら敷居が高いということ。

おなじみ「漢のzsh」でも第二回でプロンプトの設定が取り上げられているのですが、残念ながら設定が懲りすぎていて分かりづらい。

仕方がないので、自分で調べながら何とかシンプルなbash風に仕上げてみました。

## プロンプトの設定
autoload colors
colors
PROMPT="%{${fg[blue]}%}[%n@%m] %(!.#.$) %{${reset_color}%}"
PROMPT2="%{${fg[blue]}%}%_> %{${reset_color}%}"
SPROMPT="%{${fg[red]}%}correct: %R -> %r [nyae]? %{${reset_color}%}"
RPROMPT="%{${fg[blue]}%}[%~]%{${reset_color}%}"

設定しているプロンプトは以下のとおり。(参考:zsh: Parameters)

PROMPT:左側に表示されるの通常のプロンプト
PROMPT2:2行以上のコマンドを入力する際に表示されるプロンプト
SPROMPT:コマンドを打ち間違えたときの「もしかして」プロンプト
RPROMPT:右側に表示されるプロンプト。入力が被ると自動的に消える

設定内の「%○」という記号の意味は以下のページに載っています。

色の設定だけはどうしても読み見づらくなってしまうのですが、「%{${fg[blue]}%}」と「%{${reset_color}%}」で囲った部分がブルーで表示されるようになっています。

プロンプトに色が付いていると、コマンドごとの区切りが分かりやすくていい感じ。(もちろんbashでも設定できると思いますが、よい機会なのでzshでやってみてください)

これで以下のような表示になります。めでたしめでたし。

zsh_prompt.gif
bash風プロンプト(「centos」ユーザでログイン中)

参考ページ

連載一覧

Comments»

no comments yet


*Comments and trackbacks will appear after it is approved by the administrator.