iTerm2のステータスバーに各種プログラミング言語のバージョンを表示する方法

S 20190813 192908

Mac用の定番ターミナルアプリ「iTerm2」。

もとから人気のあるソフトですが、着々と改良が進められており、最新版のv3.3.0以降ではアプリウィンドウの上部または下部に「ステータスバー」を表示することができるようになりました。

ステータスバーには、CPUの負荷やメモリの空き容量、ネットワークの通信量などの各種表示することができる組み込みのコンポーネントが利用できるほか、ユーザー作成した独自のコンポーネントを表示することも可能となっています。

今回そのようなステータスバーの利用方法として、プログラミング言語のバージョン情報を表示するステータスバーコンポーネントの作成方法が「iTerm2: Showing the PHP, Ruby or Node version in your status bar」にて紹介されていました。

以下の手順で表示することができます。

iTerm2のシェル統合を有効にする

プログラミング言語のバージョン情報をステータスバーに表示するには、iTerm2のv3.3.0以降を使用して、シェル統合を有効にする必要があります。

Install shell integration

▲「iTerm2 > Install Shell Integration」を実行しシェル統合を有効にします。

次に以下のシェル関数を.bashrcや.zshrcなどに追加します。

# See https://www.iterm2.com/3.3/documentation-scripting-fundamentals.html
function iterm2_print_user_vars() {
  iterm2_set_user_var phpVersion $(php -v | awk '/^PHP/ { print $2 }')
  iterm2_set_user_var rubyVersion $(ruby -v | awk '{ print $2 }')
  iterm2_set_user_var nodeVersion $(node -v)
}

これでuser.phpVersion、user.rubyVersion、user.nodeVersionという3つの変数が定義されます。

カスタムコンポーネントの作成

次に定義した変数をステータスバーに表示するためにコンポーネントを作成します。

「Preferences > Profiles」で特定のプロファイルを選択し、「Session」の一番下にある「Configure Status Bar」ボタンをクリックします。

Statusbar

▲上部の「Status Bar Component Menu」から「Interpolated String」を選んで、「Active Components」にドラッグ&ドロップします。

Component

▲「Configure Component」ボタンをクリックし、例えば「Ruby: \(user.rubyVersion)」と入力すると、Rubyのバージョンを表示することができるコンポーネントが作成できます。PHPの場合は「PHP: \(user.phpVersion)」となります。

iTerm2とシェルの間のインターフェイスに関する詳細は公式ドキュメントの「Scripting Fundamentals」で説明されています。

まとめ

iTerm2のステータスバー機能を利用すれば、さまざまな情報を邪魔になりにくい領域に表示することができます。アプリ依存の機能であるためiTerm2以外のターミナルでは利用できないという弱点はありますが、常にMacでiTerm2を使って作業している方にはおすすめの機能です。

S icon タイトル iTerm2
公式サイト http://www.iterm2.com/
ソフトアンテナ https://www.softantenna.com/softwares/6769-iterm2
説明 Mac用の高機能ターミナルエミュレーター。

スポンサーリンク