fi
}
-# retrieve weather information on the console
-# Usage example: 'weather LOWG'
-weather() {
- emulate -L zsh
- [[ -n "$1" ]] || {
- print 'Usage: weather <station_id>' >&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
--- /dev/null
+# retrieve weather information on the console
+# Usage example: 'weather LOWG'
+
+emulate -L zsh
+
+if [[ -n "$1" ]]; then
+ print 'Usage: weather <station_id>'
+ 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