From 3db9d153efb49547f4be787e0488b7f1d735f369 Mon Sep 17 00:00:00 2001 From: Frank Terbeck Date: Mon, 28 Nov 2011 22:02:04 +0100 Subject: [PATCH] zshrc: Move weather to its own file Signed-off-by: Frank Terbeck --- etc/zsh/zshrc | 45 --------------------------------- usr_share_grml/zsh/functions/weather | 49 ++++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 45 deletions(-) create mode 100644 usr_share_grml/zsh/functions/weather diff --git a/etc/zsh/zshrc b/etc/zsh/zshrc index b87dab9..88f736c 100644 --- a/etc/zsh/zshrc +++ b/etc/zsh/zshrc @@ -3681,51 +3681,6 @@ fluxkey-change() { fi } -# retrieve weather information on the console -# Usage example: 'weather LOWG' -weather() { - emulate -L zsh - [[ -n "$1" ]] || { - print 'Usage: weather ' >&2 - print 'List of stations: http://en.wikipedia.org/wiki/List_of_airports_by_ICAO_code'>&2 - return 1 - } - - local VERBOSE="yes" # TODO: Make this a command line switch - - local ODIR=`pwd` - local PLACE="${1:u}" - local DIR="${HOME}/.weather" - local LOG="${DIR}/log" - - [[ -d ${DIR} ]] || { - print -n "Creating ${DIR}: " - mkdir ${DIR} - print 'done' - } - - print "Retrieving information for ${PLACE}:" - print - cd ${DIR} && wget -T 10 --no-verbose --output-file=$LOG --timestamping http://weather.noaa.gov/pub/data/observations/metar/decoded/$PLACE.TXT - - if [[ $? -eq 0 ]] ; then - if [[ -n "$VERBOSE" ]] ; then - cat ${PLACE}.TXT - else - DATE=$(grep 'UTC' ${PLACE}.TXT | sed 's#.* /##') - TEMPERATURE=$(awk '/Temperature/ { print $4" degree Celcius / " $2" degree Fahrenheit" }' ${PLACE}.TXT | tr -d '(') - echo "date: $DATE" - echo "temp: $TEMPERATURE" - fi - else - print "There was an error retrieving the weather information for $PLACE" >&2 - cat $LOG - cd $ODIR - return 1 - fi - cd $ODIR -} - # mercurial related stuff if check_com -c hg ; then # gnu like diff for mercurial diff --git a/usr_share_grml/zsh/functions/weather b/usr_share_grml/zsh/functions/weather new file mode 100644 index 0000000..44a87e1 --- /dev/null +++ b/usr_share_grml/zsh/functions/weather @@ -0,0 +1,49 @@ +# retrieve weather information on the console +# Usage example: 'weather LOWG' + +emulate -L zsh + +if [[ -n "$1" ]]; then + print 'Usage: weather ' + print \ + 'List of stations: http://en.wikipedia.org/wiki/List_of_airports_by_ICAO_code' + return 0 +fi + +local VERBOSE="yes" # TODO: Make this a command line switch + +local ODIR=`pwd` +local PLACE="${1:u}" +local DIR="${HOME}/.weather" +local LOG="${DIR}/log" + +if [[ -d ${DIR} ]]; then + print -n "Creating ${DIR}: " + mkdir ${DIR} + print 'done' +fi + +print "Retrieving information for ${PLACE}:" +print +cd ${DIR} && \ + wget -T 10 --no-verbose --output-file=$LOG --timestamping \ + http://weather.noaa.gov/pub/data/observations/metar/decoded/$PLACE.TXT + +if [[ $? -eq 0 ]]; then + if [[ -n "$VERBOSE" ]] ; then + cat ${PLACE}.TXT + else + DATE=$(grep 'UTC' ${PLACE}.TXT | sed 's#.* /##') + TEMPERATURE=$(awk '/Temperature/ { + print $4" degree Celcius / " $2" degree Fahrenheit" + }' ${PLACE}.TXT | tr -d '(') + echo "date: $DATE" + echo "temp: $TEMPERATURE" + fi +else + print "There was an error retrieving the weather information for $PLACE" >&2 + cat $LOG + cd $ODIR + return 1 +fi +cd $ODIR -- 2.1.4