来自PEG的智能感知(解析表达语法)

时间:2014-07-11 14:44:12

标签: javascript parsing peg

如果已经提出要求,我会事先道歉。 我有一种语法,由语法定义,我想知道人们如何为他们的自定义语法实现Intellisense。这对我来说似乎很机械;用户键入的内容然后被提供给生成的解析器,并提供关键字建议。我想解析需要修改,以便它是增量的而不是一次性的,即生成的解析器。

我是这个领域的新手,所以欢迎任何提示。

我打算使用http://pegjs.majda.cz/,但任何事都可以。

1 个答案:

答案 0 :(得分:1)

我已经为一些项目编写了codemirror grammar add-on,这些项目需要各种自定义语言的语法高亮。

一个用JSON格式定义任何语言的语法(或者因为json语法可以扩展其他json语法而变异),并且附加组件自动创建一个codemirror解析器,它可以包括语法部分和语法错误,自动完成等等

请参阅live example here

注意:附加组件中使用的json语法格式在许多方面类似于PEG语法形式(可能有更多选项)。但主要用于生成语法高亮解析器。该项目正在不断发展,未来可能会增加更多选项。