准备增加啥特性了?
目前是想做成前后端分离的设计,后端实现规定的函数之后就可以为 peek、jump、capf、xref、imenu 五个工具提供内容,并且计划实现一个 GNU Global 后端。不过改设计主要还是为了维护起来轻松一些。
终极地,还是想实现交互式过滤 tags 文件的功能,可以按照名字、文件、类型、语言等多种条件来过滤,这种其实比起弹窗补全更适合「想不起来符号叫什么」的情形。
重构后能不能增加一个 lsp-bridge 框架的后端?
应该是不行。一方面我自己不用 lsp,另一方面 Citre 大部分 UI 还是同步的设计,而 lsp-bridge 为了速度考虑,采用异步的设计,和已有的 capf、xref 也不兼容,所以估计很难做成 Citre 的后端。
lsp-bridge确实快!但是依赖lsp服务。对于一些轻量代码,或者没有lsp的语言,tags还是很好用。
既然如此,在想用 lsp 的工程里用 lsp-bridge,想用 tags 的工程里用 Citre,不就可以了吗?我还是没有明白为什么希望 lsp-bridge 可以做成 Citre 的后端。