loop マクロの使用例
erc以外のバッファに対してkill-bufferする関数 - IMAKADO::BLOG
無駄が多いのが気になったので添削。
- loop 使ってるのに mapcar は無駄なループ。
- for var = でそのループにローカルな変数となる。
- when (not 〜) は unless で。
- collect しなくても do で十分。
- ついでに正規表現も統一。
(require 'cl) (defun my-kill-buffers () (interactive) (loop for buf in (buffer-list) for bn = (buffer-name buf) unless (string-match (rx bol (or (+ space) "#")) bn) do (kill-buffer buf)))