我正在尝试编写一个非常基本的 emacs 主要模式来编辑汇编源文件(针对特定的微控制器)。我使用https://www.emacswiki.org/emacs-test/ModeTutorial作为起点。它有效,但我想改变两件事但找不到解决方案。
是的,我渴望随着时间的推移对 eLisp 有更透彻的理解,但我也尝试快速破解我的工作模式定义,因为我现在需要它(没有真正理解错综复杂 - 我知道,RTFM ...... )。
无论如何,我希望得到两个问题的答案:
1)虽然语法突出显示有效,但我不认为它不区分大小写。我尝试添加(setq font-lock-keywords-case-fold-search t)
到下面的功能,但它似乎没有达到预期的效果。
(defun xasm-mode ()
(interactive)
(kill-all-local-variables)
(use-local-map xasm-mode-map)
(set-syntax-table xasm-mode-syntax-table)
;; set up font-lock
(set (make-local-variable 'font-lock-defaults) '(xasm-font-lock-keywords))
(setq font-lock-keywords-case-fold-search t)
(setq major-mode 'xasm-mode)
(setq mode-name "XASM")
(run-hooks 'xasm-mode-hook))
2)第二个问题肯定证明了我的无知......基本上,在具有以下结构的表达式中,我想用变量中的值替换“正则表达式”文字(有效)(这里:x , x 是 (正确) 由 regexp-opt 计算的)...但我不知道如何在此处插入 x 的值:-(
(setq x 'xyz)
(defconst v2
(list
'( "regexp" . foo)
))
感谢您的提示。