X-Git-Url: https://zdv2.bktei.com/gitweb/BK-2020-03.git/blobdiff_plain/21933f0c31f8e3fb73b0908867b05fc20998ced8..4a0d0e9acd5d9a1cc7612dbcdb87452f888e4423:/user/bkdatev?ds=sidebyside diff --git a/user/bkdatev b/user/bkdatev index 8938843..fb0b96c 100755 --- a/user/bkdatev +++ b/user/bkdatev @@ -2,11 +2,12 @@ # Desc: Baltakatei's verbose date command # Usage: bkdatev [args] # Example: bkdatev --date="2001-09-11T09:02:59-04" -# Version: 0.3.4 -# Depends: GNU Coreutils 8.32, Bash 3.2.57 +# Version: 1.0.4 +# Depends: GNU Coreutils 8.32, Bash 3.2.57, tzdata-legacy # Ref/Attrib: [1] "ISO 8601". Wikipedia. https://en.wikipedia.org/wiki/ISO_8601 # [2] "Changing the Locale in Wine" https://stackoverflow.com/a/16428951 # [3] "Shanghai vs Beijing" https://bugs.launchpad.net/ubuntu/+source/libgweather/+bug/228554 +# [4] “Understanding the "right" time zone database” https://kenta.blogspot.com/2016/03/sqfzcxay-understanding-right-time-zone.html # Notes: * Check `ls -R /usr/share/zoneinfo` for time zone names. # * Check `cat /usr/share/i18n/SUPPORTED` for supported locales. # * For list of valid locales, see: https://manpages.ubuntu.com/manpages/bionic/man3/DateTime::Locale::Catalog.3pm.html @@ -145,7 +146,14 @@ main() { ( export TZ=UTC; id="UTC"; - fs_3="+%s seconds since 1970-01-01T00:00+00"; + path_right_tz="/usr/share/zoneinfo/right/UTC"; + if [[ -f "$path_right_tz" ]]; then + date_string="$(date -Is "$@"; )"; + right_epoch="$(TZ=right/UTC date --date="$date_string" +%s;)"; # see [4] + fs_3="+%s POSIX seconds (${right_epoch} real) since 1970-01-01T00:00+00"; + else + fs_3="+%s POSIX seconds since 1970-01-01T00:00+00"; + fi; print_dateline "$@"; ); line_sep; @@ -277,6 +285,22 @@ main() { print_dateline "$@"; ); line_sep; + # Gaza City, Palestine (pop. (2017): 590,481) + ( + export TZ=Asia/Gaza; + export LANG="ar_JO.UTF-8"; # ar_PS is missing as of 2023-10-18, using ar_JO as closest substitute. + id="GAZA"; + print_dateline "$@"; + ); line_sep; + + # Tel Aviv, Israel (pop. (2021): 467,875) + ( + export TZ=Asia/Tel_Aviv; + export LANG="he_IL.UTF-8"; + id="TEL AVIV"; + print_dateline "$@"; + ); line_sep; + # Athens (pop. (2020): 3,526,887) ( export TZ=Europe/Athens;