Emacs не может быть закрыт, так как он не может сохранять настройки.

Emacs не может быть закрыт, так как он не может сохранять настройки.

Отладчик вошел--Ошибка Lisp: (ошибка "Невозможно сохранить настройки; файл инициализации не был полностью загружен") signal(error ("Невозможно сохранить настройки; файл инициализации не был полностью загружен")) error("Невозможно сохранить настройки; файл инициализации не был полностью загружен") custom-save-all()
customize-save-variable(bmkp-last-as-first-bookmark-file "~\.emacs.d\bookmarks") bookmark-save()
bookmark-exit-hook-internal() kill-emacs()
save-buffers-kill-emacs() handle-delete-frame((delete-frame (#)))

так как однажды у меня возникла эта проблема с emacs: я не могу завершить его из-за сообщения об ошибке выше.

Что я могу сделать, чтобы решить эту проблему?

Версия Emacs GNU Emacs 24.3.1 (i386-mingw-nt6.1.7601) на Windows 7

Я ничего не менял намеренно, может быть, это связано с обновлением Windows или какими-то изменениями в нашей сетевой структуре? Файл .emacs сохранен в моем домашнем каталоге, который хранится в моем профиле пользователя Windows-7 (и, следовательно, каким-то образом синхронизирован с нашим сервером).

решение1

Извините за беспокойство. Вы столкнулись сДобавить в закладки+ошибка.

Попробуйте оценить этот код, чтобы переопределить эту функцию:

(defun bookmark-exit-hook-internal ()   ; This goes on `kill-emacs-hook'.
  "Save currently defined bookmarks and perhaps bookmark menu-list state.
Run `bookmark-exit-hook', then save bookmarks if they were updated.
Then save menu-list state to file `bmkp-bmenu-state-file', but only if
that option is non-nil."
  (run-hooks 'bookmark-exit-hook)
  (when (bookmark-time-to-save-p t)
    (condition-case err ; Do NOT raise error.  (Need to be able to exit.)
        (bookmark-save)
      (error (if (fboundp 'display-warning)
                 (display-warning 'bookmark-plus (error-message-string err))
               (message (error-message-string err))
               (sit-for 4))
             nil)))
  (bmkp-save-menu-list-state))

Я обновил исходный файлbookmark+-1.elс этим определением сейчас. Это должно решить проблему — то есть, должно показать вам сообщение об ошибке, но позволить вам выйти из Emacs.

Если это изменение не решит проблему, свяжитесь со мной по электронной почте, и я ее исправлю.

Проблема была в том, чтоДобавить в закладки+версия bookmark-saveсохраняет обновленное значение параметра bmkp-last-as-first-bookmark-fileв вашем пользовательском файле (или файле инициализации), а это было невозможно, поскольку ваш файл инициализации по какой-то причине не был успешно загружен.

Еще раз извините за беспокойство. Прежде чем делать что-либо из вышеперечисленногочтобы выйти из Emacs,сделайте копию файла закладок, просто на всякий случай.

Помимо вышесказанного, у вас, по-видимому, есть проблема в вашем файле инициализации ( ~/.emacs). @lawlist упомянул в комментарии, как с этим бороться: разделяй и властвуй, то есть рекурсивно разбить ваш файл инициализации, чтобы сузить местонахождение проблемы.

И в следующий раз, когда вы увидите «закладку» или bmkp-(Закладкапрефикс) в обратной трассировке или сообщении об ошибке, сообщите мне о вашей проблеме как можно скорее. ;-)

Связанный контент