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

已经合并,感谢感谢

感谢大佬,解决了Windows版Python编码问题。现在补全正常工作了,我也可以从vscode切到emacs了。

1 个赞

很高兴你可以工作,有问题继续反馈。:wink:

猫大反馈神速,我这几天把这3000多层帖子浏览了一遍,当然大部分我看不懂,感谢以猫大为首的热心开发者,使lsp-bridge迅速成熟。 另外还反馈一个小问题,前面问题排查完,配置文件中setq lsp-bridge-enable-log t注释掉了,重启emacs仍然有lsp-bridge和lsp-bridge-epc两个buffer,必须设置为nil吗?

这两个buffer不要管他,正常通讯所需

lsp-bridge在minibuffer中的补全貌似和 mini-frame 有冲突。使用补全后会变成这样:

请问有什么设置可以关闭lsp-bridge在minibuffer中的补全吗?

lsp-bridge不会在minibuffer补全

1 个赞

我发现lsp-bridge会向minibuffer-setup-hook添加lsp-bridge-enable-in-minibuffer,把这个函数从hook中删除就可以关闭lsp-bridge在minibuffer中的补全了。

aka.

(remove-hook 'minibuffer-setup-hook #'lsp-bridge-enable-in-minibuffer)

你说的这个呀, 我想想怎么改默认配置。

1 个赞

加了一个新的选项

默认关闭这个选项, 喜欢 minibuffer 补全 elisp 代码的同学自己打开。

1 个赞

好耶,感谢大佬

猫大,补全的文档窗口,是怎么设置边框、宽度、透明度。?我使用暗色主题,使用中发现,文档窗口边界不明显,如果文档内容很短,无法遮挡文件中原有内容,显示出来容易造成混淆。我想要么增宽遮挡住,要么给窗口边框设置颜色分界线。

目前考虑跟随主题, 颜色都比较接近Emacs本身的主题, 目前还没有开放边框的颜色设置。

今天用 acm-frame 替代了 posframe, 以保证续补全菜单、候选词文档、API文档、诊断、类型信息等菜单的显示效果和细节是一致的。

3 个赞

你尝试改一下 acm-frame-border-face 吧。

仔细看论坛输入框的内容。

改完不能自选poshandler(frame显示位置)了:

(plist-put lsp-bridge-signature-posframe-params :poshandler 'posframe-poshandler-frame-top-left-or-right-other-corner)

看了一下是写死的显示在point,想要别的得自己新写。

为啥没有选择改进posframe而是重写了一个呢?

不是重写一个, 而是 acm-frame 一开始就有, posframe有几个问题:

  1. UI细节和 acm-frame 有差异
  2. 不会加载 parent frame 的字体细节,导致 posframe 和 current frame 不一致
  3. 如果跳转到可视区域外的地方, posframe 会报错
  4. 最主要的理由, 不想两头修复bug了, 太累了

加了一个选项 lsp-bridge-signature-show-with-frame-position , 默认设置为 “bottom-right”

1 个赞

能否让lsp-bridge支持citre这种ctags系统?有时看那种比较简单的项目,citre还是挺好用的,但是citre好像是用的capf模式,需要开启company,又和lsp-bridge冲突了。每次都打开关闭company挺烦的。lsp-bridge好像有一个citre的backend,但只适配了老版本的citre。新版的好像用不了了。