適当に改造
どこかで、拾って前から使わせてもらっていた、特殊バッファ削除&ウィンドウを1つにする奴。非常に便利なんだけど、Windowを消した後表示がもう一方のWindowに移らずに変なところを表示するので、適当に改造。info-modokiのF1とqのような関係にしたかった。ので、パクッタ(:D)| ̄|_ 。そして例によって超絶合体(といっても2,3行だけど)。それと、機能を忘れるので鶏仕様にファンクションキーの所にも一応表示されるように。どこか間違っている可能性が果てしなく高いが、とりあえず望んだように動くので良しとした。
こんな感じ。
(defun cleanup-window() (interactive) (let ((bufl (buffer-list)) buf name) (loop (setq buf (pop bufl)) (if (null buf) (return nil)) (setq name (buffer-name buf)) (if (member-if #'(lambda (str) (string= name str)) '("*grep*" "*Help*" "*Completion*" "*Shell output*" "*Calendar*" "*PickupPatternShow*" "*dictionary*" "*Buffer List*" "*XML Command error*" "*buf2html: HTML*" "buf2html: CSS*" "*output*" "*NetInstaller Log*" "*NetInstaller Apps*" "*NetInstaller Detail*" "*Abbrevs*" )) (delete-buffer buf) (if (> (count-windows) 1) (delete-window)))))) (global-set-key #\S-F11 'cleanup-window) (set-function-bar-label #\S-F11 "*hoge*削除")
一応晒しているけど、命の補償はないので、命知らずな冒険野郎だけ使ってくれ。正常な人間は改造前のがオススメ。
今見たら、タブとかスペースとか表示されないのね。まあ、どうせタブもスペースもごちゃ混ぜの舐めた感じなので、見えない方が良い場合もあるという罠。
調べたら一応はてな記法とかいうので表示させれたので、そうしてみた。
■どうでもいいこと
xyzzyの補完はデフォルトだとlispは以外のがかなり厳しい感じ、色々bufferを開きまくってると他のファイルの動的補完が違うモードだと邪魔臭い。lisp以外のファイルを開いててcarとかsetqとかでても限りなく意味なさそう。補完モードをってのを研究してみようかしら。xyzzyは操作性はいいのに設定が面倒なのが玉に傷。他のエディタならキーを調べるだけでいいとか考えるとEmacs系の費用対効果には結構疑問符は付く感じ。