1

我正在开发自己的域特定语言 (DSL),文件扩展名为.xyz.

Emacs 不知道如何突出显示.xyz文件中的语法,所以我通常会打开typescript-modejson-mode. 但是可用的语法高亮模式对我来说不够好,所以我正在考虑为 Emacs 编辑器编写自己的语法高亮模式。关于这个任务的任何提示?有什么工具包推荐吗?

或者,我会很高兴使用任何可用的模式来突出显示常见关键字,例如class, string, ,符号之前和之后list的变量、大括号、方括号、问号和感叹号。任何现有的语言都有类似的语法吗?=@{}[]?!

我不是色盲,对颜色也不挑剔。任何突出上述语法的语法都可以解决我的问题。

4

1 回答 1

2

如果您对仅针对关键字和注释的简单语法突出显示感到满意,那么有一个名为 的帮助器define-generic-mode,它在 elisp 手册中有记录。

使用它的一些示例可以在generic-x.el随 Emacs 分发中找到。

但是变量名的突出显示不在此范围内。为此,您需要能够使用semantic/解析 DSL bovine,因为特定字符串是否被解释为变量名取决于上下文,而不仅仅是简单的正则表达式匹配。

于 2018-06-25T05:16:12.853 回答