Ghostty の Vim・AI エージェント使用時に Ctrl+M で入力中の文字が確定されない問題を tip 版で解消する

EN / JA

症状

macOS の Ghostty で Vim や Claude Code、codex などの AI エージェントを使っているとき、IME の変換中に Ctrl+M で確定すると、確定されるはずの入力中の文字が消えてしまいます。iTerm2、WezTerm、kitty、Terminal.app では起きません。

環境:macOS Tahoe 26.4 / Ghostty 1.3.1 stable

対処方法:tip 版に切り替える

この問題は Ghostty 本体ですでに修正されています。ただし、修正はまだ stable 版に入っていないため、修正入りの tip 版に切り替えれば使えます。

  1. Ghostty の設定ファイル(~/.config/ghostty/config など)に次の1行を追加します

    auto-update-channel = tip
  2. Ghostty を完全に終了して、起動し直します

  3. メニューの「Ghostty → Check for Updates…」で更新します

私の環境では、これで Vim でも Claude Code でも Ctrl+M で正しく確定できるようになりました。

なぜ直ったのか

この問題は、knu さんの PR(#12518、#12547)で修正されています。ただし、どちらも 1.3.1 のリリース後にマージされたため、stable 版にはまだ入っていませんでした。tip は main ブランチから自動でビルドされるプレリリース版なので、修正が入っています。

ソースコードを読んだ範囲では、1.3.1 は IME が確定した文字列を「Ctrl+M というキー入力」とまとめてアプリに送っていました。そのため、Vim や AI エージェントには「Ctrl+M が押された」という情報しか届かず、文字が消えていたようです。修正後は、確定した文字列だけを送るようになっています。

注意

tip はプレリリース版です。修正を含む次の stable 版が出たら、auto-update-channel = stable に戻すとよいでしょう。