我是Ace的新手,我想添加一种新语言。
我创建了名为new_highlight_rules
的文件,问题是我必须在此文件中添加令牌和相应的正则表达式,而且我的新语言非常复杂,所以我要添加很多正则表达式和规则。
我的问题是:如果我为ANTLR编写了我的语言语法,是否有一种实用的方法来添加正则表达式和令牌?没有使用ANTLR还有其他方法吗?
请我是新人,任何指导,甚至是非常基本的指导都可以帮助我。
答案 0 :(得分:1)
如果Ace有一种编写与ANTLR词法分子不匹配的正则表达式,那么你可能需要手动翻译你的ANTLR正则表达式。
作为一般规则,我从未见过两个语言定义系统使用完全相同的语法来指定细节,所以我很确定你被卡住了。
由于这两种符号都是正式的,并且涵盖了基本相同的基础(词汇级别规范),您可以考虑构建翻译器来为您进行映射。这可能比简单地手工翻译更省力。 (是的,我是自动化工具的忠实粉丝。了解它们何时有用非常重要。)