diff options
Diffstat (limited to 'Functions/Calendar/calendar_edit')
-rw-r--r-- | Functions/Calendar/calendar_edit | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/Functions/Calendar/calendar_edit b/Functions/Calendar/calendar_edit new file mode 100644 index 000000000..e31decb76 --- /dev/null +++ b/Functions/Calendar/calendar_edit @@ -0,0 +1,21 @@ +local editor=${VISUAL:-${EDITOR:-vi}} +local line calendar +local -a lockfiles + +integer cal_running + +sched | while read line; do + [[ $line = *" calendar -s "<->" "<-> ]] && (( cal_running = 1 )) +done + +zstyle -s ':datetime:calendar:' calendar-file calendar || calendar=~/calendar + +{ + calendar_lockfiles $calendar || return 1 + + eval $editor \$calendar +} always { + (( ${#lockfiles} )) && rm -f $lockfiles +} + +(( cal_running )) && calendar -s |