lsp-bridge -- 速度最快的语法补全插件

感谢大佬,手速慢了,哈哈哈哈。

似乎有点其他小问题,例如 opencv 这种没有 stubs 也没办法直接分析的,出来的补全是不对的。之前是完全不出来。添加 stubs 之后才正常 (GitHub - microsoft/python-type-stubs: A set of type stubs for popular Python packages. These are works in progress from the Microsoft Python team and others, with the intent that they are contributed to typeshed or to the associated packages once sufficiently complete.)

截屏2022-05-21 22.52.16

我们可以考虑在这里写一个固定的路径,比如 ~/.cache/lsp-bridge/pyright/typing 这种,少什么库,就切换到目录 ~/.cache/lsp-bridge/pyright/typing 执行命令 pyright --createstub xxx

这样应该就可以正常工作了,大佬可以测试一下,欢迎发PR. :wink:

你们补全 java 代码时遇到这样的问题吗,

补全时我把参数类型打了出来, printlnString 的补全结果直接变成了 println(String x) : void

最小化配置为推荐配置

emacs 版本 29.0.50

emacs-repository-version e13744780fea9c11a4fed3de08bd0384ce2de8e8

更新一下lsp-bridge吧,新版本应该好了。

我记得 pyright --createstub xxx 好像并不行,他主要是生成一个草稿,给人手写 stubs 用的,不适用来补全的。我去看了 pylance, 他也是集成了 microsoft 的 python-type- stubs (GitHub - microsoft/python-type-stubs: A set of type stubs for popular Python packages. These are works in progress from the Microsoft Python team and others, with the intent that they are contributed to typeshed or to the associated packages once sufficiently complete.)

这个帖子后面几楼讨论过这个事情。[(lsp-mode使用pyright补全python提示未知模块名 - #14,来自 Voleking)]

已经是 master 最新版本了 eb55723, jdtls 是 aur 安装的,不知道是不是这个的问题,等我试一下。

试了一下其他版本还是不行, java version 11。

我录了个视频,使用用是有你说的问题。不过不明显,有点小bug还能接受。不过配置还要优化一下,明天我整理一下。

我用的java17, jdtls版本我忘了,应该是1.9或者1.10明天确认一下。

你说的问题类似 go里面不使用补全的话会被自动添加多余的字符 · Issue #123 · manateelazycat/lsp-bridge · GitHub

就是直接敲入代码,不用补全,不匹配任何候选词的时候会触发补全错误,昨天已经修复。

这是我敲到 println的效果

这是我敲到 printlnString 的效果,这时候已经没有补全菜单了

我看了你们的讨论后,lsp-bridge需要改啥配置吗?

@jadestrong volar works with something wrong, may you take a look ?


ps: @manateelazycat when rename current buffer and file, the lsp-bridge will throw an error and not working, take a look at this

是一个要更新版本,第二个要上传实例代码,要不没法重现。

请多上传点重现实例帮助重现,光截图不能解决问题。

you just call rename-this-buffer-and-file in emacs, and the error will occur

by the way, lsp-bridge always crashes after restart it, just after rename-this-buffer-and-file

this is the picture when I restart the lsp-bridge, after I rename DropdownMenuItem.vue to MenuItem.vue, it always crashes

哎,说中文不好吗?

1 个赞

eh, input method does not working on KDE wayland
卧槽,这个调用 rename-this-buffer-and-file 过后,lsp-bridge 就一直奔溃,他说找不到这个文件,重启也是一样
but I can copy

文件重命名,lsp-bridge现在还不支持

今天发现一些bug其实不是 lsp-bridge 的,特别是Java补全错乱的bug, 原因是 corfu 没有调用 exit-function :sob:

真想把company和corfu代码都拿掉,现在capf方法太多bug了。

1 个赞

capf 这种架构没法适应 lsp-bridge 这种 push 的机制,整个 capf 的方向都是错的,我准备把 corfu 和 company 这些代码都去掉了,要不没法从根本上解决很多补全兼容性问题。

lsp-bridge只需要 child frame , 不需要 capf。

不是我不想兼容 corfu/company, 而是机制不一样。

4 个赞