Saya tidak bisa membuat Emacs mengingat sejarah untuk *ielm*
buffer di antara sesi. Sejauh yang saya tahu, sejarah tersebut dicatat dalam variabel buffer-local comint-input-ring
. Karena itu saya telah menambahkan ekspresi berikut ke file init saya:
(setq desktop-locals-to-save
(append desktop-locals-to-save
'((comint-input-ring . 50))))
Itu tidak bekerja. Saya tahu bahwa desktop
paket itu berfungsi karena Emacs mengingat variabel global yang telah saya tambahkan ke desktop-globals-to-save
dalam file init saya.
-
EDIT: savehist
tidak berfungsi juga. Saya kira itu karena comint-input-ring
variabel penyangga-lokal.
savehist
(maaf karena tidak menyebutkannya). Sejauh yang saya bisa lihat, itu hanya untuk variabel global, sedangkan comint-input-ring
buffer-lokal. Sekarang, saya sudah mencobanya, tanpa hasil.
comint.el
dalam dua baris kode berikut: (put 'comint-input-ring 'permanent-local t)
dan (make-local-variable 'comint-input-ring)
. Lalu, tambahkan comint-input-ring
ke desktop-locals-to-save
. Terakhir, kompilasi ulang byte file yang berlaku, mulai ulang Emacs dan nikmati kehidupan semaksimal mungkin.
savehist.el
dan menambahkan variabel ini ke daftar vars untuk menyimpan.