发布 lsp-bridge 2.0版本。
lsp-bridge 2.0 升级注意:
2.0版本不再支持corfu和company-mode, 因为 lsp-bridge 的目标是提供流畅的代码补全体验,而这依赖 lsp-bridge 独有的 push 消息机制,而Emacs内置的capf架构无法满足 lsp-bridge 的push机制。
所以,从 2.0 版本开始,我们创建了 lsp-bridge-fw.el 、 lsp-bridge-fw-history.el 分别fork自 corfu.el 和 corfu-history.el, 希望基于corfu原有的代码基础之上发展适应与 lsp-bridge push 机制的新型补全框架,以实现更高的补全性能,并彻底解决现有版本各种语言代码补全插入时的诸多bug。
lsp-bridge.el 的开发一直都注重与Emacs现有生态的兼容性,但是最近两周修复了大量关于补全插入的bug, 很难彻底修好,究其原因还是因为capf机制无法满足 lsp-bridge.el 的需要: 当产生新的代码补全时, lsp-bridg 解析LSP消息产生最新的补全列表,corfu有自己的候选词插入/替换逻辑,capf框架也有自己的插入/替换逻辑,再叠加 LSP 的三种候选词渲染优先级(textEdit、insertText和label), 特别是textEdit逻辑(通常来说是提供代码Snippet功能)时,corfu/capf/textEdit 的插入/替换逻辑相互纠缠、冲突,最终导致候选词插入时bug无法彻底修复。
最新的配置项请大家按照README说明来配置,感谢大家的支持!