最近闲的蛋疼想试试性能优化
究其原因,发现用 IDEA 编程还是不错的,又不想全面转到他上面去工作,也不想转到 Doom 或者其他的配置,只想在自己的配置上不断改进,优化
我就是这么一个忠贞不二的人,可惜现在还是单身
查看相关 “优化” 帖子的时候,注意到一些词语,
- 生成本机代码
- 编译 el 文件
- gccemacs
- 垃圾回收
不知道有哪位能提供下具体的优化方案和建议,这些帖子里就知识一笔带过,激不起兴趣
最近闲的蛋疼想试试性能优化
究其原因,发现用 IDEA 编程还是不错的,又不想全面转到他上面去工作,也不想转到 Doom 或者其他的配置,只想在自己的配置上不断改进,优化
我就是这么一个忠贞不二的人,可惜现在还是单身
查看相关 “优化” 帖子的时候,注意到一些词语,
最好的优化方式是针对每个项目单独配置 emacs (不过大家应该不会这样做
日常用着卡,一般是要不是GC卡,要不是 format-mode-line 卡,要不是某些 timer 一直在跑
于是,要优化就顺着 profile report 改呗。用一段时间后,发现某个占用了大量CPU,就关掉之类的x
还可能是一些常用hook被挂上了一些优化比较糟糕的函数
不挂在 pre-command-hook 一类就还好x
(犹记前面 savehist 不断创建新temp buffer,然后因为不进行GC,导致内存溢出
savehist 现在还有问题吗?我刚刚启用了它。
偶尔碰到退出时,卡在写入recentf 文件,只能强制关闭
session.el
可以保存所有全局变量。也没有性能问题。
我用的这个配置,用起来还行。
(use-package savehist
:ensure nil
:hook (after-init . savehist-mode)
:init (setq enable-recursive-minibuffers t ; Allow commands in minibuffers
history-length 1000
savehist-additional-variables '(mark-ring
global-mark-ring
search-ring
regexp-search-ring
extended-command-history)
savehist-autosave-interval 300))
先给一个建议,用gccemacs版本效果立竿见影,不过得忍受编译和插件安装后CPU飙升的问题。另外,目前最新版不能运行,会报这个错。
emacs: can't find function "F6d656e752d6261722d7570646174652d62756666657273_menu_bar_update_buffers_0
要compile啊
那这个飙升在运行时会发生吗?
也就第一次运行你安装的软件或者包的时候会编译。没什么大的影响。建议安装试试看。
还有个小问题,我想把gccemacs和原来的版本分开安装,有没有什么解决办法
不知道你是什么操作系统?我在Mac 下是直接通过 brew 安装:
brew install emacs-plus@28 --with-native-comp
应该是可以安装多个不同版本的,就是的app目录下软链接的的名字要改一下,不然会重名。
ubuntu 诶
Ubuntu 我不熟悉唉,等其他大佬来解决了。
我主要使用的 Arch Linux , Windows 10 和 Mac。
其实装了native-comp 以后基本不会用老版本了。反正我是基本没开过😄,虽然在Mac 和 Windows都装了 27.2.
PS:Ubuntu 安装 native-comp 有点麻烦,需要自己编译,而且Ubuntu上的Gcc版本比较老。反正我是没成功过。还是Arch 系方便,一条命令就可以安装了。
害,这个emacs源码下载太艰辛了,1个多G,下好了跟我说 libgccjit
找不到,查了网络又要加仓库
累 skr 人,我还是不去作死了