emacs - Why is ido-mode trying to use this variable? -
i have emacs auto-save , backup single directory off in home directory. reason, when try exit variable name set save directory getting passed ido-mode , won't let me exit out of emacs. have tried deleting old versions of ido.last file (and symbolic link .#ido.last), doesn't seem consistently take care of problem. have full permissions , ownership of directory files stored in , files themselves. happens on several systems work on covering emacs major versions 21, 22 , 24.
here relevant parts of emacs configuration:
(defvar home (concat (getenv "home") "/")) (defvar emacs-dir (concat home ".emacs.d/")) (defvar savedir (concat home ".saves/")) (setq backup-directory-alist `((".*" . savedir))) (setq auto-save-file-name-transforms `((".*" ,savedir t))) (setq backup-by-copying t) (setq delete-old-versions t kept-new-versions 10 kept-old-versions 6 version-control t) (setq ido-save-directory-list-file (concat emacs-dir "cache/ido.last")) (ido-mode t) (setq ido-enable-flex-matching t ido-everywhere t) this debugger output looks when problem happens.
debugger entered--lisp error: (wrong-type-argument stringp savedir) expand-file-name(savedir "/home/pinyaka/.emacs.d/cache/") make-backup-file-name-1("/home/pinyaka/.emacs.d/cache/ido.last") make-backup-file-name("/home/pinyaka/.emacs.d/cache/ido.last") find-backup-file-name("/home/pinyaka/.emacs.d/cache/ido.last") backup-buffer() basic-save-buffer-2() basic-save-buffer-1() basic-save-buffer() save-buffer() write-file("/home/pinyaka/.emacs.d/cache/ido.last" nil) ido-save-history() ido-kill-emacs-hook() run-hooks(kill-emacs-hook) kill-emacs() save-buffers-kill-emacs(nil) call-interactively(save-buffers-kill-emacs) you can see reason ido has gotten hold of savedir though have never used variable in connection ido-mode (i have included everywhere that variable used ido calls make). why ido savedir?
i think problem is:
(setq backup-directory-alist `((".*" . savedir))) should be
(setq backup-directory-alist `((".*" . ,savedir))) explanation: when emacs exits, ido trying ta save history; standard backup procedure of emacs kicks in , try backup file. forget unquote savedir in configuration backup-directory-alist, cons cell pair of string , symbol instead of pair of strings expected.
Comments
Post a Comment