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

:+1: :+1: :+1:

点赞

action code 其实可以有自动引入包的功能吧

对,但是没有测试代码可以测试,有测试代码我就好添加这些功能。

目前 code action 只完成了 quickfix

个别功能可以开个分支,使用人员来给你提供测试用例的测试情况,

code action 架构上已经完全支持, 目前已经完全实现 quickfix , 剩余的 code action 只需要反馈测试代码就可以根据LSP服务器返回的内容来添加支持。

最近在使用 lsp-bridge,遇到一个问题不知道要怎么设置。acm 在弹出补全的页面后,会将 M-j, M-k 映射到 acm-mode-map 上,但我想保留这两个键,因为我需要用 M-j 来执行 pyim-convert-at-point。现在的情况是,我想输入 abc 字符,然后用 pyim 转换成中文,但因为 acm 把 M-j 给重映射了,现在就必须先 C-g 退出补全,然后再按 M-j。请问要怎样设置,才能让 acm 不拦截 M-j 呢?

你直接把命令设置到m-j就可以了呀

lsp-bridge-code-action 可以提示出action内容,但是,点击后没有任何操作,我记得lsp会自动填充import 内容,*lsp-bridge* 缓存区内容, 这是触发code action的

这是消息

给一下测试代码吧

demo project

此处有一处缺少引入,可以用来测试action code

晚上回去看看,应该很容易

我看了一下,已经可以了,PR 在路上,我用 Java 测的。

2 个赞

大佬有对 Python 的虚拟环境支持吗,我这边用 pyvenv-activate 环境后重启 lsp-bridge, 他给了我这个错误

Traceback (most recent call last):
  File "/home/steiner/workspace/lsp-bridge/lsp_bridge.py", line 28, in <module>
    from epc.server import ThreadingEPCServer
ModuleNotFoundError: No module named 'epc'

Process *lsp-bridge*<1> exited abnormally with code 1

首先自定义 lsp-bridge-python-command,这是用于运行 epc 的 python,然后在激活你的虚拟环境后,找一种方式修改掉 pyright.json 里的 pythonPath 为你的虚拟环境的 python,然后重启 lsp-bridge(或者启动前修改掉 pythonPath),这时候各种包补全跳转就都是你虚拟环境的了

这么麻烦,我还是等下作者修改吧 :joy:
@manateelazycat 大佬有支持虚拟环境的计划吗

Java和Rust语言返回的 code action 数据结构不一样,需要做一个兼容性处理。

Auto import 的 code action 已经实现了, 可以试一下。

1 个赞

大佬,尝试了一下auto import 可以用了,但是那个手动触发code-action 在typescript语言下还是无法补全import 内容,其他action也是没有反应

啥叫手动触发?没看懂

现在支持 auto import 和 quickfix , 其他 code action 要继续提供测试代码,我才知道怎么加