emahiro/b.log

日々の勉強の記録とか育児の記録とか。

Claude Code のために Wezterm に戻ってきた

Overview

ターミナルエミュレーターを色々触ってきましたが、結局 wezterm に戻ってきた、という話です。

wezterm.org

ターミナルエミュレーター の変遷

自分が Mac で仕事をするようになってからのターミナルエミュレーターの遷移は以下です。

  1. Mac標準ターミナルエミュレーター
  2. iTerm2
  3. Wezterm
  4. Warp
  5. Ghostty
  6. iterm2
  7. Wezterm <- 今ここ

Mac で仕事をするようになって以来、標準のターミナルエミュレーターから色々カスタマイズできて全部入りな iTerm2 を好んで使っていましたが、ある時から重たいなと感じるようになり自分で設定をカスタマイズできる Wezterm に行き、そのあと LLM の時代になったので LLM ネイティブなターミナルエミュレーターとして Warp を試していました。
ただ、LLM での補完や、チャットでのコマンドを聞いたりするというのが自分の作業ワークフローに合わず、ターミナルには AI とかいらないんだなとなりそのタイミングで最近話題になっている Ghostty が出たのでこっちに乗り換えてました。
しかし、Ghostty はリリースされたばかりでいくら設定をカスタマイズできるとはいえ、iTerm2 同等のサポートを自前で作るのは当時は難しく(サポートしてない機能あったし)、結局多少重たくても全部乗せの iTerm2 を使う方が生産性上がるなと思って、ここ暫くは iTerm2 に戻っていました。
ただ、Claude Code などの LLM の CLI ツールを多用するにあたり、ターミナルの描画が iTerm2 だと重たすぎてもっさりしてるのがだいぶ気持ち悪かったのもあり、結局軽量なターミナルエミュレーターがいいな、ということで Ghostty か Wezterm かで悩んだ結果、lua での設定ファイルが書きやすいなと思ったので Wezterm に戻ってきました。あまり凝った設定はしてないでなるべく素の状態で利用していますが、やはり iTerm2 -> Wezterm だと露骨に秒かのパフォーマンスの違いを感じます。これが Rust の力なんですかね笑

今のところ十分満足です。

その他

そうは言っても Wezterm で iTerm2 と同等のことができないと仕事にならないので Wezterm で iTerm2 同等の keybind を作り出すためにいろいろ調べて記録しておきます。

Ctrl + h 問題

これが一番困りました。
Claude Code のような Coding Agent のチャットとの対話において、 Ctrl + h (= Backspace) を多用していた自分にはこの問題がクリティカルすぎてどうしようか迷ってるところだったのですが、すでに対応してくれてる人がいて助かりました。

fjtkfm.hatenablog.com

keybind や設定周り

探せばいくらでも出てきますが、以下を参考にしました。

zenn.dev

zenn.dev