Todos los días enciendo emacs y abro exactamente los mismos archivos que había abierto el día anterior. ¿Hay algo que pueda agregar al archivo init.el para que vuelva a abrir todos los búferes que estaba usando la última vez que salí de emacs?
89
Respuestas:
Puede usar la biblioteca de escritorio de Emacs :
fuente
M-:
ejecutando(setq debug-on-error t)
, luego llamedesktop-revert
y podría detectar el error ofensivo en el depurador. Para mí, era una configuración global que se suponía que era un búfer local, lo que provocaba que fallara la restauración del marco. (Sólo usandoemacs --debug-init
podría coger el tema también, pero utilizado método anterior.)Aunque sospecho que la pregunta buscaba la funcionalidad de "escritorio" de emacs (ver la respuesta anterior), el enfoque de Lewap puede ser útil si el conjunto de archivos que uno usa realmente es exactamente el mismo conjunto de archivos. De hecho, uno puede ir un paso más allá y definir 'perfiles' si tiene diferentes conjuntos de archivos usados regularmente ... Ejemplo rápido:
Si descubre que cambia regularmente entre diferentes conjuntos de archivos de uso regular mientras trabaja, considere usar perspectivas y completar cada perspectiva con el conjunto deseado de archivos de uso regular.
fuente
Para almacenar / restaurar los búferes / pestañas (específicamente pestañas elscreen): uso elscreen y la forma en que administro el almacenamiento / restauración de la sesión de escritorio y la configuración de la pestaña elscreen es el siguiente código en mi archivo .emacs (los nombres utilizados son autoexplicativos y si las funciones de almacenamiento / restauración no deben ejecutarse cada vez que emacs comienza, simplemente comente las líneas con "(presione # 'elscreen-store kill-emacs-hook)" y "(elscreen-restore)"):
fuente
emacs-configuration-directory
con eluser-emacs-directory
que Emacs ya proporciona.Hay mejoras útiles que puede realizar en la función básica del escritorio. Particularmente útiles (IMO) son los métodos para guardar automáticamente el escritorio durante la sesión, ya que de lo contrario, si su sistema falla, se quedará atascado con el archivo de escritorio con el que había comenzado esa sesión, bastante molesto si tiende a mantener Emacs funcionando durante muchos días a la vez.
http://www.emacswiki.org/emacs/DeskTop
La wiki también tiene información útil sobre la persistencia de datos entre sesiones en general:
http://www.emacswiki.org/emacs/SessionManagement
Específicamente para computadoras de escritorio, pensé que Desktop Recover parecía particularmente prometedor, sin embargo, aún no lo he probado.
fuente
(find-file-noselect "/my/file")
lo abrirá silenciosamente, es decir, sin aumentar el búfer. Solo digo.EDITAR Este comando no es interactivo ; Para probarlo, debe evaluar la expresión, por ejemplo, colocando el cursor después del último paréntesis y presionando Cx Ce
Votar en contra de esto no está bien ; este comando definitivamente funciona y está en el alcance de la pregunta.
fuente