← 外部参考資料 ループシステム(Loop Engineering) →

17 CLI操作・キーバインド — プロンプト入力欄を使い倒す


ターミナル版Claude Codeの「プロンプト入力欄」でのキーバインド・編集操作を網羅。全選択・消去・行編集・Vim・履歴検索まで。Windows PowerShell + Windows Terminal環境での使い方と落とし穴も解説。公式ドキュメント(code.claude.com)準拠。


📑 セクション一覧(目次)


A. 行編集の基本

デフォルトは Emacs風キーバインド。Ctrl キーの組み合わせでカーソル移動と削除を行う。

カーソル移動

ショートカット 動作
Home / Ctrl+A 行頭へ移動(マルチラインでは現在の論理行の先頭)
End / Ctrl+E 行末へ移動
/ 左右に1文字移動
Alt+B 1単語戻る
Alt+F 1単語進む
/ 履歴を移動(折り返し行内では先にカーソル移動)

削除

ショートカット 動作
Backspace カーソル前の1文字削除
Delete カーソル位置の1文字削除
Ctrl+K カーソルから行末まで削除(削除分は貼り付け用に保持)
Ctrl+U カーソルから行頭まで削除(マルチラインでは繰り返しで全体クリア)
Ctrl+W 前の1単語を削除(Windowsでは Ctrl+Backspace も同じ)
Ctrl+Y 削除したテキストを貼り付け(Ctrl+K/U/W で削ったもの)
Alt+Y 貼り付け履歴を循環(Ctrl+Y 直後に使用)

💡 よくある勘違い: 「全部消したい → Backspace連打」ではなく Ctrl+U(行頭まで削除)か 後述の Esc×2(入力クリア)が正解。


B. 全選択・全消去・入力欄クリア

🟡 「全選択」の公式ショートカットはありません。 シェルのようにマウスドラッグで範囲選択はできるが、キーボード1発で「入力欄をすべて選択」する機能は提供されていない。代わりに下記を使う。

やりたいこと ショートカット 説明
入力をすべて消す Esc ×2 入力がある場合: 入力をクリアして履歴に保存( で呼出可)。入力がない場合: リワインドメニューを開く
カーソルより前を消す Ctrl+U 行頭まで削除。カーソルを末尾に置いてから押せば実質「全消去」
カーソルより後を消す Ctrl+K 行末まで削除
画面をクリア Ctrl+L 画面を再描画。入力と履歴は保持
画面クリア(フルスクリーン) Cmd+K / Ctrl+K* フルスクリーン描画時。2回押しで /clear 相当

Ctrl+K は「行末まで削除」と「フルスクリーン画面クリア」の2役。文脈(通常入力中 vs フルスクリーン描画中)で挙動が変わる。

「全部消して書き直したい」時の定石

  1. Esc を2回押す → 入力がクリアされる(履歴に残るので安心)
  2. 新しく書き直す

C. 履歴の呼び出し

操作 ショートカット 説明
前/次のコマンド / または Ctrl+P / Ctrl+N 現在のワーキングディレクトリ単位で履歴を保持
履歴の逆検索 Ctrl+R 対話的に履歴を検索(一部入力で絞り込み)
検索スコープ切替 Ctrl+S(検索中) セッション → プロジェクト → 全プロジェクト で循環
検索結果を編集 Tab または Esc 検索を終了して編集続行
検索結果を実行 Enter そのまま送信
検索をキャンセル Ctrl+C 元の入力を復元

履歴の特性:


D. Vimモード / Emacsモード

モード切替

/config → Editor mode → vim(または emacs)

デフォルトは Emacs風(A章の Ctrl キー操作)。Vim派は vim に切替できる。

Vimモード早見表

モード遷移:

切替 キー
INSERT → NORMAL Esc
NORMAL → INSERT i(前) / a(後) / I(行頭) / A(行末)
NORMAL → VISUAL v(文字) / V(行)

NORMALモード — 移動:

キー 動作
h/j/k/l ← / ↓ / ↑ / →
w/e/b 次の単語 / 単語末尾 / 前の単語
0 / $ / ^ 行頭 / 行末 / 行頭(空白飛ばし)
gg / G 入力の先頭 / 末尾

NORMALモード — 編集:

キー 動作
x / dd / D 1文字削除 / 1行削除 / 行末まで削除
cw / cc / C 単語変更 / 行変更 / 行末まで変更
yy / p 1行ヤンク / 貼り付け
u / . アンドゥ / 最後の変更を繰り返し

⚠️ Vimモードでは Esc が「NORMALモード切替」に使われるため、応答中断(後述G章)は Ctrl+C 等を使う。


E. 複数行入力・改行

1つのプロンプト内で改行を入れる方法。Windows Terminal では Shift+Enter が対応

方法 ショートカット 対応環境
バックスラッシュ \ + Enter 全ターミナル(設定不要)
Shift+Enter Shift+Enter iTerm2 / WezTerm / Ghostty / Kitty / Warp / Apple Terminal / Windows Terminal
Option+Enter Option+Enter macOS(Option as Meta 要)
Ctrl+J Ctrl+J 全ターミナル(設定不要)
直接ペースト コードブロック/ログを貼り付け

※ VS Code / Cursor / Alacritty / Zed では /terminal-setup を実行して Shift+Enter バインディングをインストールする必要がある。


F. コピー&ペースト

🟡 Windows Terminal では Ctrl+Shift+V で貼り付け。 Ctrl+V 単体は Claude Code では画像貼り付けに割り当てられている。

操作 ショートカット 備考
テキスト貼り付け Ctrl+Shift+V Windows Terminal のデフォルト
画像貼り付け Ctrl+V / Alt+V(WSL) [Image #N] チップを挿入
選択テキストコピー Ctrl+Shift+C Windows Terminal 側の機能

G. 中断・終了・バックグラウンド化

操作 ショートカット 説明
操作の中断 Ctrl+C 実行中の操作を中断。入力時は 1回目で入力クリア、2回目で終了
セッション終了 Ctrl+D EOF信号で終了
レスポンス中断 Esc Claude の応答を停止(作業内容は保持)
バックグラウンド化 Ctrl+B Bash/Agent をバックグラウンドへ(tmux では2回押し)

H. その他便利ショートカット

操作 ショートカット 説明
トランスクリプト表示 Ctrl+O ツール使用 / MCP呼び出しを展開表示
外部エディタで編集 Ctrl+G / Ctrl+X Ctrl+E $EDITOR/$VISUAL でプロンプト編集
タスクリスト表示 Ctrl+T タスク進捗の表示/非表示
モデル切替 Alt+P モデルピッカーを開く(プロンプト保持)
ファストモード切替 Alt+O ファストモード ON/OFF
Extended Thinking切替 Alt+T Extended Thinking ON/OFF
権限モード循環 Shift+Tab / Alt+M default → acceptEdits → plan → auto…

I. Windows PowerShell / Windows Terminal のハマりどころ

ターミナルとの競合

ショートカット Claude Code側 ターミナル側 備考
Ctrl+V 画像貼り付け WSLでは Alt+V も有効
Ctrl+A 行頭移動 すべて選択 Claude Code では行頭移動が優先
Ctrl+C 中断 コピー PowerShell設定で調整可能
Ctrl+Shift+C/V コピペ Windows Terminal のデフォルト

優先順位と注意点

設定推奨(Windows Terminal settings.json)

ペーストを Ctrl+Shift+V に固定しておくと安全:

"commands": [
  { "command": "paste", "keys": "ctrl+shift+v" }
]

J. キーバインドのカスタマイズ

~/.claude/keybindings.json でカスタマイズ可能:

{
  "$schema": "https://www.schemastore.org/claude-code-keybindings.json",
  "bindings": [
    {
      "context": "Chat",
      "bindings": {
        "ctrl+k": null,
        "ctrl+e": "chat:externalEditor"
      }
    }
  ]
}

予約済み(再割り当て不可):

ショートカット 役割
Ctrl+C 中断 / キャンセル(ハードコード)
Ctrl+D 終了(ハードコード)
Ctrl+M Enter と同一(CR送信)

詳細は /keybindings コマンド、または公式「Customize keyboard shortcuts」を参照。


参考資料