各位有没有发现 lsp-bridge 在 macOS 上运行要更缓慢和卡顿。
我的设备是 10 核心的 M1 Pro 的 MacBook Pro。Emacs 是从官网下载源码用native compilation 参数编译的。
同样的配置文件,lsp-bridge 的弹出和列表在另一台配置显著比我笔记本低一截的 Linux 电脑上却更流畅。甚至是我自己的macbook 上,如果在 debian 虚拟机里面运行 emacs + lsp-bridge 也比直接在 macOS 上要流畅许多。用 profiler 得到的结果如下:
1217 72% - redisplay_internal (C function)
140 8% - eval
132 7% + lsp-bridge--mode-line-format
8 0% + if
5 0% + jit-lock-function
5 0% file-remote-p
305 18% + command-execute
92 5% + timer-event-handler
43 2% + ...
15 0% + lsp-bridge-monitor-post-command
3 0% + #<interpreted-function 6FE>
这个差距在使用 rust-analyzer 分析rust 项目的时候还不明显,但是用 texlab 来读取一些较大的 latex 项目就很明显了, 比如键入 $\lam$
之后要等一两秒才会弹出\lambda
,而在 linux 上就是立刻弹出。使用 lsp-bridge-profile-dump 然后分析生成的 lsp-bridge.prof得到如下:
所以我想应该不是 lsp-bridge 的 python 部分运行慢。
当然即使如此,lsp-bridge 依然要比 lsp-mode 要快。
另外,EAF 在 macOS 上也要卡很多,在使用 EAF PDF Viewer 时候,如果拖动 emacs 窗口,那么原有内容会停留在原处一段时间,然后才跟过去到新的位置。为此我已经放弃在 macOS 上使用 EAF 了,看PDF还是用 skim 。