Іноді я випадково вбиваю буфер і хочу його знову відкрити, як CSt, щоб скасувати закриту вкладку у Firefox, але в Emacs немає вбудованої команди, defun undo-kill-buffer
в http://www.emacswiki.org/RecentFiles :
(defun undo-kill-buffer (arg)
"Re-open the last buffer killed. With ARG, re-open the nth buffer."
(interactive "p")
(let ((recently-killed-list (copy-sequence recentf-list))
(buffer-files-list
(delq nil (mapcar (lambda (buf)
(when (buffer-file-name buf)
(expand-file-name (buffer-file-name buf)))) (buffer-list)))))
(mapc
(lambda (buf-file)
(setq recently-killed-list
(delq buf-file recently-killed-list)))
buffer-files-list)
(find-file
(if arg (nth arg recently-killed-list)
(car recently-killed-list)))))
зовсім не працює. Якщо ви знаєте Elisp, як вирішити цю проблему?
Якщо він може показати список закритих буферів, і я можу вибрати один із них для повторного відкриття, це було б краще.