diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2006-12-01 10:23:06 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2006-12-01 10:23:06 +0000 |
commit | 6b1b34d1da6b0db599c026e17df011ad6c6b3a30 (patch) | |
tree | 3559a344ebd62a8b0af17c70b9b0fdaeae5e2299 /Functions/Calendar/calendar_show | |
parent | ab8b8026dcc17f7c3d8dcfba7dba046b1ac7c42b (diff) | |
download | zsh-6b1b34d1da6b0db599c026e17df011ad6c6b3a30.tar.gz zsh-6b1b34d1da6b0db599c026e17df011ad6c6b3a30.tar.xz zsh-6b1b34d1da6b0db599c026e17df011ad6c6b3a30.zip |
c.f. 23023: new calendar function system.
Diffstat (limited to 'Functions/Calendar/calendar_show')
-rw-r--r-- | Functions/Calendar/calendar_show | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/Functions/Calendar/calendar_show b/Functions/Calendar/calendar_show new file mode 100644 index 000000000..f731d07a5 --- /dev/null +++ b/Functions/Calendar/calendar_show @@ -0,0 +1,24 @@ +integer start=$1 stop=$2 +shift 2 + +[[ -o zle ]] && zle -I +print -r "$*" + +local -a cmd +zmodload -i zsh/parameter || return + +# Use xmessage to display the message if the start and stop time +# are the same, indicating we have been scheduled to display it. +# Don't do this if there's already an xmessage for the same user. +# HERE: this should be configurable and we should be able to do +# better if xmessage isn't available, e.g. wish. +if [[ -n $DISPLAY && $start -eq $stop ]]; then + if [[ -n ${commands[xmessage]} ]]; then + cmd=(xmessage -center) + fi + if [[ -n $cmd[0] ]] && + ! ps -u$UID | grep $cmd[0] >/dev/null 2>&1; then + # turn off job control for this + ($cmd "$*" &) + fi +fi |