🔍
Emacs チートシート
Emacs チートシート
カーソル移動
機能 | コマンド | 説明 |
---|---|---|
1文字左へ移動 | C-b |
カーソルを1文字左へ移動 |
1文字右へ移動 | C-f |
カーソルを1文字右へ移動 |
1行上へ移動 | C-p |
カーソルを1行上へ移動 |
1行下へ移動 | C-n |
カーソルを1行下へ移動 |
行の先頭へ移動 | C-a |
カーソルを行の先頭へ移動 |
行の末尾へ移動 | C-e |
カーソルを行の末尾へ移動 |
1単語左へ移動 | M-b |
カーソルを1単語左へ移動 |
1単語右へ移動 | M-f |
カーソルを1単語右へ移動 |
前の段落へ移動 | M-{ |
カーソルを前の段落へ移動 |
次の段落へ移動 | M-} |
カーソルを次の段落へ移動 |
ページ上部へ移動 | M-< |
バッファの先頭へ移動 |
ページ下部へ移動 | M-> |
バッファの末尾へ移動 |
スクロールアップ(1画面分) | C-v |
画面を1ページ下にスクロール(カーソルも移動) |
スクロールダウン(1画面分) | M-v |
画面を1ページ上にスクロール(カーソルも移動) |
特定の行番号へ移動 |
M-g g または M-x goto-line
|
指定した行番号へカーソルを移動 |
バッファ操作
機能 | コマンド | 説明 |
---|---|---|
ファイルを開く | C-x C-f |
ファイルを開く、または新しいファイルを作成 |
ファイルを保存 | C-x C-s |
現在のバッファを保存 |
名前を付けて保存 | C-x C-w |
新しい名前でバッファを保存 |
ファイルを閉じる | C-x k |
現在のバッファを閉じる(kill-buffer) |
すべてのバッファを保存 | C-x s |
すべての変更済みバッファを保存 |
バッファの切り替え | C-x b |
バッファを切り替える |
次のバッファへ移動 | C-x <right> |
次のバッファに移動 |
前のバッファへ移動 | C-x <left> |
前のバッファに移動 |
バッファリスト表示 | C-x C-b |
現在のバッファリストを表示 |
ウィンドウ操作
機能 | コマンド | 説明 |
---|---|---|
ウィンドウを左右に分割 | C-x 3 |
現在のウィンドウを左右に分割 |
ウィンドウを上下に分割 | C-x 2 |
現在のウィンドウを上下に分割 |
ウィンドウを閉じる | C-x 0 |
現在のウィンドウを閉じる |
他のすべてのウィンドウを閉じる | C-x 1 |
現在のウィンドウ以外をすべて閉じる |
ウィンドウ間を移動 | C-x o |
次のウィンドウにフォーカスを移動 |
ウィンドウの切り替え(逆順) | C-x O |
前のウィンドウにフォーカスを移動 |
ウィンドウのバッファ切り替え | C-x b |
現在のウィンドウで表示するバッファを変更 |
ウィンドウを上下に切り替え |
M-<up> または M-<down>
|
上下のウィンドウ間で移動 |
ウィンドウを左右に切り替え |
M-<left> または M-<right>
|
左右のウィンドウ間で移動 |
ウィンドウサイズを調整 |
C-x { または C-x }
|
ウィンドウの幅を小さく/大きくする |
ウィンドウの高さを調整 | C-x ^ |
ウィンドウの高さを拡大 |
ウィンドウの配置をリセット | C-x + |
すべてのウィンドウサイズを均等にする |
ウィンドウをスクロール | C-M-v |
他のウィンドウをスクロール(下方向) |
現在のウィンドウの内容を別ウィンドウに複製 | C-x 4 b |
現在の内容を別のウィンドウで開く |
ウィンドウ間でファイルを開く | C-x 4 f |
別のウィンドウで指定したファイルを開く |
他のウィンドウに分割して検索結果を表示 | M-x occur |
検索結果を別ウィンドウに表示 |
ディレクトリ操作
機能 | コマンド | 説明 |
---|---|---|
dired を起動する |
C-x d |
指定したディレクトリを dired モードで開く |
次のファイル/ディレクトリに移動 | n |
次の行に移動 |
前のファイル/ディレクトリに移動 | p |
前の行に移動 |
ファイル/ディレクトリを開く | RET |
カーソル位置のファイルまたはディレクトリを開く |
ファイルを別ウィンドウで開く | o |
カーソル位置のファイルを別ウィンドウで開く |
親ディレクトリに移動 | ^ |
一つ上のディレクトリに移動 |
ディレクトリを再読み込み | g |
現在のディレクトリ内容を再読み込み |
新しいディレクトリを作成 | + |
新しいディレクトリを作成 |
ファイルをコピー | C |
カーソル位置のファイルを指定した場所にコピー |
ファイルを移動/名前変更 | R |
カーソル位置のファイルを指定した場所に移動または名前を変更 |
ファイルを削除マーク | d |
カーソル位置のファイルまたはディレクトリを削除するようマーク |
削除マークを実行 | x |
マークされた削除操作を実行 |
ファイルを削除 | D |
カーソル位置のファイルまたはマークしたファイルを削除 |
ファイルをマーク | m |
カーソル位置のファイルをマーク |
マークを解除 | u |
カーソル位置のファイルのマークを解除 |
すべてのマークを解除 | U |
現在のバッファ内のすべてのマークを解除 |
マークしたファイルをコピー | C |
マークしたすべてのファイルを指定した場所にコピー |
マークしたファイルを削除 | D |
マークしたすべてのファイルを削除 |
ファイル名で絞り込む | / |
指定した正規表現でファイル/ディレクトリを絞り込む |
ファイルを検索 | A |
指定した文字列をマークしたファイルから検索 |
ファイルの詳細表示を切り替え |
( または )
|
ファイルの詳細情報の表示をトグル |
ディレクトリ間で移動 | M-x dired-other-window |
別ウィンドウで dired を開く |
シンボリックリンクを作成 | M-s |
カーソル位置のファイルに対するシンボリックリンクを作成 |
文字入力、文字列操作
機能 | コマンド | 説明 |
---|---|---|
リージョン開始マーク設定 |
C-SPC または C-@
|
現在のカーソル位置をマークとして設定 |
マークへカーソル移動 | C-x C-x |
マーク位置とカーソル位置を交換 |
リージョンをコピー | M-w |
選択したリージョンをコピー |
リージョンをカット | C-w |
選択したリージョンをカット |
カーソルから行末まで削除 | C-k |
カーソル位置から行末まで削除 |
カーソルから行頭まで削除 | C-u C-k |
カーソル位置から行頭まで削除 |
1行全体を削除 | C-S-backspace |
現在の行全体を削除 |
最後にコピー/カットした内容を貼り付け | C-y |
キルリングから貼り付け(ヤンク) |
キルリング内の別の内容を貼り付け | M-y |
直前に貼り付けた内容を切り替えて別の内容を貼り付け |
リージョンをコメントアウト |
C-x C-; または M-;
|
選択範囲をコメントアウト |
コメントを解除 | C-u M-; |
コメントアウトされた行を解除 |
アンドゥ |
C-/ または C-x u
|
最後の操作を取り消す |
リドゥ(アンドゥの取り消し) |
C-g の後 C-/ または C-x u
|
リドゥ操作(依存するバージョンによる) |
検索と置換
機能 | コマンド | 説明 | 使用例 |
---|---|---|---|
単純検索(前方) | C-s |
前方に単純な文字列を検索 |
C-s を押して hello を入力し hello を検索 |
単純検索(後方) | C-r |
後方に単純な文字列を検索 |
C-r を押して world を入力し world を検索 |
正規表現検索(前方) | C-M-s |
正規表現を使用して前方検索 |
C-M-s を押して正規表現 foo[0-9] を入力 |
正規表現検索(後方) | C-M-r |
正規表現を使用して後方検索 |
C-M-r を押して正規表現 bar.* を入力 |
次の一致箇所に進む |
C-s または C-M-s で再入力 |
検索中に次の一致箇所に進む | |
前の一致箇所に戻る |
C-r または C-M-r で再入力 |
検索中に前の一致箇所に戻る | |
一致を編集(クエリ置換) | M-% |
クエリで文字列を置換(確認付き置換) |
M-% を押し foo を bar に置換 |
一致をすべて置換 | M-x replace-string |
全一致を指定文字列に置換 |
M-x replace-string を押し foo を bar に置換 |
正規表現での置換(クエリ) | C-M-% |
正規表現を使用してクエリ置換 |
C-M-% を押し正規表現 foo[0-9] を置換 |
正規表現ですべて置換 | M-x replace-regexp |
正規表現を使用して全一致を置換 |
M-x replace-regexp を押し foo[0-9] を置換 |
大文字・小文字を区別しない検索 | M-x toggle-case-fold-search |
大文字・小文字の区別を切り替える |
foo も Foo も一致させる |
ハイライト検索のトグル | M-x lazy-highlight-cleanup |
検索一致箇所のハイライトをトグル | |
バッファ全体を対象に置換 | 同じコマンドを実行 | すべてのバッファ内の文字列や正規表現を置換 | |
複数ファイル内検索 | M-x grep |
指定したパターンを複数のファイル内で検索 |
M-x grep を押して正規表現 TODO を検索 |
複数ファイル内置換 |
M-x grep + wgrep
|
Grep結果を編集し、複数ファイル内での置換を実行 |
M-x grep の後、結果を編集し保存 |
正規表現
機能 | 正規表現またはコマンド | 説明 | 使用例 |
---|---|---|---|
正規表現検索 | C-M-s |
正規表現を使用して前方検索 | |
正規表現検索と置換 | M-x replace-regexp |
正規表現を使用して検索と置換を実行 | |
任意の1文字 | . |
任意の1文字と一致 |
a.b は aab , acb などに一致 |
任意の文字列(0文字以上) | .* |
任意の文字列(空文字列を含む)に一致 |
a.*b は ab , acb , axyzb などに一致 |
特定の文字セット | [abc] |
a 、b 、c のいずれかと一致 |
[abc] は a , b , c に一致 |
特定文字以外のセット | [^abc] |
a 、b 、c 以外の任意の1文字と一致 |
[^aeiou] は母音以外の文字に一致 |
範囲指定 | [a-z] |
小文字アルファベットの範囲と一致 |
[0-9] は数字に一致 |
文字列の開始 | ^ |
行または文字列の先頭に一致 |
^Hello は行頭のHello に一致 |
文字列の終了 | $ |
行または文字列の末尾に一致 |
world$ は行末のworld に一致 |
単語の境界 | \b |
単語の境界に一致 |
\bcat\b は単独のcat に一致 |
繰り返し(0回以上) | * |
直前のパターンが0回以上繰り返される場合に一致 |
ba* は b , ba , baa に一致 |
繰り返し(1回以上) | + |
直前のパターンが1回以上繰り返される場合に一致(Emacs独自拡張) |
ba+ は ba , baa , baaa に一致 |
繰り返し(0回または1回) | ? |
直前のパターンが0回または1回繰り返される場合に一致 |
ba? は b , ba に一致 |
グループ化 | \( ... \) |
正規表現をグループ化し、キャプチャリングに使用 |
\(ab\)+ は ab , abab に一致 |
選択(または) | | |
左右どちらかのパターンと一致 |
foo|bar は foo または bar に一致 |
後方参照 | \N |
\(...\) でキャプチャしたN番目のグループと一致 |
\(foo\)\1 は foofoo に一致 |
任意の空白 | \s- |
スペースやタブなどの空白文字に一致 |
foo\s-bar は foo bar に一致 |
任意の非空白文字 | \S- |
空白文字以外の任意の文字に一致 |
foo\S-bar は fooXbar に一致 |
数字 |
[0-9] または \d
|
任意の数字1文字に一致 |
\d\d は 42 に一致 |
非数字 |
[^0-9] または \D
|
数字以外の1文字に一致 |
\D は a , - に一致 |
キーボードマクロ
機能 | コマンド | 説明 |
---|---|---|
キーボードマクロの記録開始 | C-x ( |
キーボードマクロの記録を開始 |
キーボードマクロの記録終了 | C-x ) |
キーボードマクロの記録を終了 |
マクロを実行 | C-x e |
記録したマクロを繰り返し実行 |
マクロを複数回繰り返し実行 | C-u [回数] C-x e |
指定した回数マクロを繰り返し実行 |
名前をつけてマクロを保存 | M-x name-last-kbd-macro |
現在のマクロに名前をつける |
名前付きマクロをファイルに保存 | M-x insert-kbd-macro |
名前付きマクロをEmacs Lisp形式でバッファに挿入し保存可能にする |
名前付きマクロを呼び出す | M-x [マクロ名] |
保存したマクロを呼び出して実行 |
登録済みマクロを確認 | M-x list-macros |
利用可能なマクロのリストを表示 |
キーボードマクロをキーバインドに設定 | M-x global-set-key |
キーボードマクロを任意のキーバインドに割り当てる |
基本的な使い方
-
マクロの記録:
-
C-x (
を押してマクロの記録を開始。 - 任意の操作(テキスト編集など)を行う。
- 記録が終わったら
C-x )
を押して終了。
-
-
マクロの実行:
-
C-x e
を押すと記録したマクロを実行。 -
C-u
を使うと回数指定が可能(例:C-u 5 C-x e
は5回実行)。
-
名前をつける・保存・再利用
-
名前をつける:
-
M-x name-last-kbd-macro
を実行し、名前を入力。 - これでマクロが一時的に名前付きで利用可能。
-
-
ファイルに保存:
-
M-x insert-kbd-macro
を使用して、バッファにLisp形式でマクロを挿入。 - ファイルに保存することで再利用可能。
-
-
キーバインドに設定:
-
M-x global-set-key
を使用して、任意のキーにマクロを割り当てる。
-
ヘルプの利用
機能 | コマンド | 説明 |
---|---|---|
ヘルプシステムを起動 | C-h |
ヘルプシステムの基本メニューを表示 |
キーバインドの説明を表示 | C-h k |
特定のキーの機能と説明を表示 |
コマンドの説明を表示 | C-h f |
指定した関数やコマンドの説明を表示 |
変数の説明を表示 | C-h v |
指定した変数の説明と現在の値を表示 |
ドキュメントを検索 | C-h i |
Infoドキュメントシステムを開く |
キーワードで検索 | C-h a |
特定のキーワードに関連するコマンドを検索 |
トピックを検索 | C-h t |
Emacsのチュートリアルを開く |
最近の変更履歴を表示 | C-h n |
Emacsの変更履歴を表示 |
モードのヘルプを表示 | C-h m |
現在のメジャーモードとマイナーモードの説明を表示 |
ドキュメント文字列を検索 | C-h d |
特定の文字列を含むドキュメントを検索 |
キーバインド一覧を表示 | C-h b |
現在のバッファで有効なキーバインド一覧を表示 |
Emacs FAQ を表示 | C-h C-f |
EmacsのFAQを表示 |
外部パッケージのヘルプを表示 | C-h P |
インストール済みのパッケージの説明を表示 |
Emacsバージョン情報を表示 | C-h C |
現在のEmacsのバージョン情報を表示 |
Discussion