例えば,ファイル内に含まれているある文字列を,全て編集したいような場合があるとします. 先ほどから書いている程度の分量であれば特に問題はありませんが,もっと長い文章が沢山書かれているファイルにおいて,編集したい部分を目で探すのは大変です. そこで Emacs の文字列の検索を行う便利な機能を利用しましょう.
検索方法にも実は色々ありますが,ここでは一単語ごと順々に検索するものをご紹介します. 練習のためにここでは以下のテキストファイルを使用します.ダウンロードして適当な場所に保存後,Emacsで開いて下さい.
Alice was beginning to get very tired of sitting by her sister on the bank, and of having nothing to do: once or twice she had peeped into the book her sister was reading, but it had no pictures or conversations in it, `and what is the use of a book, ' thought Alice `without pictures or conversation?' So she was considering in her own mind (as well as she could, for the hot day made her feel very sleepy and stupid), whether the pleasure of making a daisy- chain would be worth the trouble of getting up and picking the daisies, when suddenly a White Rabbit with pink eyes ran close by her. (Lewis Carroll, "Alice's Adventures in Wonderland")
次のような入力をすることで検索することができます.
キー | 機能 |
---|---|
s | ポイントから前方向 (ファイルの終わりに向かう方向) に検索 |
r | ポイントから後方向 (ファイルの先頭に向かう方向) に検索 |
では実際に‘Alice’という文字列がどこに出現するのかを検索してみましょう.
ポイントがファイルの先頭にある状態で s と入力すると,ミニバッファが以下のようになるはずです.
ここで‘A’と入力して下さい.間違えたらで修正して下さい.ミニバッファに‘A’と表示されます.また同時にファイル本文の先頭の‘Alice’と書かれている部分の‘A’が目立つように色が変わり,その右にポイントが移動します. 次々と‘l’,‘i’,‘c’,‘e’と入力して行って下さい. 入力するたびにマッチする文字の色が変わっていきます. 以下のようにポイントに一番近い Alice が目立つように色が付きます.
‘Alice’と入力し終わったら,を入力して検索を終えましょう.
このように,ポイントの位置より前方向で,入力とマッチする文字列の内,一番ポイントの近くにあるものを検索してくれることになります.
そうすると, r はどのような動作をするか想像がつきますね? ポイントをファイルの末尾に置いた状態で r を入力し,また‘Alice’を検索してみて下さい.
該当する文字列が存在しないような場合には,ミニバッファに以下のように表示されます.
さて,ポイントに最も近い文字列を検索することができましたが,ファイル内に同じ文字列はもっと存在するはずなので,一つ発見しただけで満足とはいえません. そこで再検索を行いましょう.
例えば,ポイントが本文の先頭にある状態で, 一度前向きに Alice を検索したとします (つまり先頭の Alice が目立っている状態). そこで s を入力して下さい. 2番目に出現する‘Alice’に目立つ色とポイントが飛んだと思います. さらに s を入力すると,検索文字列が存在する限りポイントが移動し続けます.
一度 を入力して検索を終えた場合でも, s s と入力すると,直前の検索文字列で検索を再開できます.
15.4.2.3 キャンセルの方法 | 15.4.2.4 検索 | 15.4.2.5 置換 | ||
2009年度版に向けて現在作業中です.
このページに関してお気づきの点がありましたら
コメント投稿システムまでお願いします.
|
Tue, 08 Mar 2005 01:18:58 JST (1607d) |