Как и внутри firefox, мы можем восстановить закрытую вкладку (буфер в случае Emacs). Кажется, это не должно быть слишком сложно написать, но прежде чем изобретать колесо, есть ли хороший, который люди написали, быстрый поиск в Google не принес удовлетворительных результатов.Есть ли плагин undo-close-buffer внутри Emacs
ответ
Я не знаю о существовании такой функции. Но вы можете закодировать один, например, советовать kill-buffer
.
Имейте булевский вариант, аналогичный delete-by-moving-to-trash
. Прежде чем убить буфер, сохраните его соответствующую информацию (для ее воссоздания) для последующего поиска. Если вы хотите разрешить такое отмена для более чем одного буфера за раз (например, не только для последнего убитого), затем поместите сохраненную информацию на алист и т. Д.
Однако, какая именно информация необходима до save и восстановление данный буфер неясно - это зависит от конкретного буфера (по крайней мере, от его режима, но даже от других частей его истории/состояния).
Так что в общем случае это проблематично. Вероятно, вы можете придумать что-то работоспособное и полезное для некоторых ваших случаев использования, но просто помните, что, вероятно, нет хорошего общего ответа.
Это не совсем то, что вы описываете, но пакет recentf позволит вам открывать последние файлы. Это часть Emacs, поэтому нет пакета для установки. Добавьте это в ваш файл инициализации,
(require 'recentf)
(recentf 1)
(global-set-key (kbd "C-x R") 'recentf-open-files)
, а затем, если вы закроете файл, вы можете нажать C-х R, чтобы увидеть список недавно открытых файлов, чтобы выбрать из.
Список файлов также сохраняется для recentf-save-file
.
Единственная проблема в том, что не перемещает последний закрытый файл в верхней части списка - если это так можно назвать recentf-open-most-recent-file-1
, который откроет этот файл, давая вам отменить близкую функцию файла.
Это может быть вопрос о перемещении файла в передней части списка в этой функции -
(defun recentf-track-closed-file()
"Update the recent list when a buffer is killed.
That is, remove a non kept file from the recent list."
(and buffer-file-name
(recentf-remove-if-non-kept buffer-file-name)))
- 1. ли Emacs есть способ, чтобы выровнять «=» ы внутри C++ перечислений
- 2. Есть ли графический веб-браузер, который может использоваться внутри emacs?
- 3. Есть ли интерфейс emacs valgrind?
- 4. Есть ли версия Emacs VimGolf?
- 5. Есть ли хорошее управление проектом Emacs?
- 6. emacs: Какой плагин это?
- 7. Есть ли плагин JQuery Map
- 8. Есть ли плагин CakePHP PayPal?
- 9. Есть ли плагин ASS Eclipse?
- 10. Есть ли плагин OCR-Phonegap?
- 11. Есть ли настраиваемый доменный плагин
- 12. Emacs: Есть ли способ создать интерактивный скрипт с помощью Emacs?
- 13. Emacs: позиция курсора внутри скобки
- 14. Есть ли `flet` для команд в Emacs?
- 15. Есть ли чистый режим HTML5 Emacs?
- 16. Есть ли клик emacs для чтения?
- 17. Есть ли режим Emacs для Rscript?
- 18. Есть ли режим BNF для Emacs?
- 19. Есть ли способ выбрать персонажа в Emacs?
- 20. Есть ли энциклопедия emacs для ключевых слов?
- 21. Есть ли отличный учебник по использованию emacs?
- 22. Есть ли смену области в emacs lisp?
- 23. Есть ли режим Intercal для GNU Emacs?
- 24. Есть ли опция в emacs, например vimdiff?
- 25. Есть ли стабильная автоматическая упаковочная система Emacs?
- 26. Ваш любимый плагин в Emacs?
- 27. Есть ли плагин jQuery lightbox, в котором есть миниатюры?
- 28. Есть ли повторное использование ошибки в буфере в emacs?
- 29. Есть ли плагин IntelliJ для публикации фрагментов кода для Gist
- 30. objdump из внутри Emacs
Вы уже смотрели на встроенном 'desktop.el'? Вам не нужно автоматически открывать все, когда вы запускаете Emacs, если вы этого не хотите - это может быть интерактивный выбор, который вы делаете. Например, у меня есть пользовательская версия 'desktop.el', и у меня есть функция' desktop-read' на 'emacs-startup-hook' - я мог бы просто удалить крючок и вручную вызвать' desktop-read 'всякий раз, когда я хочу. – lawlist
Я использую рабочий стол в течение многих лет, но, как я понимаю, все дело в восстановлении сеанса в последний раз? Но когда я просто закрыл буфер и хочу его вернуть, есть ли хороший способ? – user1961679
Вы можете использовать «kill-buffer-hook» для добавления соответствующих данных в файл рабочего стола. Например, 'desktop.el' использует' kill-emacs-hook', и вы также будете использовать «kill-buffer-hook». – lawlist