parent
a9c882094d
commit
d49cacfb7b
2 changed files with 59 additions and 0 deletions
@ -0,0 +1,33 @@ |
||||
# Branch |
||||
|
||||
Displays the current Git or Mercurial branch fast. |
||||
|
||||
## Speed test |
||||
|
||||
### Mercurial |
||||
|
||||
```shell |
||||
$ time hg branch |
||||
0.11s user 0.14s system 70% cpu 0.355 total |
||||
``` |
||||
|
||||
### Branch plugin |
||||
|
||||
```shell |
||||
$ time sh /tmp/branch_prompt_info.sh |
||||
0.01s user 0.01s system 81% cpu 0.018 total |
||||
``` |
||||
|
||||
## Usage |
||||
|
||||
Edit your theme file (eg.: `~/.oh-my-zsh/theme/robbyrussell.zsh-theme`) |
||||
adding `$(branch_prompt_info)` in your prompt like this: |
||||
|
||||
```diff |
||||
- PROMPT='${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}' |
||||
+ PROMPT='${ret_status}%{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)$(branch_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}' |
||||
``` |
||||
|
||||
## Maintainer |
||||
|
||||
Victor Torres (<vpaivatorres@gmail.com>) |
||||
@ -0,0 +1,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 |
||||
} |
||||
Loading…
Reference in new issue