新しいMacbookAirに買い替えると、Macのターミナルがbashから強制的にzshになっていた。
初めてzshを使うので、まずはbashの設定を移行してみたが、それでもzshでは使えなかった。
コマンドプロンプトのカスタマイズは、bashでは気に入っていたので、そのまま使いたかったがダメだったので、げんなり。
プログラマー友人のオススメでOh My Zshを使ってみたが、テーマがめちゃんこ多くて、選ぶのに時間がかかる割には、お気に入りのプロンプトが無い。。
Oh My Zshをカスタマイズすることもできるみたいだけど、ややこしいので、アンイストール。
補完機能などのプラグインは個別にインストールすることにして、zshのプロンプトをカスタマイズすることにした。
お気に入りは、
名前@Mac 10月05日 10:11 dir/src/tools$
のように、日付と時間を入れたい、パスも3階層まで表示したい。
これだけやりたいのに、bashの時は情報が多くて、すぐにカスタマイズできたが、zshは少ない。。
色々、調べた結果をざっと載せておきます。
| シーケンス | 説明 |
| %dもしくは%/ | カレントディレクトリ(これだけだとフルパスになるよ) |
| %n | ユーザーネーム |
| %M | .localが入るユーザーネーム |
| %m | .localが入らないユーザーネーム |
| %y | デバイスの名前 |
| %l | 接頭辞の無い |
| %D | 日付 例:23-10-05 |
| %T | 時間 22:01 |
| %t | 時間 8:01PM |
| %B | 太文字開始(終了%b) |
| %U | 下線開始(終了%u) |
| %F{color} | 文字に色付け開始(終了%f) |
| %K{color} | 文字の背景色に色付け開始(終了%k) |
| 文字として指定できるカラー | black, red, green, yellow, blue, magenta, cyan and white, |
カラーは %f{#55C502} のようにカラーコードを指定することもできる。
日付フォーマット
このようの日付はさらに細かく指定できる
%D{%Y/%m/%d %H:%M}
結果:23/10/05 22:02
カレントディレクトリの表示階層指定
%dや%/ だけだとフルパスで表示されてしまい、とても見にくくなる。
かといって、カレンドディレクトリだけでは例えば src$ などになってもどのフォルダのsrcなのかがわからなくなる。
なので、3階層上や2階層と指定した階層だけ表示するようにしたい。
公式サイトにちょろっと英語で載っていた。
%3/
のように%の後に数字で階層を表示するとOK.
〇〇/src/tools$
のように表示される。
.zshrcの編集を終えるとこれを実行すると反映される。
source ~/.zshrc