大佬能帮忙再看看嘛
ccls 补全服务器没有signature help
在 emacs -Q 下也有问题.
测试配置如下:
(show-paren-mode 1)
(eval-when-compile (require 'cl))
;; package repositories
(require 'package)
(add-to-list 'package-archives '("melpa" . "http://mirrors.tuna.tsinghua.edu.cn/elpa/melpa/") t)
(package-initialize)
(add-to-list 'load-path "~/.emacs.d/site-lisp/lsp-bridge")
(require 'lsp-bridge)
(setq lsp-bridge-c-lsp-server "ccls")
(global-lsp-bridge-mode)
边框是你主题或者配置的问题,善用emacs -Q排查。
看看 lsp-bridge 有没有报错?
麻烦报个github issue吧,是bug,谢谢。
好的, 紫薯布丁
前两个功能和第三个功能拆成两个PR吧,这样好对第三个补丁review,万一第三个补丁有问题也好回滚。
第三个补丁要改一下,只有lsp server要求全部同步选项的时候,elisp才向服务器发送buffer全部内容。
现在这样会导致编辑大文件时,其他语言每次变动都发buffer全部内容,影响性能。
我想过这个,只是看现在lsp-bridge.el
的设计是不需要知道server配置的,所以写成这样了。如果是多服务器的话elisp就要知道每个server的capabilities了。
我想要不把buffer名也发到change_file
里然后让epc直接拉buffer内容算了
这个补丁已经修复了, 原因是大多数服务器直接返回参数字符串, ccls和其他服务器实现都不一样, 它返回参数整体字符串以后, 再根据每个参数位置返回对应字符串切片的 index, lsp client 需要针对 ccls 做二次处理才行。
这个补丁的作用主要是针对 ccls 这种不标准的返回格式做了兼容。
对, 传递 buffer 的名字是一个更好的设计, buffer名字不耗费性能, 如果那个 lsp server 需要全部内容, 临时通过 epc 抓取一下 buffer 全部内容就好了。
你调整的时候, 顺便把 https://github.com/manateelazycat/lsp-bridge/blob/f0ff38d5a2a182736b5c45a49bd4aefb01ad8dc2/lsp-bridge.el#L1433-#L1436 这一块一并改进吧, 现在为了提升代码格式化的性能, 格式化中间没有发送 didChange 请求, 而是全部格式化以后先保存文件再让 lsp server 读取文件, 这样的实现的缺陷是强制用户保存一下文件, 如果能改成你现在说的通过 buffer name 来获取文件内容, 整个方案就更好了。
支持局部同步的还是现在逻辑, 要求全部更改内容的lsp server才通过 buffer name 获取全部文件内容, 因为在大文件的时候(比如几兆), 局部更改字符串肯定比传输整个文件要快(因为字符串动一下就传输整个文件还是有影响的)
大佬,我在编辑xxx.vue
文件时遇到以下错误
orjson
有安装且安装正确。
请问怎么解?
上图是emacs -Q
导入最小配置straight.el
、evil
和:
改完了,不过我没有趁手的project在手上测formatting
你把orjson卸载看看,感觉orjson对windows遇到编码问题了。
卸载后问题依然存在,而且我看那个Traceback
的路径是python内置的json库?
方便在github上发一段测试代码嘛?我有空看看
好,感谢了!