🐥
Terminal.app で Claude Code を使う設定
最近、次の理由で VSCode 組み込みターミナルでなく、 Terminal.app で Claude Code を使いはじめたのだが、そのためのちょっとした設定をまとめる。
- VSCode 内はペインが多いので、切り替えショートカットの設定を考えるのがめんどくさい
- ウィンドウ切り替え Command + Tab ですむ Terminal.app でいいかな
 
 - 組み込みターミナルだとスクロールがトップに戻ってしまう問題がある
- https://github.com/microsoft/vscode/issues/224750
 - 治ったぽいが regression で出ているので再発しても影響を受けないように
 
 
設定
Option + Enter で改行
まず Terminal.app だと改行するために次の設定を入れる必要がある。

これは公式にも載っている。
Shift + Enter で改行
Karabinar-Elements で実現する。
Complex Modifications から次の設定を追加する。
{
  "description": "Shift + Enter -> Option + Enter in Terminal.app",
  "manipulators": [
    {
      "conditions": [
        {
          "bundle_identifiers": ["com.apple.Terminal"],
          "type": "frontmost_application_if"
        }
      ],
      "from": {
        "key_code": "return_or_enter",
        "modifiers": {
          "mandatory": ["left_shift"],
          "optional": ["any"]
        }
      },
      "to": {
        "key_code": "return_or_enter",
        "modifiers": ["left_option"]
      },
      "type": "basic"
    }
  ]
}
これは Terminal.app にフォーカスがあたっているときのみ Shift + Enter -> Option + Enter の変換をかけている。 Complex Modifications で指定可能な特定アプリでのみ動くマッピングを使っている。
やってみて
割と快適。キーボードで操作が完了しやすくなった。
ただ、 Claude Code 自体もなにかの拍子でスクロールがかなり上に飛ぶことがわかった。プランの提示時だったり、プランの approve 直後だったりで起こる。頻度が少ないので放置しているが、これもいつか治るだろうか。
Discussion