diff options
Diffstat (limited to '.oh-my-zsh/plugins/branch/branch.plugin.zsh')
-rw-r--r-- | .oh-my-zsh/plugins/branch/branch.plugin.zsh | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/.oh-my-zsh/plugins/branch/branch.plugin.zsh b/.oh-my-zsh/plugins/branch/branch.plugin.zsh new file mode 100644 index 0000000..2e5659b --- /dev/null +++ b/.oh-my-zsh/plugins/branch/branch.plugin.zsh @@ -0,0 +1,31 @@ +# Branch: displays the current Git or Mercurial branch fast. +# Victor Torres <vpaivatorres@gmail.com> +# Oct 2, 2015 + +function branch_prompt_info() { + # Defines path as current directory + local current_dir=$PWD + # While current path is not root path + while [[ $current_dir != '/' ]] + do + # Git repository + if [[ -d "${current_dir}/.git" ]] + then + echo '±' ${"$(<"$current_dir/.git/HEAD")"##*/} + return; + fi + # Mercurial repository + if [[ -d "${current_dir}/.hg" ]] + then + if [[ -f "$current_dir/.hg/branch" ]] + then + echo '☿' $(<"$current_dir/.hg/branch") + else + echo '☿ default' + fi + return; + fi + # Defines path as parent directory and keeps looking for :) + current_dir="${current_dir:h}" + done +} |