magnars/expand-region.el · GitHub
expand-region.elの紹介。結構便利と思う人が多いんじゃないかなと
勝手に思っています。
追記
まだ大きく変更されていることがあるものなので、定期的にアップデートした方が
よいと思います。
気になる方は githubでプロジェクトをwatchしておくとよいでしょう。
設定
githubから cloneしてそこに load-pathを設定しておいてください。
;; expand region (add-to-list 'load-path "~/.emacs.d/expand-region.el") (require 'expand-region) (global-set-key (kbd "C-@") 'er/expand-region) (global-set-key (kbd "C-M-@") 'er/contract-region) ;; リージョンを狭める ;; transient-mark-modeが nilでは動作しませんので注意 (transient-mark-mode t)
概要
er/expand-regionを実行する度にリージョンの範囲が広がっていくという
ものです。Emacsは Vimに比べて単語単位以上のものを扱うのはとても弱い
です。単語のリージョン選択、引用符で囲まれたものの選択等々。
これらを改善するために @m2ymさんのthingoptなんかがあるわけですが、
関数がいっぱいあって、こちらでkeychordを使った設定などが載っていますが、
やっぱりたくさんあって大変です。expand-region.elっていうのは小回りは効かないかも
しれないですが、そのあたりのことを改善するツールです。
実行結果
er/expand-regionを実行する度に以下のように選択範囲が広がります。
(狭めるときは er/contract-regionを実行してください)
コンテキストによって変わることもあります。
バッファごとに広げ方を変更できたりといろいろ拡張も
考えられているようです。
終わりに
検索中の Ctrl-wのような感じで使えるので、
どなたでもわりと簡単に便利に使えるんじゃないかなと思います。