<commit_before># ======================
# Version Control System
# ======================
zstyle ':vcs_info:*' enable git svn hg bzr
zstyle ':vcs_info:*' check-for-changes true


source ~/.zsh.d/zsh-vcs-prompt/zshrc.sh
ZSH_VCS_PROMPT_ENABLE_CACHING='false'
ZSH_VCS_PROMPT_USING_PYTHON='true'

ZSH_VCS_PROMPT_AHEAD_SIGIL='↑'
ZSH_VCS_PROMPT_BEHIND_SIGIL='↓'
ZSH_VCS_PROMPT_STAGED_SIGIL='●'
ZSH_VCS_PROMPT_CONFLICTS_SIGIL='✖'
ZSH_VCS_PROMPT_UNSTAGED_SIGIL='✚'
ZSH_VCS_PROMPT_UNTRACKED_SIGIL='…'
ZSH_VCS_PROMPT_STASHED_SIGIL='⚑'
ZSH_VCS_PROMPT_CLEAN_SIGIL='✔'

# zstyle ':vcs_info:*+*:*' debug true
zstyle ':vcs_info:svn*' formats "(%B%F{yellow}%s%%b%f)[%b|%u%c]"
zstyle ':vcs_info:svn*' branchformat "%B%F{red}%b(%r)%%b%f"
zstyle ':vcs_info:svn*+set-message:*' hooks svn-untracked

ZSH_VCS_PROMPT_VCS_FORMATS="#s"

+vi-svn-untracked() {
  if \svn info &> /dev/null; then
    if \svn status | \grep '^[MDA!]' &> /dev/null ; then
      local modified_count=$ZSH_VCS_PROMPT_UNSTAGED_SIGIL
      modified_count+=$(\svn status | \grep '^[MDA!]' | wc -l)
      hook_com[unstaged]+="%b%F{yellow}$modified_count%f"
    fi
    if \svn status | \grep '^?' &> /dev/null ; then
      local unstaged_count=$ZSH_VCS_PROMPT_UNTRACKED_SIGIL
      unstaged_count+=$(\svn status | \grep '^?' | wc -l)
      hook_com[unstaged]+="%f%b$unstaged_count%f"
    fi
  fi
}

typeset -F SECONDS
vcs_async_last=0
vcs_async_start=0
vcs_async_delay=0<commit_msg>Added experimental support for hg like git<commit_after># ======================
# Version Control System
# ======================
zstyle ':vcs_info:*' enable git svn hg bzr
zstyle ':vcs_info:*' check-for-changes true


source ~/.zsh.d/zsh-vcs-prompt/zshrc.sh
ZSH_VCS_PROMPT_ENABLE_CACHING='false'
ZSH_VCS_PROMPT_USING_PYTHON='true'

ZSH_VCS_PROMPT_AHEAD_SIGIL='↑'
ZSH_VCS_PROMPT_BEHIND_SIGIL='↓'
ZSH_VCS_PROMPT_STAGED_SIGIL='●'
ZSH_VCS_PROMPT_CONFLICTS_SIGIL='✖'
ZSH_VCS_PROMPT_UNSTAGED_SIGIL='✚'
ZSH_VCS_PROMPT_UNTRACKED_SIGIL='…'
ZSH_VCS_PROMPT_STASHED_SIGIL='⚑'
ZSH_VCS_PROMPT_CLEAN_SIGIL='✔'

# zstyle ':vcs_info:*+*:*' debug true
zstyle ':vcs_info:(svn|csv|hg)*' formats "(%B%F{yellow}%s%%b%f)[%b|%u%c]"
zstyle ':vcs_info:(svn|csv|hg)*' branchformat "%B%F{red}%b(%r)%%b%f"
zstyle ':vcs_info:svn*+set-message:*' hooks svn-untracked
zstyle ':vcs_info:hg*+set-message:*' hooks hg-untracked

ZSH_VCS_PROMPT_VCS_FORMATS="#s"

+vi-svn-untracked() {
  if \svn info &> /dev/null; then
    if \svn status | \grep '^[MDA!]' &> /dev/null ; then
      local modified_count=$ZSH_VCS_PROMPT_UNSTAGED_SIGIL
      modified_count+=$(\svn status | \grep '^[MDA!]' | wc -l)
      hook_com[unstaged]+="%b%F{yellow}$modified_count%f"
    fi
    if \svn status | \grep '^?' &> /dev/null ; then
      local unstaged_count=$ZSH_VCS_PROMPT_UNTRACKED_SIGIL
      unstaged_count+=$(\svn status | \grep '^?' | wc -l)
      hook_com[unstaged]+="%f%b$unstaged_count%f"
    fi
  fi
}

+vi-hg-untracked() {
  if ! hash hg; then
    return 0;
  fi
  if \hg id &> /dev/null; then
    if \hg status | \grep '^[MDA!]' &> /dev/null ; then
      local modified_count=$ZSH_VCS_PROMPT_UNSTAGED_SIGIL
      modified_count+=$(\hg status | \grep '^[MDA!]' | wc -l)
      hook_com[unstaged]+="%b%F{yellow}$modified_count%f"
    fi
    if \hg status | \grep '^?' &> /dev/null ; then
      local unstaged_count=$ZSH_VCS_PROMPT_UNTRACKED_SIGIL
      unstaged_count+=$(\hg status | \grep '^?' | wc -l)
      hook_com[unstaged]+="%f%b$unstaged_count%f"
    fi
  fi
}

typeset -F SECONDS
vcs_async_last=0
vcs_async_start=0
vcs_async_delay=0
{'fraction_non_alphanumeric': 0.18785471055618616, 'fraction_numerical': 0.0019863791146424517, 'mean_word_length': 5.238938053097345, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 12, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '188010', 'n_tokens_mistral': 1713, 'n_tokens_neox': 1636, 'n_words': 233}