- fancy-narrow 20160124.403(in MELPA)
- narrow-to-region with more eye candy.
概要
ナローイング とは、テキストの一部のみを表示するもので、
編集操作をその部分に限定できます。
一方、ナローイングされたことに気付かなかったりすることもあります。
そこで、 fancy-narrow.el はナローイングの
範囲外においては薄い色で表示させます。
とはいえ実装を見てみると、
elispで「見える化されたナローイング」を実装していて
ナローイングで起こる各現象をエミュレートしています。
たとえば、 point-min や point-max が
fancy-narrowの開始・終了位置を返すようになったり、
カーソル移動コマンドがfancy-narrowの範囲外に行かないように
アドバイスがかけられています。
マイナーモード M-x fancy-narrow-mode を有効にすると、
ナローイング系のC-x nコマンド群がfancy-narrowバージョンに
再割り当てされます。
Fig1: C-x n dでその関数以外を薄い色にする
インストール
パッケージシステムを初めて使う人は
以下の設定を ~/.emacs.d/init.el の
先頭に加えてください。
(package-initialize) (setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/") ("melpa" . "http://melpa.org/packages/") ("org" . "http://orgmode.org/elpa/")))
初めてfancy-narrowを使う方は
以下のコマンドを実行します。
M-x package-install fancy-narrow
アップグレードする方は、
以下のコマンドでアップグレードしてください。
そのためにはpackage-utilsパッケージが必要です。
M-x package-install package-utils (初めてアップグレードする場合のみ) M-x package-utils-upgrade-by-name fancy-narrow
narrow-indirect.elと比較
「ナローイングされたことをわかるようにする」という目的では、
間接バッファを使ったnarrow-indirect.el(レビュー) もあります。
fancy-narrow.elは無数のアドバイスにより
標準の関数の挙動を変更しているので、
かなり強引と言わざるを得ません。
対して間接バッファをナローイングしているだけの
narrow-indirect.elはフックやアドバイスもなくクリーンです。
設定 150224052934.fancy-narrow.el(以下のコードと同一)
(fancy-narrow-mode 1)
実行方法
$ wget http://rubikitch.com/f/150224052934.fancy-narrow.el $ emacs -Q -f package-initialize -l 150224052934.fancy-narrow.el
本サイト内の関連パッケージ
- narrow-indirect - Narrow using an indirect buffer that is a clone
- focus - Dim the font color of text in surrounding sections
本日もお読みいただき、ありがとうございました。参考になれば嬉しいです。