假设我有某种语法,但它本身是工作的,但是JS代码不认识它。是否有这样的选项,以便您可以将语法和语法的代码合并在一起。
假设我有这个语法(Nearley + Moo)。
@{%
const lexer = moo.compile({
start_tag: "<",
tag: /A-Z.../,
close_tag: ">"
})
%}
elemcreation -> "<" %tag ">" 也就是说,我的语法识别这种语法,并且只与它一起工作,但是我如何能够编写和组合语法和JS本身的语法。那就是JSX,我想用JS来做。
这就是:
//我的语法
"< tag >"
// js语法
"const mycon = "Hello, world!";"
如何使它们结合起来成为可能,但不能通过定义整个js语法来实现。
发布于 2022-10-16 00:49:05
看看这个项目。它基本上重新实现了类似于JS的语法,其中包含了html支持。同时,看看Nearley本身。它使用自己的语法,只需将JS/TS/Coffee代码与@{% %}或{% %}符号分开。你也可以这样做,但方向相反。编写JavaScript,并使用<tag>或(<tag>)分隔语法,因为实现起来要容易得多。这是不可能成为有效代码的。下一步是将此代码转换为JavaScript,并将其插入Nearley语法。希望这能帮上忙。
https://stackoverflow.com/questions/73891241
复制相似问题