【令和最新版】ターミナル環境について紹介します【2024】

この記事はAkatsuki Games Advent Calendar 2024の19日目の記事です。

昨日はNaoya Kohdaさんの我が家のプライベートクラウド(自宅サーバ)について紹介しますでした。 やっぱりサーバーエンジニアは自宅サーバや自宅ネットワーク組みがちですね〜

目次

はじめに

今年もアドベントカレンダー・ハラスメントことアドハラを受けたので記事を書いています。

面白いネタを書きたかったのですが特に思い浮かばなかったので、僕が考えた最強のターミナル環境 令和最新版の紹介をすることにします。

iTerm2

iterm2.com

まずはターミナルエミュレータから。
定番ですね。定番というのは定番になるだけのパワーがあるなと再認識します。 一時期ターミナルエミュレータを渡り歩いていた時期があり、WarpやAlacritty、Rioなど試して移住しかけていたんですが、いかんせん開発途上で挙動が怪しい箇所があったり、文字がおかしくなったりなどなど不安定な箇所に目がいってしまいました。その点iTerm2はRust性ターミナルのような高速性はないものの十分に軽快な動作で、且つ動作が極めて安定しているので、令和最新版はiTerm2出戻りがトレンドです。(?)

fish shell

fishshell.com

shellです。bashとかzshのお仲間ですが彼らと違ってPOSIX非準拠です(そういう思想で作成されています)
何も設定書かなくてもデフォルトでまぁまぁいい感じになってくれるのが嬉しいですね。
あとabbrという機能が地味に便利です。

starship

starship.rs

シェルの表示をカスタマイズできます。 自分はgitの各種ステータスや使用している言語のランタイムバージョン、サインインしているAWSのプロファイルなどを常時プロンプトに表示しています。

mise

mise.jdx.dev

asdfのRust版。
各種言語のランタイムをシュッと管理できます。 Rustで書かれているだけでなく、shims方式のasdfと違い実体へのPATHをカレントディレクトリに応じて変更する方式のため、asdfで発生していたシェルスクリプトを毎回呼び出すオーバーヘッド(環境によりますが200ms程度)がなくなります。

zoxide

github.com

強いcd。
一度zoxideを用いて移動したディレクトリは覚えてくれるので、あいまい検索ができます。 cdコマンドのインターフェイスと互換性があるので、cdコマンドにaliasを貼っても便利です。

lsd

github.com

強いls。 zoxideと同様に、lsにエイリアスを貼って使えます。 アイコン表示やツリー、詳細なformattingオプションなどに対応しています。

bat

github.com

強いcat。 指定したファイルを解析し、対応言語のソースファイルであればシンタックスハイライト+行数表示をしてくれる上、ターミナルに収まる分量であればcat、収まらないのであればlessとして動作してくれます。

おわりに

駆け足で私が日頃使っているCUI環境のツールを紹介しました。 私の一言紹介だと魅力の1割も使っているか怪しいですが、気になったものがあればぜひ公式ページを覗いてみてください。