zsh卡顿的问题

zsh卡顿的问题

笔者已经将zsh配置为默认的shell,但是在某些git仓库启动zsh,总是很卡顿。

其原因在于:oh-my-zsh为终端增加了自动跟踪git仓库变化的能力,当检测到当前目录为git所管理时,执行了一系列的操作来获取其变化,并将信息格式化好,显示在终端上。

改善措施如下:

  1. 覆盖oh-my-zsh默认的加载方法,在~/.oh-my-zsh/custom/目录下新增一个脚本,并以.zsh为后缀名,如overwirte.zsh,内容如下:

    function git_prompt_info() {
        ref=$(git symbolic-ref HEAD 2> /dev/null) || return
        echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$ZSH_THEME_GIT_PROMPT_PREFIX"
    }
    
  2. 关闭oh-my-zshdirty检查:

    git config --add oh-my-zsh.hide-dirty 1
    

    进一步关闭,配置zsh不读取任何信息:

    git config --add oh-my-zsh.hide-status 1
    
posted @ 2024-03-14 08:47  付时凡  阅读(579)  评论(0)    收藏  举报