我用了蛮久emacs了,还是不太会debug,edebug只会个皮毛
懶貓有空來玩 language server https://github.com/jacobdufault/cquery/wiki/Emacs 集成 company-childframe company-easyhelp company-lsp lsp-ui emacs-cquery 打造新鮮UI
你家的deepin-emacs,直接apt安装就启动配置失败,233
有没有 lsp 懒人配置,弄了几次都没成功,就想试试看 lsp-rust 效果好不好
没有人给 spacemacs 做 lsp layer
我这个星期都在尝试 lsp-mode
, 写了一点 lsp-mode
的配置,只是我用的不是 Spacemacs. rls
是基于 racer
,所以 racer
有的功能,rls
基本都有.体验来说 lsp-rust
比 racer
好一点,但是就个人感觉,也没有突破性的提高,感觉只是补全的速度快了起来,多了 symbol-highlight
.但是另外一方面,rls
比不得 racer
成熟,还是有坑,但是总体的感觉比半年前的 rls
有改进,起码不会把 Emacs弄挂,那时候的 rls
动不动就挂.
我感興趣這些 server
- 補全時是否新開線程調用編譯器
- 補全時是每次擊鍵都執行複雜的邏輯提供補全項,還是有邏輯提供緩存結果;是否有 ycmd 那樣的 filter 和排序
- 是否支持多線程檢索
- 編輯時,索引內容和文檔內容不同步,是否支持 cross references
- 是否保存索引文件到磁盤,避免大項目每次重新檢索
- 提供哪些 LSP 外的擴展功能,比如
$cquery/derived
$cquery/memberHierarchy
(還沒有人寫樹形UI T_T,可能抄一個 treemacs 就好了) -
textDocument/definition
能用在哪些地方
我嘗試“過度”利用交叉引用,加一些東西: https://github.com/jacobdufault/cquery/wiki/FAQ#definitions
弄了 GitHub Releases ,安装应该容易了 https://github.com/jacobdufault/cquery/releases/tag/binary-20180121
lsp-mode 没有有效的关闭机制。 假如 lsp server process 异常退出了,各种 lsp-methods.el 设置的各种 hook 都会报错,echo area 不停显示错误 我也不确定 (lsp–shutdown-cur-workspace) 能否按预期工作
现在还是都靠把和一个 lsp–workspace 关联的全部buffer都关闭;或者重启 emacs
lsp{,-mode} 的另一个问题就是不支持临时 buffer,这对于经常使用 org-mode 写各种代码片段的人来说只能望而兴叹了。
我觉得当务之急是给所有“重装解决问题”的帖子打上标记,避免大家点击,节省时间,挽救生命。
emacs 中文社区做的相当不错,然而我是 Vim 用户,也希望 Vim 能有一个类似的社区,然而并没有.
再开个vim的板块。 相信很多emacs用户也是vim用户。
那不是显得不纯粹了?
有了一个 Vim 版块,目测天天开战。很多emacs用户也是Vim用户,这话没错,但是准确来说应该是 evil 用户。在Linux 社区说:再开个Windows 版块,很多Linux 用户也是 Windows 用户
嗯有这个可能性。不过,reddit里vim用户和emacs用户也没天天开战, 还是看氛围吧。
Reddit 没打架是因为那是不同的 sub-reddit版块,你试试天天去Vim社区发Emacs 的消息,看有没人打你。Reddit 是一个大的社区,而这只是Emacs 社区。情况不一样,这样的类比不合适。这里氛围是很好的,但是总有一些同学要过来找茬,我也很无奈. 摊手.jpg
既然说开了,我就接着说几句话,在我用Emacs 前,我自己已经用了两年的 Vim,可能现在Vim 的插件变化很多,但是无插件的Vim 操作我觉得我还是很熟练的。Emacs 社区是我见过最友好的社区之一,另外一个是 Rust 社区,很多时候我不太懂的是Vim 为什么类似的插件那么多,包管理器有 Vundle, neoBundle, vim-plug,那么多的包安装器都是插件的形式,安装的方式也不一样,管理起来真的混乱,为什么不推动一个内置的包管理器呢?喜欢造轮子?引用社区某位同学的评论
Emacs 中 package 的安装方式就简单得多了,一个 use-package 基本能解决所有 package 的安装。而且 Emacs 的用户群似乎更偏向于改进已有的 package 而不是重新造轮子,所以 package 数量虽然少,但是功能齐全。
Emacs 很多 package都是在现有的基础上面改进,即使有类似功能的package 设计理念都是不一样的,比如 ivy vs Helm, 小而精 vs 大而全
只把工具当工具用是不会打架的,非要比个高下则会引发口水战。 我用emacs时间很短,之前和现在也都是vim用户。有的场景用vim,有的场景用emacs。 像os一样,我osx,win,linux都混用的。 合适的场景先合适的工具。
对, 无论你有什么样的合理理由, 只要引发宗教战争,就是你的罪过。
没有比较就没有伤害, 真正的热爱是潜移默化的贡献代码或者文档。