Hatena::Groupemacs

Emacs/Lisp/Drill

 | 

2012-03-19

expand-region.elとmark-multiple.elをいじっていたらsense-region.elみたいなものができた

23:58 | はてなブックマーク - expand-region.elとmark-multiple.elをいじっていたらsense-region.elみたいなものができた - Emacs/Lisp/Drill

expand-region.elの紹介 - syohex’s diary mark-multiple.elの mark-more-like-thisの紹介 - syohex’s diaryを見ていて、

「おー便利そうだなー。expand-region.elはsense-regoin.elとどう違うのかな」といじってみた。


expand-region.elとsense-regoin.elの違いとしては

  • expand-region.elは選択範囲の拡大縮小に特化しているのでsense-region.elのような矩形選択はない。
  • 選択範囲拡大の挙動はexpand-region.elのほうがいい感じがする。
  • 最初の実行でsense-region.elはset-mark-commandなのに対し、expand-region.elはいきなり範囲選択になっている。

という感じ。


選択範囲拡大の挙動はとても好みなんだけど、やっぱり操作感としてはsense-region.elに慣れているので、そっちに合わせたいなーと関数を作り始めた。

さらにmark-multiple.el内のEmacs Lispをみていたら、inline-string-rectangle.elが矩形選択っぽい挙動をしていたので、

それを拡張するadviceも適当に追加してみた。


そしたら劣化sense-region.elっぽいものができた。


GitHub - k1LoW/emacs-sense-expand-region: (/ (+ sense-region.el expand-region.el inline-string-rectangle.el) 5) ;=> sense-expand-region.el !!


ただのラッパーなんだけれども、それなりに使いやすくて満足。矩形選択後のリージョンコピーもできる(sense-region.elと挙動が違うけど)

最近sense-region.elのサイトアクセスできないので、とりあえず代替として拡張していこうかなと思う。


それよりも

expand-region.elとmark-multiple.elの作者は同じなんだけれども、リポジトリをみていたら鬼軍曹.elと全く同じコンセプトのEmacs Lispを作っていた。


GitHub - magnars/hardcore-mode.el: Disable arrow keys + optionally backspace and return



この人とは仲良くできそうな気がする。

 |