zplugin turbo mode 后台加载: ZSH 启动救星

2019-05-09 11:57:52 +08:00
 Kobayashi

声明:zplugin 和 zplug 是 2 个不同的 ZSH 插件管理器,前者特色为其 Turbo Mode (实际为后台加载),后者以其极差的并行实现效率而闻名。

Zplugin 实现的Turbo Mode,实际为一种后台加载。目前看来,是高耗时启动(如 nvm,rbenv,pyenv )的真正解决方案。在 prompt 出现后,高耗时初始化代码可在后台加载,此时可以正常键入命令、执行。其后台加载的变动都会反映回当前 shell 下(如 PATH 变动,alias、function 创建)。效果参考下面 reddit 文章,37 个插件 150ms 启动( SSD 情况下),实际还有 900ms 花在后台。

相关插件管理器对比

zplugin 还是唯一一个对于插件管理器自身和所有插件都实现了 bytecode 编译的插件管理器。编译 .zsh 文件为字节码无疑可以加快启动速度。据我测试( SSD 情况下),zplugin 插件管理器编译前后有 20 ms 差别,我自己的所有配置编译前后也有 15 ms 变化。(所有插件编译前后效果不好统计,因为 zplugin 总是会对插件编译为字节码,没有办法禁止)

除此以外,zplugin 作者也是 ZSH 插件 fast-syntax-highlighting, history-search-multi-word 的作者,代码效率应该也有保障。

zplugin 特性简介:

3663 次点击
所在节点    DevOps
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/562474

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX