可以,欢迎提交PR
fix void function reduce by zilongshanren · Pull Request #17 · manateelazycat/lsp-bridge · GitHub 提交了。
速度贼快,ui优化一下无敌了。
目前有个问题,当前buffer lose focus时没有 destroy frame,会把frame带到别的buffer去。
(add-to-list 'load-path "~/Github/lsp-bridge")
(add-to-list 'load-path "~/Github/lsp-bridge/completion/")
(add-to-list 'load-path "~/Github/lsp-bridge/core")
我要多加几个load path才不报错,不知道为啥。。
因为有三个 elisp 文件分别放到这几个子目录里面。
我把 *.el 文件都移动到外面吧,方便用户添加 load-path
嗯嗯,这样方便点
换了 lbcf.el 应该和 VSCode 的补全速度有的一拼了。
没有重现你的问题,但是盲加了一个补丁,应该可以修复
已经修复了。
目前 lsp-bridge 已经支持十种编程语言。
目前还剩补全菜单UI美化、引用跳转、文档查看三个功能了。
感谢大家这几天贡献的补丁。
我的想法是,虽然没法兼容 company 的 backend 的接口,但 frontend 还是可以的,这样就能少造轮子,自动获得了好用的 TUI 和 GUI 的补全界面。
我先试着接一下 company-box
加油,干脆直接fork company-box代码,你先都用一个图标和统一的备注,接口我一会来弄
clangd 的lsp-server会报一个错:
BrokenPipeError: [Errno 32] Broken pipe
Exception in thread textDocument/didChange:
Traceback (most recent call last):
File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/threading.py", line 973, in _bootstrap_inner
self.run()
File "/Users/lionqu/Github/lsp-bridge/core/lspserver.py", line 159, in run
self.process.stdin.flush()
BrokenPipeError: [Errno 32] Broken pipe
Exception in thread textDocument/completion:
Traceback (most recent call last):
File "/usr/local/Cellar/[email protected]/3.9.12/Frameworks/Python.framework/Versions/3.9/lib/python3.9/threading.py", line 973, in _bootstrap_inner
self.run()
File "/Users/lionqu/Github/lsp-bridge/core/lspserver.py", line 131, in run
self.process.stdin.flush()
BrokenPipeError: [Errno 32] Broken pipe
帮我提一个 issue 吧,论坛上太多信息会漏掉,谢谢!
大佬,好改吗? 要不先推送一个版本?
在搞了在搞了,一小时内给个 draft PR
哈哈哈哈,好吧,我先放弃我魔改 corfu 的方案了。
之前 cape 也讨论过如何在 Corfu 上支持异步,不过目前也还没实现。
如果基于 lsp-bridge 的设计,补全整个流程应该这样设计:
- 根据不同的后端名字,创建一个 backend / completin_items 的字典
- 每个后端自己去更新字典的内容
- 后端更新内容以后, company / corfu 重新加载字典的内容, company / corfu 就不要管什么时候触发补全,什么时候更新内容
这样做可以做到完全不卡顿 Emacs ,company / corfu 现在的设计还是受限制于 Emacs 的单线程性能。