#navi_header|Emacs| sakuraエディタを初めとするWindows上で動作する一般的なテキストエディタでは、「選択範囲に限定して」置換する機能があります。これはプログラミング時に非常に便利で、vimにも搭載されています("V" or C-v で範囲選択した状態で":"にすると、開始-終了が選択範囲になったコマンド入力モードになります)。 Emacsでそれを行うには、「ナローイング」という機能を使います。 詳しい説明は以下のURLを参照して下さい。 http://www.math.s.chiba-u.ac.jp/~matsu/lisp/emacs-lisp-intro-jp_7.html 基本的な使い方としては、まず範囲を選択するにはC-@でリージョン選択を開始した後、範囲選択後 C-x n n or M-x narrow-to-region を実行します。 ''初回実行時には「本当に実行しますか?」と聞かれます。'' y or yesで実行され、以降は質問されません。 すると、選択範囲外のテキストが一切見えなくなります。 なぜ初回実行時に質問されるかというと、ナローイングを知らない初心者にとっては混乱を招くからです。 この状態で検索や置換を行うと、表示されている範囲のみが対象になります。これで「選択範囲内での検索・置換」を行えます。 ナローイングを解除するには widen コマンドを実行します。 M-x widen or C-x n w C-x n はnarrowing 系のプレフィクス・キーで、n がナローイング、wがwidenning と覚えればキー・マップもわかりやすいでしょう。 なお、自分で作成した関数をナローイング対応させる場合の注意点については上述のURLを参照して下さい。簡単にまとめると、save-restriction, save-excursion という二つの特殊形式(special format)を使用して「一時的に」ナローイングを解除して、処理終了後に戻すようにする必要があるかも知れません。 #navi_footer|Emacs|