我试图为Neovim的Treesitter编写一个自定义注入,它将标记模板文本突出显示为SQL代码。
所讨论的代码如下:
import sql from "postgres"
const query = sql` SELECT * FROM my_table`我想告诉Treesitter将这个带标记的模板文字解析为SQL代码。使用Treesitter的自定义注入是可能的;实际上,库使用同样的技术为GraphQL标记的模板文本注入语法,我认为这发生在这个文件这里中。
我在~/.config/nvim/after/queries/ecma/injections.scm上编写了一个非常类似于GraphQL查询的配置文件,尽管Treesitter正在识别该文件,但是注入根本不起作用。有人有办法解决这个问题吗?理想情况下,Treesitter将看到sql标记的模板文字,并使用SQL解析器解释函数的主体。
发布于 2022-11-26 16:54:48
要使树保姆使用after/文件夹中的注入,injections.scm文件应该包含作为第一行的; extends。
我花了好几个小时才弄明白,现在已经记录在案了就在这里
https://stackoverflow.com/questions/72157799
复制相似问题