Meta+up/downでカーソルと一緒に行を動かす
Eclipseのエディタでできるんだけど便利なので
Emacsでもできるようにしてみた。
(defun exchange-lines-up () (interactive) (if (= 1 (line-number-at-pos)) nil (transpose-lines 1) (previous-logical-line 2))) (defun exchange-lines-down () (interactive) (next-logical-line 1) (transpose-lines 1) (previous-logical-line 1)) (global-set-key [(meta up)] 'exchange-lines-up) (global-set-key [(meta down)] 'exchange-lines-down)
最近見様見真似でEmacs Lisp書き始めました。
エディタのカスタマイズって楽しい。。。
最初は現在行を切り取り、前/後の行を切り取り、交換してぺたっと貼る
という方法でやってたんですが、あとからtranspose-linesがあることに気づきました。おかげですっきり。