Claude Code で Shift+Enter が改行にならないときの設定と tmux・通知・貼り付け
結論
- 改行は Ctrl+J、または
\を入力してから Enter なら、どのターミナルでも設定なしで使えます。Shift+Enter は端末ごとに対応が違い、VS Code などでは/terminal-setupを一度実行します。 - tmux の中では既定で Shift+Enter が送信になり、通知も外側に届きません。
~/.tmux.confに3行を足して対処します。 - 既定でデスクトップ通知が出るのは Ghostty、Kitty、iTerm2 だけです。大きな貼り付けはファイルに書き出す方法が案内されています。
改行の入れ方:Ctrl+J と Shift+Enter の対応状況
Claude Code(Anthropic 社が提供する、ターミナルで動く AI コーディングエージェント)は、公式ドキュメントによると、どのターミナルでも設定なしで動きます。ターミナル設定のページは、特定の挙動が期待どおりでないときに症状から探すためのものです。執筆時点(2026年10月)の内容をもとに、社内で案内するときに要る点だけをまとめます。
Enter は送信です。改行したいときは Ctrl+J を押すか、\ を入力してから Enter を押します。この2つは、どのターミナルでも設定なしで使えます。Shift+Enter も多くのターミナルで使えますが、対応は次のようにターミナルごとに異なります。
- 設定なしで使える:Ghostty、Kitty、iTerm2、WezTerm、Warp、Apple Terminal、Windows Terminal
- 設定なしで使える(条件あり):kitty keyboard protocol に対応するその他の端末(foot、Alacritty 0.16 以降など)。Claude Code v2.1.269 以降が必要です
/terminal-setupを一度実行する:VS Code、Cursor、Devin Desktop、Alacritty 0.16 より前、Zed- 使えない:gnome-terminal と、PyCharm や Android Studio などの JetBrains 系 IDE。Ctrl+J、または
\と Enter を使います
/terminal-setup を使うときの注意
/terminal-setup は、ターミナルの設定ファイルに Shift+Enter のキーバインドを書き込みます。既存のバインドは残され、設定済みである旨のメッセージが出たときは変更されていません。tmux や screen の中ではなく、ホスト側のターミナルで直接実行します。
VS Code、Cursor、Devin Desktop では、あわせて terminal.integrated.gpuAcceleration を "off" にし(統合ターミナルの文字化けを防ぐため)、terminal.integrated.mouseWheelScrollSensitivity も設定します。戻すには "auto" に戻してエディタのウィンドウを再読み込みします。Zed では keymap.json を更新します。社内に配るときは、エディタ側の設定が書き換わる点を先に伝えておくと安心です。
Enter と Shift+Enter の役割を入れ替えたい場合などは、キーバインド設定ファイルで chat:newline と chat:submit を割り当てます。
出典: Configure your terminal for Claude Code
tmux の中で使うときの設定
公式ドキュメントによると、tmux の中で Claude Code を動かすと、既定では Shift+Enter が改行ではなく送信になり、デスクトップ通知や進捗バーも外側のターミナルに届きません。外側のターミナルが Shift+Enter に対応していても、tmux 内では設定が必要です。~/.tmux.conf に次の行を足し、tmux source-file ~/.tmux.conf で動作中のサーバーに反映します。
set -g allow-passthrough on
set -s extended-keys on
set -as terminal-features 'xterm*:extkeys'
allow-passthrough の行は、通知と進捗更新を外側のターミナルへ通します。extended-keys の行は、tmux が Shift+Enter と通常の Enter を区別できるようにします。
出典: Configure your terminal for Claude Code
作業完了の通知を受け取る
Claude が作業を終えたとき、または許可の確認で止まったときに、利用者が席を離れていそうなら通知イベントが発生します。ベルやデスクトップ通知にしておけば、長い作業の間に別の仕事ができます。
既定でデスクトップ通知が送られるのは Ghostty、Kitty、iTerm2 だけです。それ以外では、preferredNotifChannel を "terminal_bell" にするとターミナルのベルが鳴ります。
{
"preferredNotifChannel": "terminal_bell"
}
デスクトップ通知は SSH 越しでもローカル側に届きます。Ghostty と Kitty は追加設定なしで OS の通知センターに転送されますが、iTerm2 は Settings → Profiles → Terminal で「Notification Center Alerts」にチェックし、「Filter Alerts」から「Send escape sequence-generated alerts」を有効にします。通知が出ないときは、OS 側でターミナルアプリの通知許可を確認し、tmux 内なら前の節の設定を行います。
Warp や VS Code の統合ターミナルのようにデスクトップ通知が届かない端末では、上の設定のほか、Notification hook で音やコマンドを実行する方法もあります。hook は組み込みの通知と並んで動きます。具体例は公式の hooks ガイドで確認してください。
出典: Configure your terminal for Claude Code
大きな内容を貼り付けるときの挙動
公式ドキュメントによると、800文字を超える、または3行を超える内容を貼り付けると、[Pasted text #1 +120 lines] のようなプレースホルダに折りたたまれます。入力欄は使いやすいまま、送信時には全文が送られます。
ファイル全体や長いログのような大きな入力は、貼り付けずにファイルへ書き出して Claude に読ませる方法が案内されています。VS Code の統合ターミナルでは、非常に大きな貼り付けで文字が欠けることがあるため、そこではファイルを使います。
Claude には、プレースホルダの中身が、入力したものではなく貼り付けたテキストとして伝わります。貼り付けには利用者が書いていない指示が含まれうるため、入力したメッセージが求める場合だけ従うよう伝えられます。ただし、フィーチャーフラグを取得しないセッションでは、この目印は付きません。
貼り付けの中身は ~/.claude/paste-cache/ に保存され、履歴から呼び出して再送すると全文が再び送られます。cleanupPeriodDays より古いキャッシュは削除されるため、中身が無くなっていることがあります。その場合の扱いは公式ドキュメントで確認してください。
出典: Configure your terminal for Claude Code
Windows で Backspace が単語ごと消えるとき
Windows では、^H として届く Backspace を Claude Code が Ctrl+Backspace(直前の単語を削除)として読みます。ただし TERM_PROGRAM が mintty、または TERM が cygwin の場合は除きます。macOS と Linux では通常の Backspace として読みます。
Backspace を1回押すたびに単語ごと消える場合は、ターミナルが通常の Backspace に ^H を送っています。CLAUDE_CODE_BS_AS_CTRL_BACKSPACE=0 を設定すると、Backspace と Ctrl+H はそれぞれ1文字を消します。逆に macOS や Linux で、ターミナルが Ctrl+Backspace に ^H を送るため1文字しか消えない場合は、この変数を 1 にします。
出典: Configure your terminal for Claude Code
よくある質問
VS Code のターミナルで Shift+Enter が送信になってしまいます。どうすればよいですか。
公式ドキュメントによると、VS Code では /terminal-setup を一度実行します。tmux や screen の中ではなく、ホスト側のターミナルで直接実行してください。設定せずに使いたい場合は、Ctrl+J、または \ を入力してから Enter でも改行できます。
tmux の中で通知が届かず、Shift+Enter も効きません。
公式ドキュメントでは、~/.tmux.conf に set -g allow-passthrough on、set -s extended-keys on、set -as terminal-features 'xterm*:extkeys' の3行を足し、tmux source-file ~/.tmux.conf で反映する方法が案内されています。外側のターミナルが対応していても、tmux 内ではこの設定が必要です。
Windows で Backspace を押すと単語ごと消えます。
ターミナルが通常の Backspace に ^H を送っている可能性があります。公式ドキュメントでは、CLAUDE_CODE_BS_AS_CTRL_BACKSPACE=0 を設定すると、Backspace と Ctrl+H が1文字ずつ消すようになると説明されています。
関連する無料ツール
Claude Code つまずき早見表: Windows で Claude Code を使うときに起きやすい症状を、原因と対処で引ける早見表です。
参考(執筆時点)
- Configure your terminal for Claude Code(公式ドキュメント)
この記事は、上の出典の内容を中小DXラボが要約・再構成したものです。仕様は変わることがあります。社内で使う・配る前に、公式ドキュメントで最新の情報を確認してください。