zsh 更快的启动

zsh 更快的启动

我喜欢 tmux,但每当我需要使用新窗格或新窗口创建分割时,它都必须运行我的 zsh init 脚本.profile等。它们运行大约需要几秒钟。初始化类似的东西法西德ETC。

是否可以加快启动速度?

答案1

“正在初始化 fasd 等东西。” ——嗯,做复杂的事情肯定需要一些时间。

以下是一些加快 zsh 启动速度的通用技巧:

  • 仅运行您实际需要的命令。不要使用像 oh-my-zsh 这样的大型通用框架,它定义了另一个假装可以满足所有人需求的配置层(但实际上并没有)。
  • 避免运行子进程。对于短字符串操作,请使用 zsh 的内置构造,​​而不是cutsedawk等。
  • 对于任何大型文件都使用字节编译文件。
  • 确保缓存完成信息:传递-dcompinit.
  • 延迟加载,即在第一次使用时加载。随意使用autoload

要了解是什么花了这么长时间,请分析您的.zshrc.

  • 您可以从 zsh 分析器获取一些测量结果。添加zmodload zsh/zprof到你的顶部.zshrc并运行zprof
  • 您可以跟踪 zsh 正在做什么(请注意,跟踪本身会减慢速度,但以基本一致的方式)。添加setopt prompt_subst; zmodload zsh/datetime; PS4='+[$EPOCHREALTIME]%N:%i> '; set -x到您的.zshrc.

相关内容