【发布时间】:2019-06-24 12:54:00
【问题描述】:
我想为自定义程序语言创建一个格式化程序/linter,并且正在阅读它,但似乎我错过了一些东西。
正在寻找/玩PEG.js,似乎它会完成这项工作。我写了一个小解析器,运行时 - 它正确返回语法树 (AST)
现在的主要问题是:如何使用生成的解析器创建(例如)VSCode/Atom/CodeMirror/等。将美化/格式化代码的扩展名?
一般来说这是正确的方法吗? (使用解析器或需要为每个工具编写特定的解析器)
【问题讨论】:
-
为了美化代码,您需要使用语法树并将其转换回格式良好的代码。不过,它是否是最好的工具,或者如何在特定的代码编辑器中做到这一点,对于 Stack Overflow 来说是一个过于宽泛的问题。