変化を楽しむ:あなたのshell環境は?:zshのPROMPTを2行にしてみた

こんにちはCTOの馬場です。

ハートビーツの企業理念のひとつに「変化を楽しむ」があります。

その流れもあり、個人的に意識的に変化を起こすようにしています。 例えば慣れたOS、エディタ、shellなどのツールを敢えて変えたりして、意識的にコンフォートゾーンから出るようにしています。

今月は個人PCのshellのPROMPTを2行にしてみたので紹介します。

今までずーーーーーっとPROMPTは1行で短いものだったので、正直なところ最初は抵抗と違和感がありました。

prompt_basic.png

こういうの。

でもやってみて、、、、結論から言うとオススメ。 今はこんな感じです。

prompt_2lines.png

メリット

  • gitの状態や長いパスを表示しても、入力行の左側が長くならなくてスッキリ
  • 入力行の右側に何も出ないのでコピペでGitLabやSlackに情報共有するのが楽(以前は入力行の右側にgitの情報を表示していた)
  • 手元環境とリモート環境の違いがよりわかりやすくなり誤認が減った
    • 基本的にターミナルの背景色をわけたりしていますが、さらにわかりやすくなりました

デメリット

設定が闇っぽい。 数ヶ月後に読んで微調整できる気がしません。 やむなし。

autoload -Uz vcs_info
setopt prompt_subst

zstyle ':vcs_info:git:*' check-for-changes true
zstyle ':vcs_info:git:*' unstagedstr '!'
zstyle ':vcs_info:git:*' stagedstr '+'
zstyle ':vcs_info:*' formats ' %c%u(%s:%b)'
zstyle ':vcs_info:*' actionformats ' %c%u(%s:%b|%a)'
precmd () {
    psvar=()
    LANG=en_US.UTF-8 vcs_info
    [[ -n "$vcs_info_msg_0_" ]] && psvar[1]="$vcs_info_msg_0_"
}

PROMPT="%B%F{green}❯❯%1(v|%1v|)%f%b %B%F{blue}%~%f%b
%B%F{green}❯%f%b "

弊社での個人PCでのshell利用状況ランキング

ちなみに弊社のshell利用ランキングは以下のとおりでした。

shell_share.png

  1. bash 61%
  2. zsh 35%
  3. fish 4%

bash強し。なおほとんどのエンジニアがMacを使っています。

私はいまzshなのですが、次はfishにしてみようかなぁ。 それとも英字キーボードに変えてみようかなぁ(カナ入力だけど)。 などと考えています。


みなさんも「変化を楽しむ」してみませんか?

株式会社ハートビーツのインフラエンジニアから、ちょっとした情報をお届けします。