diff options
author | 2025-02-13 14:13:49 +0530 | |
---|---|---|
committer | 2025-02-13 14:13:49 +0530 | |
commit | 8a2e1006b3b272126332aa064f3ad95387129544 (patch) | |
tree | 944c80ac612a65980d94a54ba11b6c7102037ecf /.config/zsh/oh-my-zsh/plugins/branch/branch.plugin.zsh | |
parent | dcbb16d8b08ff5956abef5e6478b59df2e93ad35 (diff) | |
download | dotfiles-master.tar.gz dotfiles-master.tar.bz2 dotfiles-master.zip |
Diffstat (limited to '.config/zsh/oh-my-zsh/plugins/branch/branch.plugin.zsh')
-rw-r--r-- | .config/zsh/oh-my-zsh/plugins/branch/branch.plugin.zsh | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/.config/zsh/oh-my-zsh/plugins/branch/branch.plugin.zsh b/.config/zsh/oh-my-zsh/plugins/branch/branch.plugin.zsh new file mode 100644 index 0000000..dd5871f --- /dev/null +++ b/.config/zsh/oh-my-zsh/plugins/branch/branch.plugin.zsh @@ -0,0 +1,35 @@ +# Branch: displays the current Git or Mercurial branch fast. +# Victor Torres <vpaivatorres@gmail.com> +# Oct 2, 2015 + +function branch_prompt_info() { + # Start checking in current working directory + local branch="" dir="$PWD" + while [[ "$dir" != '/' ]]; do + # Found .git directory + if [[ -d "${dir}/.git" ]]; then + branch="${"$(<"${dir}/.git/HEAD")"##*/}" + echo '±' "${branch:gs/%/%%}" + return + fi + + # Found .hg directory + if [[ -d "${dir}/.hg" ]]; then + if [[ -f "${dir}/.hg/branch" ]]; then + branch="$(<"${dir}/.hg/branch")" + else + branch="default" + fi + + if [[ -f "${dir}/.hg/bookmarks.current" ]]; then + branch="${branch}/$(<"${dir}/.hg/bookmarks.current")" + fi + + echo '☿' "${branch:gs/%/%%}" + return + fi + + # Check parent directory + dir="${dir:h}" + done +} |