Claude Codeで長いプロンプトをよく書く人で、入力欄での編集操作を高速化したい人向け
長文プロンプトやCLAUDE.md(プロジェクト用の覚え書きファイル)の長い指示を書いている途中で、マウスを触らず行頭の単語を直したい・末尾の数単語を消して書き直したい・複数行入力をまるごと消したい場面で、9キーを役割別(移動/単語ジャンプ/削除/貼り戻し)に使い分ける
Claude Codeの入力欄で長い文章を書いていて、行頭の単語を直したいだけなのに矢印キーを連打して指が疲れる、という場面で使う9個のキー集合のことです。中身はターミナル文化圏で40年使われてきた readline ネイティブの編集キーで、Claude Code が独自に作ったものではありません。だからこそ覚えると Bash の入力欄でもそのまま効きます。
この9キーは「カーソル移動」「単語ジャンプ」「削除」「貼り戻し」の4グループに分けると頭に入りやすい。マウスを触らず指がホームポジションから離れない、というのが最大の利点です。
先に押さえる前提:readline って何ですか
Text editing 表の9キー全部が、readline と呼ばれる入力受け付けプログラムの伝統的な編集キーです。Claude Code が自前で定義したわけではなく、Bashのコマンドライン、Python の対話モード、psql の入力欄など、ターミナルで文字を打ち込むほぼ全ての場面で同じ動作をします。
つまりここで覚えたキーは Claude Code 以外でも使い回せます。お得です。
macOSの人は最初に Option as Meta 設定をしないと Alt 系3つが動かない
9キーのうち Alt+B Alt+F Alt+Y の3つだけは、macOSの初期状態だと反応しません。公式ドキュメントもこの3つを名指しで「macOS では Option as Meta を有効にしないと使えない」と書いています。
設定は3パターン。お使いのターミナルアプリに合わせて1回だけ設定すればOKです。
- iTerm2: Settings → Profiles → Keys → General → Left/Right Option key を「Esc+」に変更
- Apple Terminal(純正): Settings → Profiles → Keyboard → 「Use Option as Meta Key」にチェック
- VS Code: settings.json に
"terminal.integrated.macOptionIsMeta": trueを追加
WindowsとLinuxの人はこの設定は不要です。最初から動きます。
9キーを役割で4グループに分けて覚える
1個ずつバラバラに覚えようとすると挫折します。役割で4つに束ねる。
グループ1: 行頭・行末ジャンプ
Ctrl+A: いま入力中の行の先頭にカーソルを飛ばすCtrl+E: いま入力中の行の末尾にカーソルを飛ばす
複数行入力では、その「論理行」の頭と末尾に飛びます。プロンプト全体の頭ではなく、いまいる行の中だけ。
グループ2: 単語単位でジャンプ
このグループの2キーは、macOSだけ Option as Meta 設定が必須です。
Alt+B: カーソルを1単語ぶん後ろに戻す(Back)Alt+F: カーソルを1単語ぶん前に進める(Forward)
矢印キーで1文字ずつ動かすより、長い単語をスキップできて速い。プログラミング用語みたいな長い英単語を相手にする時に効きます。
グループ3: 削除
この3キーで消したテキストは、後で説明する kill ring という削除専用バッファに自動で貯まります。
Ctrl+K: カーソル位置から行末まで削除Ctrl+U: カーソル位置から行頭まで削除。複数行入力では繰り返し押すと行をまたいで上の行も巻き込んで消えるCtrl+W: カーソルの1個手前の単語を削除。WindowsではCtrl+Backspaceも同じ動作になります(公式 verbatim「On Windows,Ctrl+Backspacealso deletes the previous word」)
削除系3つはどれも、消したテキストを kill ring に保存します。後で貼り戻せるのがミソ。普通の Delete とは違います。
グループ4: 貼り戻し
このグループはグループ3とセットで使います。
Ctrl+Y: 直前にCtrl+KCtrl+UCtrl+Wで消したテキストを貼り戻すAlt+Y:Ctrl+Yで貼り戻した直後にだけ使える。kill ring の履歴をめくって、もっと前に消したテキストに切り替える
Alt+Y は単独では絶対に動きません。Ctrl+Y を押した直後の文脈でしか機能しない、特殊な「履歴めくり専用キー」です。
「料理ブログの CLAUDE.md を書き換える」を例に、9キーを連続で使ってみる
具体的なシーンで実演します。料理ブログサイトを作っていて、Claude Code の入力欄にこんな長い指示を書いてる途中だと思ってください。
料理サイトのトップに、新着レシピを6個並べてください。各カードは画像と
タイトルとカロリーを表示。下にはカテゴリ別の人気ランキングも作って
書いてる最中に「あ、料理サイト じゃなくて レシピサイト の方が正確だな」と気付いた、というシナリオ。マウスを触らず指だけで直していきます。
ステップ1: Ctrl+A で行頭に飛ぶ
いまカーソルは最後の「作って」の後ろにあります。普通に矢印キーで戻すと相当な回数押すことになる。Ctrl+A で1発で行頭です。
ステップ2: Alt+F で「料理サイト」の右端まで進む
行頭に着いたら、消したい「料理サイト」のすぐ後ろまでカーソルを進めます。Alt+F を1回押せば1単語分前進。日本語の単語境界は readline の実装に依存しますが、一般的には連続するカタカナ・漢字の塊が1単語扱いになります。
ステップ3: Ctrl+W で「料理サイト」を削除
Ctrl+W は「カーソルの1個手前の単語を消す」キー。いまカーソルは「料理サイト」の右端にいるので、これを1回押すと「料理サイト」がまるごと消えて、その文字列は裏の kill ring に保存されます。
ステップ4: 「レシピサイト」と打ち直す
消えた跡にそのまま打ち込めばOK。
ステップ5: Ctrl+E で行末に飛ぶ
今度は末尾を直したい。「下にはカテゴリ別の人気ランキングも作って」の「作って」を消したい、と仮定。Ctrl+E で末尾に飛びます。
ステップ6: Ctrl+W を1回押して末尾1単語削除
「作って」が kill ring に追加されて消えます。3単語消したければ Ctrl+W を3回連打。
ボーナス: Ctrl+Y → Alt+Y で過去に消したテキストを引っ張り出す
「あ、さっき消した『料理サイト』をもう一度どこかに使いたい」と思ったら、Ctrl+Y で最後に消したもの、つまりさっきの「作って」が貼り付きます。続けて Alt+Y を押すと、その1つ前に消した「料理サイト」に切り替わります。
こういう「履歴めくり」が標準で付いてるのが、readline 系の強み。私は記事執筆中によく長文を消して別の表現を試すので、この貼り戻しは保険として効きます。
つまりこの9キー集合は何をしてくれるのか
- やってくれる: 入力欄の中でマウスなしで素早く編集する一通りの操作。行頭末ジャンプ、単語単位移動、3種類の削除、貼り戻し、削除履歴めくりが含まれます
- やってくれない: Claude Codeの設定変更、過去会話の検索、ファイル編集。あくまで入力欄の中の文字操作だけ
- 意味が薄い場面: 短文だけのプロンプトしか書かない使い方。10〜20文字程度なら矢印キーで間に合うので学習コストの方が高い
使いどころ3シナリオ
シナリオ1: CLAUDE.mdに長文の運用ルールを書いている最中
例えば家計簿アプリのプロジェクトで「データ保存はSQLite、UIはshadcn/ui、認証は不要、エラー時は日本語メッセージ」みたいな300字超の指示を書いてる時。書き終わってから「冒頭の SQLite を PostgreSQL に直したい」となったら、Ctrl+A で頭まで戻って Alt+F で単語移動 → Ctrl+W で削除、が最速です。
矢印キーで戻ると30回くらいキーを叩くことになる。これは正直やってられない。
シナリオ2: 一度書いた長文プロンプトを大幅に書き直したい
「やっぱりこの方向性じゃなく、全部書き直そう」となった時、Ctrl+U を行末から押すと現在行が全消去されます。複数行プロンプトの場合は Ctrl+U を繰り返すと前の行も巻き込んで消えます。Ctrl+C で入力欄ごと一度キャンセルする手もあるけど、それだと内容が完全消失。Ctrl+U なら kill ring に残るので、後で Ctrl+Y で復活可能です。
シナリオ3: macOS の Cmd+Backspace でうっかり1行消した時の救済
macOSの iTerm2 / Apple Terminal は Cmd+Backspace を内部的に Ctrl+U にマップしています。つまり Mac で普通に「Cmd+Delete で1行消す」感覚で押すと、Claude Code の入力欄では裏で Ctrl+U が走っています。やってしまったらすぐ Ctrl+Y。消した内容がそのまま戻ります。これ知らないと一瞬で1分前の打鍵が消えて凍りつきます。
初心者が踏みやすい落とし穴
- macOSの Alt 系3つは Option as Meta を設定しないと無反応。
Alt+BAlt+FAlt+Yの3キーが対象。「動かない、壊れてる」と思いがちですが、原因はターミナル側の設定です。iTerm2 / Apple Terminal / VS Code でそれぞれ1回だけ設定すれば永続化します Ctrl+Eは文脈で意味が変わる。普通の入力欄では「行末ジャンプ」ですが、Ctrl+Oで開いた transcript viewer の中では「全コンテンツ表示の切り替え」に化けます。同じキーで動作が違うので混乱注意Ctrl+Yで貼り戻すのは Mac の Cmd+V とは別系統。kill ring に貯まったテキストだけが対象。普段OSのクリップボードにコピーしておいた内容は出てきませんAlt+Yは単独で押しても何も起きない。直前にCtrl+Yを押した直後の限られた瞬間にだけ反応する。「あれ、効かない」と思ったらまずCtrl+Yから始める- Vim editor mode を有効にしていると一部キーが乗っ取られる。
/config→ Editor mode で vim にしている場合、Ctrl+AやCtrl+Eは vim の motion 側にバトンタッチしている可能性があります。vimの normal モードで行頭は0、行末は$なので、そっちが正解。違和感があったら vim mode の設定を疑う - 画像ペーストの
Ctrl+Vと混同しない。Claude Codeの入力欄ではCtrl+VCmd+V(どちらも iTerm2)/Alt+V(Windows)がクリップボード画像のペースト用に割り当てられています。これは Text editing 表ではなく General controls 表のキーで、グループが違います - 日本語の単語境界は環境依存で挙動が安定しない。
Ctrl+WやAlt+BAlt+Fの「単語の区切り」は readline の word definition に従いますが、句読点「、」「。」をどう扱うかは端末・ロケール設定次第。英単語ほどキレイには動かないので過信は禁物 - Windows の
Ctrl+BackspaceはCtrl+Wと同じ動作(公式 verbatim「On Windows,Ctrl+Backspacealso deletes the previous word」)。前単語が削除されて kill ring に保存されるので、意図せず消えてしまった時はCtrl+Yで復元できます - これらのキーは
keybindings.jsonでの rebind 対象に入っていないと思われる。公式の keybindings ドキュメントの Chat actions 表にはCtrl+A/E/K/U/W/Yに該当する action 名が見当たりません。readline 層のキーなので、Claude Code の設定では変更できないと思っておいた方が安全です
書き方
Ctrl+A 行頭へ
Ctrl+E 行末へ
Alt+B 1単語戻る(macOSは Option as Meta 必須)
Alt+F 1単語進む(macOSは Option as Meta 必須)
Ctrl+K 行末まで削除
Ctrl+U 行頭まで削除(繰り返しで複数行消去)
Ctrl+W 1単語前を削除(Windowsは Ctrl+Backspace も同じ)
Ctrl+Y 直前に削除したテキストを貼り戻す
Alt+Y Ctrl+Yの直後に押して削除履歴をめくる(macOSは Option as Meta 必須)
やってみるとこうなる
入力
(入力欄に長文プロンプトを書いている状態で)
Ctrl+A → Alt+F → Ctrl+W → 「レシピサイト」と打ち直す → Ctrl+E → Ctrl+W
出力例
カーソルが行頭に飛び、1単語右に進み、その単語が削除されて kill ring に保存され、新しい単語に置き換わる。続いて行末に飛び、末尾1単語が削除される。マウス操作ゼロで6操作が完了する
このページに出てきた言葉
- readline
- ターミナルの入力欄で文字編集を受け付けてくれる、裏で動いてる共通プログラム。1980年代から続く伝統的な仕組み
- kill ring
- readline が用意している削除専用のクリップボード。<code>Ctrl+K</code> / <code>Ctrl+U</code> / <code>Ctrl+W</code> で消した文字列が順番に積まれる。OS標準のクリップボードとは別系統
- Option as Meta
- MacのOptionキーをターミナルがAlt相当として認識するようにする設定。これが無効だと <code>Alt+B</code> <code>Alt+F</code> <code>Alt+Y</code> が反応しない
- 論理行
- 複数行入力で「Enterを押す前の1まとまり」のこと。画面で折り返されて見えても、Enterを押してなければ論理行は1本
- 複数行入力
- プロンプトに改行を含めて長文を打ち込むモード。<code>\</code> + Enter、Shift+Enter(iTerm2など)、Option+Enter(Macで設定済み)で発動
- transcript viewer
- <code>Ctrl+O</code> で開く会話履歴の詳細表示画面。この中では <code>Ctrl+E</code> の意味が「全コンテンツ表示の切り替え」に変わる