summaryrefslogtreecommitdiff
path: root/plugins/branch/branch.plugin.zsh
blob: c918ea2b5a9152609da0a7d2992bd3c21b823f0e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 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
  path=$(pwd)
  # While current path is not root path
  while [ $path != '/' ];
  do
    # Git repository
    if [ -d ${path}/.git ];
    then
      echo '±' $(/bin/cat ${path}/.git/HEAD | /usr/bin/cut -d / -f 3-)
      return;
    fi
    # Mercurial repository
    if [ -d ${path}/.hg ];
    then
      echo '☿' $(/bin/cat ${path}/.hg/branch)
      return;
    fi
    # Defines path as parent directory and keeps looking for :)
    path=$(/usr/bin/dirname $path)
  done
}