插件的 github 地址为: https://github.com/prs1022/a_antlr_plugin
插件代码很简单,先说下布局和做这个的目的。 布局就是一段文本输入框,下面一行输入框,不带任何花里胡哨的按钮,下拉框等等。 输入 SQL 和 DSL 就可以得到自己想要的语法节点。我觉得这有点像很多正则表达式工具,你输入了一段文本,然后再输入一行正则,回车就能知道自己的正则结果,我们不希望在运行程序的时候才知道我们正则写错了,所以预先都会用这么个工具。我是这么用的,不知道正则大佬们会不会。
再来说下技术实现,这个是以 SQL 作为背景去使用的,当然 ANtlr 语法解析不止是可以做 SQL 文本的解析,有兴趣的可以一起讨论。SQL 的语法文件是取自 facebook 的开源项目 presto 。
我初衷是通过自定义语法查找指令,实现查找语法树节点的过程,完成了这个插件,方便在编码运行前预知自己的结果是否符合要求。
这个插件是 IDEA 插件,没有上传到官方的仓库,需要安装的可以下载源码然后打包成 zip 文件解压到本地安装即可。
最后,这个项目创建后八个多月都没更新过,也没有在别的地方推广过(只在知乎上写过一篇),虽然不是很牛逼的项目,但还是希望得到大家的 star 或是建议。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.