
Claude Code で改行する方法|Shift+Enter と複数行入力の設定
Claude Code に長いプロンプトやコードを貼り付けようとして「Enter を押した瞬間に途中で送信されてしまう」「改行が入らない」と困った経験はありませんか。これはターミナルの仕様によるもので、設定や入力方法を知っていれば確実に解決できます。本記事では、設定不要ですぐ使える方法から、Shift+Enter を有効化する手順、効かなくなったときの対処までを用途別に整理します。
Claude Code で改行するには、設定不要なら行末にバックスラッシュ(\)を置いて Enter、または Ctrl+J を押せばよい。Shift+Enter で改行したい場合は /terminal-setup を実行すると一括設定でき、Mac・Windows・VS Code でも快適に複数行入力できるとわかる。
目次 (8)
なぜ Claude Code で改行できないのか
Claude Code はターミナル上で動く CLI ツールのため、入力欄での Enter キーは「改行」ではなく「プロンプトの送信」として扱われます。チャットアプリと同じ感覚で Enter を押すと、書きかけの指示がそのまま Claude に送られてしまうわけです。
長いコードや複数行の仕様を渡したいときは、送信ではなく「改行」を明示的に指示する必要があります。方法は大きく分けて、(1) 入力時の特殊操作で改行する、(2) ターミナルのキー設定を変更して Shift+Enter を改行に割り当てる、の 2 系統です。まずは設定不要の方法から見ていきましょう。
最も簡単な改行方法 — バックスラッシュ(\)+ Enter
どのターミナル・どの OS でも追加設定なしで使えるのが、行末にバックスラッシュを置く方法です。
- 改行したい行の末尾で
\(バックスラッシュ)を入力する - そのまま Enter を押す
- 送信されず、次の行に入力が続く
- 入力が終わったら、最後の行で
\を付けずに Enter を押して送信する
この方法はシェルの行継続記法と同じ感覚で、設定を一切触らなくてよいのが利点です。「とりあえず今すぐ改行を入れたい」という場面で最も手軽です。Anthropic 公式のターミナル設定ドキュメントでも基本的な複数行入力手段として案内されています(Claude Code 用にターミナルを設定する)。
Ctrl+J で改行する — 設定不要で確実な方法
バックスラッシュと並んで覚えておきたいのが Ctrl+J です。Ctrl+J は「ラインフィード(改行コード)」を直接送る操作で、ほとんどのターミナルで設定変更なしに改行として機能します。
- キーボードで Ctrl キーを押しながら J を押すだけ
- バックスラッシュのように行末に記号を残さないため、コードを貼り付ける用途でも自然
- Shift+Enter がうまく動かない環境での代替手段としても有効
「Shift+Enter を設定したのに効かない」というトラブル時の確実なフォールバックとして、Ctrl+J を覚えておくと安心です。
Shift+Enter を有効にする — /terminal-setup コマンド
毎回バックスラッシュや Ctrl+J を打つのが面倒なら、Shift+Enter を改行に割り当てるのがおすすめです。Claude Code には専用の設定コマンドが用意されています。
- Claude Code を起動した状態で、入力欄に
/terminal-setupと入力して実行する - 使用中のターミナル(iTerm2、VS Code など)向けのキーバインドが自動で設定ファイルに書き込まれる
- 設定後は Shift+Enter で改行、単独 Enter で送信、という直感的な操作になる
/terminal-setup は対応ターミナルのキー設定をまとめて行ってくれるため、手動で設定ファイルを編集する手間が省けます。実行後はターミナルを再起動するか、案内に従って反映してください。複数行入力を頻繁に行う人ほど効果が大きい設定です。
macOS の場合 — Option+Enter とターミナル別設定
Mac では、ターミナルによって改行の扱いが異なります。標準の Terminal.app や近代的な Warp・Ghostty では /terminal-setup 後の Shift+Enter がそのまま動くことが多い一方、iTerm2 では追加設定が必要な場合があります。
iTerm2 で Shift+Enter が改行にならないときは、次の手順で割り当てます。
- iTerm2 のメニューから Preferences → Profiles → Keys を開く
- キーマッピングに
Shift+Returnを追加する - アクションとして「Send Text」を選び、改行コード(
\n)を送るよう設定する
macOS では Option+Enter が改行として案内される場合もありますが、多くのターミナルは標準で Option を修飾キーとして送らないため、確実に動かしたいなら Shift+Enter の明示設定か Ctrl+J が無難です。Mac 全般の使いこなしは Warp などのリッチ入力対応ターミナルへの乗り換えも選択肢になります。
Windows / VS Code の場合の改行設定
Windows ターミナルや VS Code の統合ターミナルで Claude Code を使う場合も、基本は /terminal-setup の実行で Shift+Enter が有効になります。VS Code は内部的にキーバインドを持つため、/terminal-setup 実行後に Shift+Enter が改行として書き込まれます。
それでも改行が入らない場合は、Ctrl+J かバックスラッシュ方式に切り替えてください。OS をまたいでコードを扱うチームでは、生成されるコードの改行コード(CRLF / LF)の混在も別の論点になります。こちらは入力時の改行とは別問題で、.editorconfig や Git の設定で統一するのが定石です。
Shift+Enter が突然効かなくなったときの対処
「これまで Shift+Enter で改行できていたのに、急に効かなくなった」というケースが報告されています。VS Code のアップデートやキーバインドの競合、Claude Code 側のバージョン変更などが原因になり得ます(VSCode のターミナル内 Claude Code で Shift+Enter が効かなくなった問題の対処)。
このときの対処は次の順で試すのが効率的です。
- まず Ctrl+J またはバックスラッシュ方式で改行できるか確認し、作業を止めないようにする
/terminal-setupを再実行してキーバインドを上書きし直す- VS Code の場合、Keyboard Shortcuts で Shift+Enter が他コマンドに奪われていないか確認する
- Claude Code とターミナルを最新版に更新する
恒久対策が固まるまでは Ctrl+J を「常に動く保険」として併用しておくと、改行できずに作業が止まる事態を避けられます。
用途別・おすすめの改行方法まとめ
最後に、状況別の使い分けを整理します。
- 今すぐ 1 回だけ改行したい → 行末にバックスラッシュ(
\)+ Enter - 記号を残さず確実に改行したい → Ctrl+J
- 毎回 Shift+Enter で快適に改行したい →
/terminal-setupで初期設定 - iTerm2 で Shift+Enter が動かない → Profiles → Keys で
Shift+Returnを\n送信に設定 - Shift+Enter が急に効かない → Ctrl+J で回避しつつ
/terminal-setupを再実行
複数行のプロンプトを自在に書けるようになると、長い仕様や複数ファイルの指示を一度に渡せるようになり、Claude Code の使い勝手が大きく向上します。まずは設定不要のバックスラッシュと Ctrl+J を覚え、頻繁に使うなら /terminal-setup で Shift+Enter を有効化しておきましょう。
参考: Claude Code 用にターミナルを設定する(公式ドキュメント) / Claude Code で改行する方法(AI 総合研究所)