Non riesco a far ricordare a Emacs la cronologia dei *ielm*buffer tra le sessioni. Per quanto ne so, tale cronologia viene registrata nella variabile buffer-local comint-input-ring. Pertanto ho aggiunto la seguente espressione al mio file init:
(setq desktop-locals-to-save
(append desktop-locals-to-save
'((comint-input-ring . 50))))
Non funziona So che il desktoppacchetto funziona perché Emacs ricorda le variabili globali a cui ho aggiunto il desktop-globals-to-savemio file init.
-
EDIT: savehistnon funziona neanche. Suppongo che sia perché comint-input-ringè una variabile buffer-locale.
savehistgià pensato (scusami per non averlo menzionato). Per quanto ho potuto vedere, era solo per variabili globali, mentre comint-input-ringè buffer-local. Ora l'ho provato comunque, senza successo.
comint.elle seguenti due righe di codice: (put 'comint-input-ring 'permanent-local t)e (make-local-variable 'comint-input-ring). Quindi, aggiungi comint-input-ringa desktop-locals-to-save. Infine, ri-byte-compila i file applicabili, riavvia Emacs e goditi la vita al massimo.
savehist.ele aggiungere questa variabile all'elenco di variabili da salvare.