zoukankan      html  css  js  c++  java
  • 去掉oh_my_zsh主题自带的git检查

    oh_my_zsh是一个非常好用和好看的命令行配置,它包含自动补全目录下git自动检查主题插件等功能,给在命令行下工作的人提供了非常好的便利。

    前阵子配置vagrant虚拟机,为了打个环境给同事使用。考虑到有些命令需要在虚拟机里面完成,所以还是安装了一个oh_my_zsh

    但是问题来了,在oh_my_zsh的默认主题中,当进入一个是git仓库的文档夹时,会自动读取.git里面的内容,了解当前的仓库状态,比如当前分支。可是在虚拟机里读取文档的速度要慢一些,这就会导致每一条命令都会检查一下当前仓库状态的这个行为会使得命令行开始输入的状态变的很慢。

    一开始我以为是插件的原因,去掉git插件,sourse ~/.zshrc重载配置之后,还是如此,后来发现是主题的缘故。

    我通常是比较懒的,既然默认主题有这个问题,那就找一个别的主题好了。

    可是在oh_my_zshgithub上的theme列表中,每个主题都是含有这个功能的,所以只有自己修改主题了。

    // 进入用户主目录
    cd ~
    
    // 进入oh_my_zsh的主题目录,这里保存着所有可以在其github上的主题库,我们只要改名字就可以引入对应的主题
    cd .oh-my-zsh/themes
    
    // 编辑默认主题文档
    vim robbyrussell.zsh-theme
    

    打开默认主题文档会发现其实就几行,像下面这样

    local ret_status="%(?:%{$fg_bold[green]%}➜ :%{$fg_bold[red]%}➜ %s)"
    PROMPT='${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
    
    ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}"
    ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
    ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}"
    ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})"
    

    需要将其修改为

    local ret_status="%(?:%{$fg_bold[green]%}➜ :%{$fg_bold[red]%}➜ %s)"
    PROMPT='${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%} % %{$reset_color%}'
    
    
    
    # ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}"
    # ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})"
    

    也就是去掉git部分就好了,其他功能照常使用即可。

  • 相关阅读:
    JWT验证
    SQLite报错: no such column:StamoRule(表名)
    .Net Core 程序报错 在上一个操作完成之前,在此上下文上启动了第二个操作。
    接口请求报错 504 Gateway Time-out
    未处理的异常:system.io.file load exception:无法加载文件或程序集“ 。。。。 找到的程序集的清单定义与程序集引用不匹配。
    好多年没回到这个园子
    模拟webpack 实现自己的打包工具
    微信小程序迁移到头条小程序工具
    手机端图片懒加载
    react系列一,react虚拟dom如何转成真实的dom
  • 原文地址:https://www.cnblogs.com/brady-wang/p/14356525.html
Copyright © 2011-2022 走看看