(defun elscreen-pack () "Pack the spaces between of screens." (interactive) (let* ((current (elscreen-get-current-screen)) (oscreens (sort (elscreen-get-screen-list (selected-frame)) '<)) (nums (length oscreens)) (new 0) orignal target msg) (while (< new nums) (setq target (car oscreens)) (when (= current target) (setq current new)) (unless (memq new oscreens) (unless msg (setq msg "Pack the spaces done:")) (setq msg (concat msg (format " %d->%d," target new))) (elscreen-clone target) (elscreen-kill target)) (setq oscreens (cdr oscreens)) (setq new (1+ new))) (elscreen-goto current) (elscreen-message (if msg (substring msg 0 -1) "No pack")))
最近の elips ML の藤原さんや小関さんのメールを見て導入してみた。当然 elscreen-gf と一緒。
ほとんど使い込んでいないけど『なんで今まで知らなかったのかなぁ〜〜』というぐらい便利な予感がする。
なお、Windows では適当に Cygwin で make したら動いちゃった。