From f5b4d22afa3fa2e3f2d18c23d266c5f17a30e29b Mon Sep 17 00:00:00 2001 From: Raymaekers Luca Date: Sun, 1 Oct 2023 21:12:32 +0200 Subject: refactor --- bin/extra/supd | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) (limited to 'bin/extra/supd') diff --git a/bin/extra/supd b/bin/extra/supd index 931d808..a383d65 100755 --- a/bin/extra/supd +++ b/bin/extra/supd @@ -1,24 +1,30 @@ #!/bin/sh -print_dir () { printf '%s: ' "$1" | sed "s#$HOME#~#" >&2; } +usage() { >&2 printf "usage: supd\nusage: supd "; exit 1; } check () { for dir in $1 do - print_dir "$2/$dir" + printf '%s: ' "$2/$dir" | sed "s#$HOME#~#" >&2 cd "$2/$dir" || continue git pull > /dev/null 2>&1 && printf 'Up to date.' || printf 'Couldn'\''t update.' + printf ' ' + git status --short 2> /dev/null | head -n1 | awk '{print $1 " "}' printf '\n' done } -dirs="installdrier dotfiles password-store" -prefix="$HOME/src" +if [ "$#" -eq 0 ] +then + dirs="installdrier dotfiles password-store" + prefix="$HOME/src" +else + prefix="$1" + shift || usage + dirs="$*" + [ "$dirs" ] || usage +fi check "$dirs" "$prefix" - -# dirs="$(ls -1 "$HOME/proj/personal")" -# prefix="$HOME/proj/personal" -# check "$dirs" "$prefix" -- cgit v1.2.3 From 5a8c1637d56e430f6d80e2b27e28f31cf21687dd Mon Sep 17 00:00:00 2001 From: Raymaekers Luca Date: Wed, 4 Oct 2023 02:40:50 +0200 Subject: added reading from stdin --- bin/extra/supd | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'bin/extra/supd') diff --git a/bin/extra/supd b/bin/extra/supd index a383d65..83a606b 100755 --- a/bin/extra/supd +++ b/bin/extra/supd @@ -1,6 +1,13 @@ #!/bin/sh -usage() { >&2 printf "usage: supd\nusage: supd "; exit 1; } +usage() { + >&2 cat <<-EOF + usage: supd + supd + stdout | supd + EOF + exit 1 +} check () { @@ -12,8 +19,8 @@ check () printf 'Up to date.' || printf 'Couldn'\''t update.' printf ' ' - git status --short 2> /dev/null | head -n1 | awk '{print $1 " "}' - printf '\n' + printf '%s\n' "$(git status --short 2> /dev/null | + awk 'NR==1 {print $1}')" done } @@ -21,6 +28,10 @@ if [ "$#" -eq 0 ] then dirs="installdrier dotfiles password-store" prefix="$HOME/src" +elif [ ! -t 0 ] +then + prefix="$1" + dirs="$(cat)" else prefix="$1" shift || usage -- cgit v1.2.3 From d9b55a1b4ce254afce95ec836d819d19da5b0d6e Mon Sep 17 00:00:00 2001 From: Raymaekers Luca Date: Thu, 5 Oct 2023 16:23:54 +0200 Subject: changed parse_branch and added it to supd --- bin/extra/supd | 7 +++++-- config/essentials/zsh/.zshrc | 11 +++-------- 2 files changed, 8 insertions(+), 10 deletions(-) (limited to 'bin/extra/supd') diff --git a/bin/extra/supd b/bin/extra/supd index 83a606b..4975b94 100755 --- a/bin/extra/supd +++ b/bin/extra/supd @@ -19,8 +19,11 @@ check () printf 'Up to date.' || printf 'Couldn'\''t update.' printf ' ' - printf '%s\n' "$(git status --short 2> /dev/null | - awk 'NR==1 {print $1}')" + printf '%s %s\n' "$(git status --short 2> /dev/null | + awk 'NR==1 {print $1}')" "$(git branch -v 2>/dev/null | + grep '^\*' | cut -f2 -d'[' | cut -f1 -d' ' | + sed 's/ahead/↑/;s/behind/↓/;s/\*//')" + done } diff --git a/config/essentials/zsh/.zshrc b/config/essentials/zsh/.zshrc index 9b6fa48..2499c45 100644 --- a/config/essentials/zsh/.zshrc +++ b/config/essentials/zsh/.zshrc @@ -106,14 +106,9 @@ RPROMPT='%F{blue}$(parse_git_remote)%f%F{red}$(parse_git_status)%f%F{green}$(par setopt prompt_subst parse_git_remote() { - b="$(git branch -v 2>/dev/null | grep "^*" | cut -f2 -d'[' | cut -f1 -d' ')" - if [ "$b" = "behind" ] - then - printf "↓ " - elif [ "$b" = "ahead" ] - then - printf "↑ " - fi + git branch -v 2>/dev/null | + grep '^\*' | cut -f2 -d'[' | cut -f1 -d' ' | + sed 's/ahead/↑/;s/behind/↓/;s/\*//' } parse_git_branch() { git symbolic-ref --short HEAD 2> /dev/null || git rev-parse --short HEAD 2> /dev/null -- cgit v1.2.3