2011/04/10

eval-buffer をちょこっといじる



ほんとに些細なことなんだけど eval-buffer でいちいちバッファの名前を聞かれるのがうざい。


カレントバッファ以外を eval-buffer することはめったにないので、インタラクティブに呼ばれたときはカレントバッファを対象とするようにした。



(defvar eval-buffer-orig nil)

(unless (functionp eval-buffer-orig)
(setq eval-buffer-orig (function eval-buffer)))

(defun eval-buffer (&optional buf)
(interactive)
(if (interactive-p)
(funcall eval-buffer-orig (selected-buffer))
(funcall eval-buffer-orig buf)))

;(eval-buffer (selected-buffer)) と書かれてるバッファでやると無限ループになる
; そんなときは C-g すべし(コメントにしとけば問題なし)


単にすげ替えてるだけだけど、




  • これを書いたバッファが複数回 eval-buffer されたときのことも一応考えといた

  • 非インタラクティブに呼ばれたときのことも一応考えといた


こういうの書くのはおもしろい。





Related Posts Plugin for WordPress, Blogger...

0 コメント :

コメントを投稿