如何在emacs中禁用Verilog模式?

Pet*_*ris 5 emacs proof-general

我正在尝试将coq与ProofGeneral一起使用,但是内置的Verilog模式遮盖了*.v文件类型识别。我可以以某种方式禁用它,让ProofGeneral将其重新映射到其CoQ模式吗?

cco*_*ley 5

您将不得不在 .emacs 或诸如此类的文件中覆盖 auto-mode-alist 中的绑定。

这篇 SO 帖子对 VHDL 做了类似的事情:

如何在 emacs 中关闭 vhdl 模式?

另外,我在谷歌上搜索了“auto-mode-alist remove”并找到了这个链接。复制/粘贴重要的位:

;; Remove all annoying modes from auto mode lists

(defun replace-alist-mode (alist oldmode newmode)
  (dolist (aitem alist)
    (if (eq (cdr aitem) oldmode)
    (setcdr aitem newmode))))

;; not sure what mode you want here. You could default to 'fundamental-mode
(replace-alist-mode auto-mode-alist 'verilog-mode 'proof-general-mode)
Run Code Online (Sandbox Code Playgroud)