大家是怎么配置emacs使得有较好的C/C++开发体验的呢? 良好的开发体验一般如下:
- 良好的缩进等基本格式控制
- 基于语法的补全,或者基于文本tag补全也行
我目前使用的是ctags+citre+company进行补全,但感觉缩进这种有时候莫名其妙的。 想看看大家是咋配置的
大家是怎么配置emacs使得有较好的C/C++开发体验的呢? 良好的开发体验一般如下:
我目前使用的是ctags+citre+company进行补全,但感觉缩进这种有时候莫名其妙的。 想看看大家是咋配置的
到emacs 这就是 lsp-mode+company
我使用 eglot + citre,禁用了 eglot 的 flymake,因为我不需要这么重的语法检查。语法检查使用 clang-check,并且只有保存文件的时候才会检查。而且只显示当前文件的 error。主要原因是我的服务器的性能比较差,开全量检查不丝滑。
老哥觉得体验咋样
我试试lsp-mode的c++模式吧
语法检查clangd可以调clang-tidy模块
太重了,有点卡
刚刚使用了没多久,感觉补全是没什么问题的,语法检查够用了,虽然没有直接用language server的那么强大,但顺很多
多核能缓解卡顿情况吗,还是只看单核cpu、内存
处理一个文件的使用应该只用到一个核(猜测)。我的机器12核24线程。不过我的机器很便宜,二手的,单核不行。感觉我的笔记本都要比它流程很多。
Visual Studio
几个月之后再来更新自己的配置:
emacs是个单线程程序*。多核对于解决lsp-mode, eglot的卡顿是没用的,因为它是不慢在lsp server的indexing上,而且卡在其它方面**。lsp-bridge通过rpc (remote procedure call)绕过了这个限制,可以试试。
`* https://www.reddit.com/r/emacs/comments/ghq1yx/lets_get_real_multithreading_into_emacs_by_hiring/ or A vision of a multi-threaded Emacs • Core Dumped
`** https://manateelazycat.github.io/emacs/2022/06/26/why-lsp-bridge-not-use-capf.html