emacsメモ


emacsのコマンドについて調べたことをまとめました


まず初めに

  • Ctrlキー(コントロールキー)を'''C-'''、ESCキー(エスケープキー)を'''Esc-'''、'Alt(オルト)キーを''M-'''と表記する
  • CtrlキーとAltキーは「コントロールキーを押しながら他の文字キーを押す」、ESCキーは「エスケープキーを押してから離し、これに続いて文字キーを押す」という使い方をする
  • Ctrlキーを押しおしながらAのキー(即ち小文字のa)を押す操作のことを'''C-a'''と表記
  • Altキーを押しおしながらCのキー(即ち小文字のc)を押す操作のことを'''M-c'''と表記
  • ESCキーを押した後でVのキー(即ち小文字のv)を押す操作のことを '''Esc-v'''と表記

起動について

  • C-x C-c : emacsを終了させる
  • C-x C-f : 新しい(別の)ファイルを読み込んで編集する

困ったときは

  • C-g : CtrlキーやESCキーを使ったコマンド入力時の操作を中断する
  • C-x u 又は C-\(バックスラッシュ) : 最後の(直前の)変更を取り消す操作(Undo機能)

基本的な処理

ファイル操作

  • C-x C-f : ファイルを開く
  • C-x C-s : ファイルの保存
  • C-x C-w : 名前を付けて保存
  • C-x k : ファイルを閉じる

カーソル移動コマンド

  • C-p : 一行戻る
  • C-n : 一行進む
  • C-b : 一文字戻る
  • C-f : 一文字進む
  • C-a : 行の先頭に移動
  • C-e : 行の末尾に移動
  • M-< : ファイルの先頭に移動
  • M-> : ファイルの末尾に移動

削除

  • C-d : カーソル位置の文字の削除
  • DEL, backspace : カーソルの左側の1文字削除
  • C-k : カーソル位置から、その行の行末までの削除

選択範囲の選択

  • C-x h : 全範囲を選択
  • 指定範囲を選択
    1. C-space(またはC-@)コマンドでマークの設定を行う
    2. カーソル移動コマンドで選択範囲を広げる

コピー

  1. コピーする範囲を選択
  2. Esc-wコマンドで選択範囲がコピーされる

移動(カット&ペースト)

  • 一行を移動させる
    1. C-k(あるいはC-wやEsc-wなど)コマンドによって、削除された文字列が削除リングと呼ばれる領域に保存される
    2. C-yコマンドによって、削除リンクの内容をそのときのカーソル位置に挿入することができる
  • 複数行にを移動させる
    1. C-space(またはC-@)コマンドでマークの設定を行う
    2. C-wコマンドでマークを設定した箇所からカーソル前までを削除し、削除内容を削除リンクへコピーする
    3. Esc-wコマンドの場合は、マークを設定した箇所からカーソル前までを削除せずに削除リングへコピーする 
    4. C-yコマンドによって、削除リンクの内容をそのときのカーソル位置に挿入することができる

文字列検索

  • 前方検索(カーソル以降が検索対象)
            コマンド:C-s
            エコーエリアの表示:I-search:_
            カーソルを次候補へ移動させるコマンド:C-s
  • 後方検索(カーソル以前が検索対象)
             コマンド:C-r
             エコーエリアの表示:I-search backward:_
             カーソルを次候補へ移動させるコマンド:C-r
  • 検索する文字列全体を入力してから検索する場合
             コマンド:C-s <ENTER>
             エコーエリアの表示:Search :_
  • 日本語文字列の検索
             コマンド:C-s C-\ または C-r C-\
             エコーエリアの表示:[あ] I-search :_
             検索の開始:<ENTER>

文字列が見つかれば、Enterキーで検索を終了させる

日本語の入力

  • Shift-Spaceを押すか、C-\コマンドで切り替え可能

カタカナの入力

  • Shift-kコマンドで変更可能

文節の区切り範囲の変更

  • C-i:文節を短くする
  • C-o:文節を長くする

ポイント位置(特定位置)へのタブ挿入

  • C-q TAB

特殊な処理

選択した範囲をコメントアウトにする処理

プログラム書くときとかに便利なはず
  1. C-space(またはC-@)コマンドでマークの設定を行う
  2. カーソル移動コマンドを使って選択範囲を決める
  3. M-;(セミコロン)コマンドで選択範囲をコメントアウトする
  4. もう一度M-;(セミコロン)コマンドを行えば元に戻る

選択した範囲のインデント(タブ)を揃える処理

  1. C-space(またはC-@)コマンドでマークの設定を行う
  2. カーソル移動コマンドを使って選択範囲を決める
  3. C-M-\(バックスラッシュ)コマンドで選択範囲のインデントを揃えることができる
Comments