Emacs の拡張機能として pangu-spacing というライブラリを公開している人がいる。全角文字と半角文字の間に自動でスペースを入れてくれる機能で、スペースを開ける派の私には大変ありがたい拡張である。難点としては、バッファ全体に自動適用されてしまうので、例えばメールの編集をしているときなど、引用元のメールのテキストに対しても作用してしまうというのがあった。そこで指定したリージョン内だけ pangu-spacing を発動させたいということになる。
少しライブラリを いじって やって、.emacs 内に下記関数を定義すれば、指定リージョンあるいはパラグラフ内に pangu-spacing を適用することができ、かなり実用性を高めることができる。
(defun pangu-spacing-space-current-region ()
""
(interactive "r")
(pangu-spacing-modify-region (region-beginning) (region-end))
)