From d886facadff7f2f452ab496d3b8dee59922798c4 Mon Sep 17 00:00:00 2001 From: arzzen Date: Tue, 24 Oct 2023 14:52:00 +0200 Subject: [PATCH] fix format date --- git-quick-stats | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/git-quick-stats b/git-quick-stats index d4b1a93..95c1ae9 100755 --- a/git-quick-stats +++ b/git-quick-stats @@ -102,6 +102,23 @@ function optionPicked() { echo -e "${msg}\n" } +################################################################################ +# DESC: Format date string +# ARGS: $* (required): String +# OUTS: String +################################################################################ +format_date() { + local date="${1}" + local outf="${2}" + local datef="${3:-"%b %d %H:%M:%S %Y %Z"}" # Tue Oct 24 13:34:22 2023 +0300 + if [[ "$OSTYPE" == "linux-gnu"* ]]; then + local resp="$(date -d "${date}" "+${outf}")" + elif [[ "$OSTYPE" == "darwin"* ]]; then + local resp="$(date -j -f "${datef}" "${date}" "+${outf}")" + fi + printf "%s" "${resp}" +} + ################################################################################ # DESC: Help information printed to stdout during non-interactive mode # ARGS: None @@ -394,7 +411,7 @@ function changelogs() { --date=short "${_author}" "$_since" "$_until" $_log_options $_pathspec \ | sort -u -r | head -n $_limit \ | while read DATE; do - day=$(date -d $(echo $DATE|awk -F- '{print $1 "-" $2 "-" $3}') +%A) + day=$(format_date "$DATE" "%A" "%Y-%m-%d") echo -e "\n[$DATE - $day]" GIT_PAGER=cat git -c log.showSignature=false log \ --use-mailmap $_merges \