lsp-bridge -- 性能最快的语法补全插件

@happyo 方案一我已经实现了, 上面的补丁是重写了整个 TabNine 后端, 只保留原来 Elisp 安装 TabNine 的代码。

原来 Elisp 的实现是在 Elisp 端等 TabNine 进程的计算结果, 一旦 TabNine 计算时间超过 100ms 就会导致补全前端卡顿, 原来的实现已经全部删除, 新的实现用类似 lsp-bridge 的技术, 和 TabNine 通信的代码用 Python 多线程来实现。

我现在实验的效果是,不管 TabNine 占用CPU多高, Emacs 和 lsp-bridge 都丝滑流畅, TabNine 的体验性能现在和 VSCode 一致了。

2 个赞

基于新版的 TabNine 后端实现, TabNine 补全都非常流畅了, 现在只要安装了 TabNine 默认就开启 TabNine 功能, 非常好用。

不喜欢 TabNine 的可以用 (setq acm-enable-tabnine-helper nil) 来关闭。

嗯嗯,大佬效率好高啊,我升级体验下 :grinning:

我发现 Python 来写 IPC 通讯要比 elisp 快很多, 代码清晰同时代码量会少很多。

是的,我看代码简洁了很多,另外这个需要安装下orjson库,可以在文档上标注下。

README有,orjson是可选的

哈哈,可以的,用起来确实很丝滑 :grinning:

我发现 orjson 的必须依赖被 LSP auto-import 功能自动引入了 :frowning: 这个补丁已经修复了, orjson 重新变成可选的, 装了更快。

哈哈,可以的,大佬还是细心呐 :grinning:

(帖子已被作者删除)