et2010
12
spacemacs 自带这个开关 SPC t -,但是我一般不开,因为影响性能。需要的时候 C-l 就行了。
好像叫 global center cursor mode?原先折腾 spacemacs 时找到开启过(Vim 的使用习惯),但体验不好,具体原因记不得了,好像是闪烁屏幕很跳的感觉。不太清楚 emacs,不知道这么个东东竟然能到影响性能的程度?
et2010
14
是啊,emacs 就是这么奇葩的存在,我也很惊奇,但是我在 org 下打开,移动光标快一点就会卡。也可能是我的配置有问题?
估计是配置问题,我倒是没怎么卡过,顶多是感觉补全慢一点而已。
有些功能还是官方自己实现下好些,什么都指望第三方 elpa 脚本实现,装个几百个包,不出问题就怪了。当然你可以从 mela 一堆包里面试,找出好用不冲突不卡的包弄个功能完善的配置,但这个花费的时间就太多了。
et2010
16
没错,我发现 spacemacs 的性能问题也比较严重,有些包,甚至是底层的包,没有做好优化。比如合作者 bmag 的包 window-purpose,那个包甚至会在你调用 (with-temp-buffer ..)
这种常用的函数时起作用,性能能好才见鬼了。我干脆把它屏蔽了。而且最吃性能的其实是 orgmode,也许你在其它 mode 下都可以跑得很流畅,但是到 org 这就不行了。
不过这也算是 org 的 featrue 吧,谁让它功能那么多呢
我最希望在 emacs 26 中看到的是性能的大幅改观。原生行号应该能提升些性能。
不太清楚 lisp 语法,不会调 bug。
有空可以尝试下 DOOM 那个配置,初看上去还不错。但奇怪也没见人分享使用经验。
et2010
18
DOOM 再好我也不会轻易尝试,我自己写了有 7-8 个 private layer,另外还有不少 local package,已经形成使用习惯了。而且来回折腾的时间成本太高了。
LdBeth
19
tan 90° ,不存在的。除非换解释器。Rust Emacs 也没有做到惊人程度的性能改观。
这礼拜 Reddit 上有人推荐换 Racket 内核,举双手赞成,因为 Racket 的文档超详尽,还有 Racket 的解释器是 Chez,Chez 的速度比 Chicken,guile,MIT,快太多太多了。
Remacs 的进展很慢很慢,C 代码没换多少,可能连 10 分之一都不到。
根本看不到 Rust 代码的影子。
LdBeth
22
讲个事,GitHub 代码统计是以文件为单位的,所以其实不能拿来当证据。
然后考虑到许可和政治因素,不太可能用 Racket
@stonejiajia @LdBeth
⋊> cloc ~/gitrepos/remacs
3318 text files.
3242 unique files.
882 files ignored.
github.com/AlDanial/cloc v 1.74 T=29.15 s (83.7 files/s, 70562.8 lines/s)
-----------------------------------------------------------------------------
Language files blank comment code
-----------------------------------------------------------------------------
Lisp 1654 158349 213058 1115523
C 263 56263 72020 270227
C/C++ Header 200 8936 13321 39810
TeX 27 3984 6428 17831
Objective C 9 3515 2467 15612
m4 100 1313 859 14140
Rust 42 876 1126 6548
Bourne Shell 17 610 865 5371
HTML 18 178 68 2679
Pascal 2 191 241 2205
... ... ... ... ...
-----------------------------------------------------------------------------
SUM: 2440 237953 312649 1506407
-----------------------------------------------------------------------------
1 个赞
看到这里想起来刚开始在jetbrains里用vim插件的时候也很不习惯它的C-d
C-u
,现在细想一下的话,其实还是不习惯,但是编辑的时候这两个键少按了很多(虽然仍然非常多)。
Instead,要找特定符号直接/
→nnnnn
,然后ma
mb
'a
'b
'a
,给每个地方取个alias,比如constructor就mc
、member变量就mm
,index函数就mi
,这样这个文件编辑一会儿之后脑袋里hashMap很完善了,就想去哪儿就去哪儿,'c
瞬间跳转,但是比较占用脑袋空间。楼主写C/C++文件比较大可能不一定好用,我前端文件比较小这样很痛快。
vim/evil用多了就感觉自己越发接近机器了,剪贴板registers和marker registers再也离不开,编辑一行代码,带着我要改什么,眼睛一看先去找unique的字符,逗号括号等等,不够再看两个连一起的(用evil-snipe),人肉正则匹配一下,然后按下c2t,
C-r "
。IDE=更理解代码的编辑器;vim/evil users=更理解代码的程序员。
ztlevi
25
用evil-jump,C-i, C-o想怎么跳怎么跳。。。
(setq scroll-preserve-screen-position 'always)
koali
28
你的意思是不是:用鼠标滚轮滚动页面时,或srcoll页面时,希望保留光标在文档中的位置不变,而不是保持光标停留在窗口中的显示位置不变?感觉回答的人有好几种理解…