【发布时间】:2014-05-14 06:47:10
【问题描述】:
如果这是重复的,请删除。 我只是在编辑我的 .emacs 文件,在我完成更改之后。一世 重新启动了emacs。但是当它再次出现时,它声称配置 文件有一些错误。我应该从“--debug-init”开始 我也做过。但它并没有帮助我解决也没有找到语法错误。 那么有没有办法找到有语法错误的行。或者更好,如果 会有类似 (e)lisp lint 之类的东西,例如 xml、json、js 等等。提前致谢
编辑
设法得到转储:
Debugger entered--Lisp error: (void-variable whitespace-mode)
redisplay_internal\ \(C\ function\)()
delete-process(#<process server-client-test>)
Someunicodefoo" [("server") server-use-tcp server-auth-dir server-socket-dir generate-new-buffer " *temp*" funcall make-byte-code 0 "Someunicodefoo" vconcat vector [buffer-name kill-buffer] 2 "\n\n(fn)" insert-file-contents-literally expand-file-name looking-at "127\\.0\\.0\\.1:[0-9]+ \\([0-9]+\\)" comm process-attributes string-to-number match-string 1 t :other delete-process make-network-process :name "server-client-test" :family local :server nil :noquery :service] 14 "\n\n(fn)"])
server-running-p("server")
byte-code("Someunicodefoo" [load-file-name buffer-file-name recentf-menu-before user-emacs-directory recentf-save-file server-name add-to-list load-path file-name-directory "../packages" tool-bar-mode 0 load "ergoemacs-keybindings/ergoemacs-mode" ergoemacs-mode 1 "init_load_packages" "init_version" "init_functions" "init_settings" "init_aliases" "init_abbrevs-lisp-mode" "init_keybinding" "init_mouse" "init_clean_menus" require recentf "Close" ".recentf" recentf-mode server server-running-p t server-start] 4)
load("/home/dirk/.emacs.d/ergoemacs_1.9.3.1/site-lisp/../ergoemacs/init")
eval-buffer(#<buffer *load*-842275> nil "/home/dirk/.emacs.d/ergoemacs_1.9.3.1/site-lisp/site-start.el" nil t) ; Reading at buffer position 1432
load-with-code-conversion("/home/dirk/.emacs.d/ergoemacs_1.9.3.1/site-lisp/site-start.el" "/home/dirk/.emacs.d/ergoemacs_1.9.3.1/site-lisp/site-start.el" nil nil)
load("/home/dirk/.emacs.d/ergoemacs_1.9.3.1/site-lisp/site-start.el" nil nil t)
load-file("~/.emacs.d/ergoemacs_1.9.3.1/site-lisp/site-start.el")
eval-buffer(#<buffer *load*> nil "/home/dirk/.emacs" nil t) ; Reading at buffer position 2883
load-with-code-conversion("/home/dirk/.emacs" "/home/dirk/.emacs" t t)
load("~/.emacs" t t)
command-line()
normal-top-level()
【问题讨论】:
-
错误是什么?如果您不告诉我们,我们将无法帮助您。运行
emacs --debug-init时是否得到堆栈跟踪?如果是这样,请将其粘贴到您的问题中。 -
@phils 不幸的是,当我从 --debug-init 开始时,我没有得到回溯。它只是说“Package assoc”已过时。另一方面,如果我正常开始,它会给我“以 --debug-init 开始”消息
-
该堆栈跟踪中有很多未知数,但请尝试在 ergoemacs 位之前将
(require 'whitespace)插入到您的 init 文件中。在不知道其他代码实际在做什么的情况下,这可能是克服错误的最简单方法(whitespace库定义了whitespace-mode变量)。