Aquamacs 文件模式规范错误

Aquamacs File mode specification error

我不确定我做了什么,但突然之间,当我在 Aquamacs 中执行各种操作时出现了一堆错误。例如,当我尝试打开 C 文件时,出现错误 "File mode specification error: (wrong-type-argument number-or-marker-p nil)"。如果我打开调试器,我会得到以下堆栈跟踪:

Debugger entered--Lisp error: (wrong-type-argument number-or-marker-p nil)
  define-abbrev([## 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 else 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...] "else" "else" c-electric-continued-statement 0 t)
  apply(define-abbrev [## 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 else 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...] ("else" "else" c-electric-continued-statement 0 t))
  byte-code("234  @5\"#7" [table defs apply define-abbrev append (t)] 6)
  c-define-abbrev-table(c-mode-abbrev-table (("else" "else" c-electric-continued-statement 0) ("while" "while" c-electric-continued-statement 0)) "Abbreviation table used in c-mode buffers.")
  c-mode()
  set-auto-mode-0(c-mode nil)
  set-auto-mode()
  normal-mode(t)
  after-find-file(nil t)
  find-file-noselect-1(#<buffer EventLog.h> "~/repositories/ghc/rts/eventlog/EventLog.h" nil nil "~/repositories/ghc/rts/eventlog/EventLog.h" (12100462 16777218))
  find-file-noselect("~/.cabal/../repositories/ghc/rts/eventlog/EventLog.h" nil nil t)
  find-file("~/.cabal/../repositories/ghc/rts/eventlog/EventLog.h" t)
  call-interactively(find-file nil nil)
  command-execute(find-file)

有人知道这里会发生什么吗?

好的,所以我不知道发生了什么,但我能够通过(非常)干净地重新安装来修复它。我首先删除了应用程序文件夹,然后对文件系统中的任何 Aquamacs 文件夹进行了递归查找。

find . -regex "Aquamacs.*" -maxdepth 5

能够为我提供所有此类文件的列表。卸载应用程序时,有一堆缓存的首选项目录不会被删除。我首先尝试使用 App Cleaner,它无法获得所有这些。我删除了所有Aquamacs相关目录并重新安装后,它工作正常。