Claude Code:Ctrl+Cで消した入力を↑で復元する
Ctrl+Cで消した下書きは、空の入力欄で↑を押すと戻ります(v2.1.288以降)。戻らないときの切り分けと、Ctrl+Y・Ctrl+_・Esc2回・Ctrl+Sなど消した入力を戻す操作の違いを解説します。
書きかけのプロンプトをCtrl+Cで消してしまっても、空になった入力欄でUp(↑キー)を押せば下書きが戻ります。貼り付けたテキストや画像も復元の対象です。この復元はClaude Code v2.1.288で加わりました。それ以前は、Ctrl+Cで消した入力は打ち直すしかありませんでした。
Ctrl+Cで消した下書きを↑で戻す手順
Ctrl+Cは、状況によって働きが変わるキーです。Claudeが何かを実行している間は、その操作を中断します。何も実行していないときは、1回目の押下で入力欄をクリアし、2回目で終了します。
復元は、このクリアのあとに使います。
消した直後から下書きを戻すまで
- 1
Ctrl+Cで入力欄を空にする
何も実行していない状態で1回押すと、入力欄が空になります。続けてもう一度押すと終了してしまうので、押すのは1回です。
- 2
入力欄が空のまま↑を押す
文字を1つも打たずに
Upを押します。消した下書きが、貼り付けたテキストや画像と一緒に入力欄へ戻ります。 - 3
必要なら編集して送る
戻ったあとは通常の入力と同じです。直して
Enterで送れます。
長い指示を書いている途中で、うっかりCtrl+Cを押す場面は多いものです。画像を貼ったあとの下書きは打ち直しだけでなく貼り直しも要るので、戻せるかどうかで手間が大きく変わります。
戻らないときの切り分け
復元には条件があります。Upが効くのは、プロンプトがまだ空のあいだです。何かを打ち込んだ時点で、「空の入力欄で押す」という前提から外れます。
↑を押しても下書きが戻らないとき
- QClaude Codeはv2.1.288以降か?答えがいいえ答えがはい
v2.1.287以前にはこの復元がありません。更新してから使います。
- QCtrl+Cを押したのは1回だけか?答えがいいえ答えがはい
2回押すとClaude Codeが終了します。終了後の復元について、キー一覧の記載はありません。
- QCtrl+Cのあと、入力欄に1文字も打っていないか?答えがいいえ答えがはい
空の入力欄で押す条件を外れています。
- QClaudeの作業中にメッセージを積んでいないか?答えがいいえ答えがはい
積んだメッセージがあると、先頭行の↑はそれを取り戻す操作になります。キューと復元のどちらが優先されるかは、キー一覧に記載がありません。作業が終わってから試します。
条件が揃えば↑で戻ります
4つとも当てはまるなら、空の入力欄でUpを押せば下書きが戻ります。
手元のバージョンは次のコマンドで確かめられます。
claude --versionスラッシュコマンドや送信のあとでも戻る
v2.1.292では、この復元が改善されました。Ctrl+Cで消したプロンプトは、スラッシュコマンドを1つ実行したあとや、別のメッセージを送ったあとでも、Upで届くままになります。消した直後に/contextのような短いコマンドを挟みたい場面でも、下書きを諦めずに済みます。
v2.1.288のままだと、挟んだあとにどうなるかは変更履歴から読み取れません。使い慣れた操作の途中で試すより、バージョンを上げてから使うほうが確実です。変更点の全体はv2.1.288のリリースノートとv2.1.292のリリースノートにあります。
入力を消す・戻す操作の違い
入力が消える経路はCtrl+Cだけではありません。行を削る、編集を重ねて元が分からなくなる、あとで書くつもりで脇にどける、など原因ごとに戻し口が違います。
| 操作 | 消えるもの | 戻し方 | 向く場面 |
|---|---|---|---|
Ctrl+C(何も実行中でない) | 消えるもの入力欄の全体 | 戻し方空の入力欄でUp(v2.1.288以降) | 向く場面うっかり消した直後 |
Escを2回(入力あり) | 消えるもの入力欄の全体 | 戻し方下書きが履歴に保存されるのでUpで呼び出す | 向く場面最初から戻す前提で消す |
Ctrl+K / Ctrl+U / Ctrl+W | 消えるものカーソル位置から行末、行頭、直前の空白まで | 戻し方Ctrl+Yで貼り戻す | 向く場面行や単語を消しすぎた |
Ctrl+_ | 消えるもの直前の編集1回分 | 戻し方押すたびに前の入力とカーソル位置へ戻る | 向く場面編集を何度か重ねた直後 |
Ctrl+S | 消えるもの入力欄の全体(退避) | 戻し方空の入力欄でもう一度Ctrl+S | 向く場面別の用事を先に済ませる |
Ctrl+CとEsc2回は、どちらも戻し口がUpです。違いは前提で、Esc2回は「下書きを履歴に残す」ことが目的の操作です。Ctrl+Cの復元は、あとから救済として加わりました。
意図して脇に置くならCtrl+Sのスタッシュが向いています。戻る位置もカーソルも貼り付けた内容も入力モードも保たれます。
注意したいのは、空の入力欄のEsc2回です。クリアではなく、会話を巻き戻すメニューが開きます。使い方はrewindコマンドの記事で扱っています。
行や単語を消しすぎたときはCtrl+Y
Ctrl+K(カーソルから行末まで)、Ctrl+U(行頭まで)、Ctrl+W(直前の空白まで)で消した文字列は、削除バッファに入ります。Ctrl+Yを押すと、最後に消したものがカーソル位置へ貼り戻されます。
Ctrl+Wは単語1つではなく、パスや--flag=valueを丸ごと消します。1回で長い文字列が消えるので、消しすぎに気づく場面が多い操作です- 複数行の入力では、
Ctrl+Uを繰り返すと行をまたいで消えます Ctrl+Yの直後にAlt+Yを押すと、それ以前に消した文字列へ順に切り替わります。macOSではOptionをMetaとして使う設定が要ります
たとえば長い指示の途中でCtrl+Uを押して前半が消えたら、そのままCtrl+Yで戻せます。一方、Ctrl+Cで入力欄を空にした下書きがこの削除バッファの対象かどうかは、キー一覧に記載がありません。Ctrl+Cで消したなら、Ctrl+YではなくUpを試します。
編集を重ねたあとで元の文面に戻したいときはCtrl+_(Ctrl+Shift+-でも可)です。直前の入力テキストとカーソル位置へ戻ります。vimモードを使っている場合、NORMALモードのuが同じ取り消しの役割を担います。ddで行を消したあとにuで戻す、という使い方です。
下書きが失われやすい場面と、戻せる範囲
入力欄の下書きと、送信済みのプロンプトは扱いが違います。ここを混同すると「戻るはずのものが戻らない」と感じます。
- 送信済みのプロンプトは履歴に残り、
Upでたどれます。履歴は作業ディレクトリごとに保存されます /clearは新しいセッションを始めます。Upで呼び出すと新しいセッションのプロンプトが先に並び、以前のセッションのプロンプトがその後に続きます。前のセッションの会話自体も残り、再開できます- 同じプロンプトを続けて2回送っても履歴は1件です
- 履歴から呼び出したプロンプトに貼り付けたテキストが含まれていた場合、再送時には貼り付けた全文が送られます。ただし貼り付けの内容が自動で整理されて消えていると、
[Pasted text #N]という文字列そのものは送られません
つまり、送信してしまった文面なら/clearのあとでも辿れます。逆に、未送信のまま/clearした入力欄の下書きが復元の対象かどうかは、キー一覧の記載がありません。/clearや終了の前に、下書きは送るかCtrl+Sで退避しておくほうが確実です。会話そのものを後から開き直す方法はresumeコマンドの記事にまとめています。
長い指示を最初から入力欄に直接書かず、Ctrl+Gで既定のテキストエディターを開いて書く手もあります。保存した内容が入力欄に入るので、書いている途中の編集はエディター側の機能に任せられます。手順はCtrl+Gの外部エディター記事にあります。
履歴の↑やキューの↑との関係
Upは、場面によって別の仕事をします。
- 過去に送ったプロンプトの呼び出し
- 入力が複数行のとき、先頭行に着くまではカーソル移動
- Claudeの作業中にメッセージを積んだとき、先頭行の
Upで積んだものを入力欄へ取り戻す
下書きの復元は、空の入力欄でのUpが入口です。Claudeが応答している間に積んだメッセージが残っていると、別の動作が先に起きる可能性があります。
Ctrl+Cを使う別の場面もあります。Ctrl+Rの履歴検索のうち、インライン検索(クラシック表示)の手順には「Ctrl+Cで検索をやめ、検索前の入力に戻す」と書かれています。これは検索の取り消しで、ここで説明した下書き復元とは別の動作です。一方、送信済みの文面を探し直す手段としては有効です。インライン検索は全プロジェクトのプロンプトが対象で、フルスクリーン表示の検索ダイアログではCtrl+Sを押すたびに範囲が今のセッション、今のプロジェクト、全プロジェクトの順に切り替わります。EnterかTabで候補が入力欄に入り、Escで検索をやめます。検索についてはCtrl+R履歴検索の記事にまとめています。
もう1つ、紛らわしい修正があります。v2.1.141で直ったのは、Claudeの応答が始まる前にCtrl+CやEscで取り消したプロンプトが、Upの履歴から抜け落ちる不具合です。送信済みのプロンプトを取り消した場合の話で、入力欄をCtrl+Cで消した下書きの復元とは対象が違います。
消してから慌てないための使い分け
消えたものと状況から、戻し口を選びます。
- 入力欄をまるごと消した: すぐに
Up - 行や単語を消しすぎた:
Ctrl+Y - 編集の途中まで戻したい:
Ctrl+_ - 捨てるが念のため残したい: 消すときに
Escを2回 - あとで続きを書く:
Ctrl+S
Ctrl+Cは予約済みのキーで、keybindings.jsonで割り当てを変えられません。誤爆を避けたくても、キーを外す手は使えず、復元に頼る形になります。予約キーの一覧と設定の書き方はショートカット一覧にあります。
まとめ
Ctrl+Cで入力欄を消すのは1回だけにして、すぐにUpを押します。それで戻らなければ、バージョンと、入力欄に何か打っていないかを確かめます。行や単語の消しすぎならCtrl+Y、編集の取り消しならCtrl+_と、消し方ごとに戻し口が違います。2回押して終了した場合や/clearした場合の下書きは戻せるとの記載がないので、その前に送るかCtrl+Sで退避しておくのが安全です。