riq0h.jp/content/post/超ミニマルなZshプロンプト「typewritten」.md
2023-08-21 10:07:01 +09:00

3.1 KiB

title date draft tags
超ミニマルなZshプロンプト「typewritten」 2022-10-15T16:27:31+09:00 false
tech

以前、この記事でPreztoに付属するPureというプロンプトを紹介したが、最近よりミニマルなものを発見したので共有しておきたい。typewrittenは特に機能性を求めず、極めて簡素な外観を好む人に最適な選択肢だ。

導入はnpmまたはマニュアルで行う。前者は動作に必要な記述を自動で行ってくれるので楽。ただし、後者の場合でもパッケージをクローンして数行の設定を.zshrcに足すだけですぐに使える。

#このコマンドで導入した人は以下二つの工程は不要
$ sudo npm -g install typewritten
#マニュアルダウンロード
$ mkdir -p "$HOME/.zsh"
$ git clone https://github.com/reobin/typewritten.git "$HOME/.zsh/typewritten"
#.zshrc
fpath+=$HOME/.zsh/typewritten
autoload -U promptinit; promptinit
prompt typewritten

導入後、source ~/.zshrc.zshrcを読み込み直すと本記事冒頭のgif画像のような外観に切り替わっているはずだ。

typewrittenはミニマル仕様のプロンプトではあるものの、デフォルト設定が気に入らない場合は部分的に変更することもできる。設定は.zshrcに追記する形で行う。例えば、TYPEWRITTEN_PROMPT_LAYOUT="half_pure"と書き加えるとGitのステータス表示をシンボルの上部に移せる。

カレントディレクトリの表示も含めてすべて上部に移す設定はTYPEWRITTEN_PROMPT_LAYOUT="pure"で可能だ。

表示位置以外にも、シンボルの形状や文字の色を変えることもできる。これはDracula風らしい。

export TYPEWRITTEN_COLOR_MAPPINGS="primary:#9580FF;secondary:#8AFF80;accent:#FFFF80;info_negative:#FF80BF;info_positive:#8AFF80;info_neutral_1:#FF9580;info_neutral_2:#FFFF80;info_special:#80FFEA"

他の細かい設定はここに載っている。設計思想上、リッチさにあふれた外観は望めないが、逆にとことん情報量を削ぎ落としたい人にはまさにうってつけのプロンプトではないだろうか。

一方、見た目はもちろん機能性ももう少しどうにか……という人はぜひ本記事冒頭のリンクからPreztoの項目を読むか、Starshipを試してみてほしい。あるいは、別途探せば類似のプロダクトもいくつか見つかるだろう。どのフレームワークやプロンプトにもそれぞれの思想性が備わっていて、CLIの表現力にはまだまだ未踏の領域が存在することを感じさせてくれる。