読者です 読者をやめる 読者になる 読者になる

はてブロ@ama-ch

https://twitter.com/ama_ch

入門GNU Emacs 第3章まとめ

Emacs

第3章を読みました。検索・置換がメインです。

  • 3章
    • 検索と置換

様々な検索方法

キー操作 動作
C-s 前方インクリメンタルサーチ
C-r 後方インクリメンタルサーチ
C-s/C-r Enter C-w 単語検索

C-s/C-rで次を検索、Enterで検索を停止
単語検索は、論文を書く場合や、行をまたぐワードを検索するときに便利。
C-s/C-r Enter キーワード で単純検索。インクリメンタルサーチと比較したメリットがよくわからない。

キー操作 動作
C-s C-w カーソル位置の単語を対象として検索
C-s C-y カーソル位置から行末までを対象として検索
C-s M-y キルリングに保存されてる文字列を対象として検索。M-p/M-nでキルリングを辿ることができる

検索と置換

単純検索と置換
キー操作 動作
M-x replace-string Enter 前方を一括置換

あんまり使わなさそう。

問い合わせ置換
キー操作 動作
M-% 問い合わせ置換

こっちがメインになりそうかな!以下問い合わせ中のコマンド操作

キー操作 動作
Spaceもしくはy 文字列を置き換え、次の検索文字列に移動
Delもしくはn 置換せずに次の検索文字列へ移動
. 現在位置の文字列を置換し、問い合わせ置換モードを抜ける
, 置換を実行し、次の対象に移動する前に実行結果を表示する
! 残りすべてを確認せずに置換
^ 1つ前の検索文字列に移動
Enterもしくはq 問い合わせ置換を終了
E 置換文字列を変更する
C-r 再帰編集を開始する
C-M-c 再帰編集を終了する
C-] 再帰編集を終了し、問い合わせ置換も終了する

問い合わせ置換中にC-rを押すと、再帰編集が開始する。再帰編集とは、コマンドの実行中*1に一時中断し、テキストを編集すること。
例えば「僕は」を「私は」に問い合わせ置換中、「私はは」と誤入力していたことに気付いたら、そこでC-rで再帰編集に入り、「は」を1つ削除する、という作業ができる。

コマンドの再実行

キー操作 動作
C-x Esc Esc 直前に実行したコマンドの再実行

M-p/M-nで履歴をたどれる

正規表現を使った検索・置換

キー操作 動作
C-M-s 順方向に正規表現インクリメンタルサーチ
C-M-r 逆方向に正規表現インクリメンタルサーチ
C-M-% 正規表現での問い合わせ置換

コマンドの後Enterを押すと、単純検索になる。
Emacs正規表現シンタックスがよくわからないから、まだイマイチ使い切れない。Perl互換じゃないのかな?正規表現置換とかできれば作業能率もかなりアップしそうでワクワクします!

単語略称機能

動的略称機能
キー操作 動作
M-/ 入力中の文字で始まる、1番最近の単語を挿入する

スペルチェックと単語略称モードは、あまり使わなさそうだったので省略!

*1:問い合わせ置換だけに限らない