Impossible de tuer emacs avec Mx kill-emacs

1

Je suis en train de quitter emacs avec M-x kill-emacsmais je reçois ce message: Buffer cache/ido.last modified; kill anyway (y or n). Quand je choisis yje reçois /Users/a/.emacs.d/cache/: no such directory.

Cela m'empêche d' M-x eval-bufferinstaller des paquets avec marmelade. Comment puis-je réparer cela?


MODIFIER

J'ai créé un /cache/répertoire /.emacs.det modifié ses autorisations 777et j'ai pu tuer emacs. Pouvez-vous jeter un coup d'œil à ces autorisations et me faire savoir si je dois apporter des modifications?

as-MacBook-Air:.emacs.d a$ ls -la
total 24
drwx------  11 a  staff   374 Dec 18 12:20 .
drwxr-xr-x+ 34 a  staff  1156 Dec 18 12:20 ..
-rw-r--r--   1 a  staff   195 Dec 18 12:20 .smex-items
drwx------   3 a  staff   102 Dec 12 21:04 auto-save-list
drwxr-xr-x  21 a  staff   714 Dec 18 12:20 backups
drwxrwxrwx   2 a  admin    68 Dec 18 12:08 cache
drwxr-xr-x  23 a  staff   782 Dec 18 08:51 elpa
drwx------   4 a  staff   136 Dec 18 08:23 eshell
-rw-r--r--   1 a  staff   195 Dec 18 12:20 places
-rw-r--r--   1 a  staff  1505 Dec 18 12:20 tramp
drwxr-xr-x   4 a  staff   136 Dec 18 09:19 url
Zeynel
la source
1
Créez le répertoire manuellement. Vous pouvez également rechercher la variable dans laquelle ce répertoire est défini (par exemple, ido-save-directory-list-file) et modifier l'emplacement si vous le souhaitez. Ou désactivez la sauvegarde ido.
lawlist
1
Voici un exemple de changement de lieu: (setq ido-save-directory-list-file "~/.emacs.d/ido.last")
lawlist
J'ai commenté ;; ido-save-directory-list-file "~/.emacs.d/ido.last"mais je reçois toujours la même erreur "pas de tel répertoire" et emacs ne quitte pas. Dans votre deuxième commentaire, dois-je coller (setq ido-save-directory-list-file "~ / .emacs.d / ido.last") dans le fichier .emacs?
Zeynel
1
Merci, s'il vous plaît voir mes modifications à la question. J'ai créé le répertoire / cache et changé ses autorisations et cela a fonctionné.
Zeynel
1
Tu as fait un bon choix. J'ai passé quelques minutes à chercher ido.elavant de poster mes commentaires, mais je n'ai pas pu localiser facilement le code où le répertoire cacheest spécifié. Si vous êtes intéressé et que vous avez du temps libre, ce serait le lieu idéal pour effectuer d'autres configurations du cacherépertoire. Il se peut que d’autres fichiers soient stockés dans ce répertoire. Par conséquent, si vous le souhaitez, vous devrez modifier cet emplacement. Il y a beaucoup de mots à l' cacheintérieur ido.el, alors la recherche peut prendre du temps si cela vous intéresse. Comme cela fonctionne maintenant, vous pouvez appeler cela un wrap.
lawlist

Réponses:

0

Utilisez ce code pour résoudre le problème de ido empêchant emacs de se fermer lorsque le fichier 'ido.last' n'est pas accessible en écriture:

(defun ido-kill-emacs-hook () (ignore-errors (ido-save-history)))
zvx
la source