org-daemon - watch for appointments in org-mode files
org-daemon [--debug] [--early-warning=seconds] [--recheck-interval=seconds] \ [--no-emacsclient-eval] [--emacsclient-cmd=...] \ [--overview-widget=...] [--move-button] \ orgfile ... &
org-daemon is a Perl/Tk program which watches one or more emacs org-mode files for appointments, that is, entries in the form of <YYYY-MM-DD AAA HH:MM> and fires alarms in the form of non-modal dialogs. "Passive" timestamps (enclosed in square brackets) are ignored. Diary-style sexp entries are not implemented (see "TODO").
<YYYY-MM-DD AAA HH:MM>
There's an warning (a non-modal dialog with orange background) before the real alarm, by default 30 minutes (1800 seconds) before. This option can be used to change this default. Use 0 to turn early warnings off completely.
Set the interval for checking the specified org-mode files for changes. By default, org-daemon checks every 60 seconds.
Turn on debugging mode. Currently this means: do not iconify appointment list by default, and check every 3 seconds instead every 60 seconds.
If there are problems with the usage of emacsclient --eval, then this option may be used for simple non-eval emacsclient usage. If this is used, then a referenced org entry is not opened automatically.
emacsclient --eval
Provide an alternative commandline for emacsclient calls. The placeholder strings %l and %f are replaced by line and file of the current appointment. Example:
%l
%f
org-daemon --emacsclient-cmd="ssh otheruser@otherhost emacsclient +%l '%f'" ...
Select widget for overview window. Default is hlist, another possible value is listbox.
hlist
listbox
The early warning and alarm windows will get an additional "move" button (displayed with a right arrow: →) for moving the window quickly to the right screen border.
Use either Linux::Inotify2 together with AnyEvent (linux systems) or AnyEvent::Filesys::Notify (non-linux systems) for getting file modification events. Probably not useful on systems using kevent (*BSD). --recheck-interval is still applied for periodic checks.
--recheck-interval
Watch all given org-mode files periodically every minute (or the interval as given with the --recheck-interval switch).
Iconified list of next appointments, with entries in different colors (red for appointments in near future, over orange and yellow to green for appointments in far future)
By double-clicking on an entry in the appointment list, or clicking on the Edit button in the alarm window, the corresponding entry will be shown in emacs itself (needs emacsclient(1) and emacs has to be put into server-start mode)
server-start
Show an early warning 30 minutes before (or the period specified with --early-warning. Individual early warnings may be specified with the following non-standard extended org-mode syntax: <YYYY-MM-DD AAA HH:MM -CountUnit>, where Unit may be one of s (seconds), min (minutes), h (hours), w (weeks), m (months), and y (years). Example:
--early-warning
<YYYY-MM-DD AAA HH:MM -CountUnit>
<2009-12-25 Fr 12:00 -10min>
* what about locations attached to lon/lat, and automatic routing and automatic pre-alarm calculation? * more gui elements: * close button for alarm toplevel * iconify button for data list window * add another file into watcher list * remove a file from the watcher list * show the current watcher list * maybe some debugging helpers (time of the update, parsed contents...) * support "Diary-style sexp entries", i.e. timestamps in the form <%%(diary-float t 4 2)>
Tk
Slaven Rezic
To install App::orgdaemon, copy and paste the appropriate command in to your terminal.
cpanm
cpanm App::orgdaemon
CPAN shell
perl -MCPAN -e shell install App::orgdaemon
For more information on module installation, please visit the detailed CPAN module installation guide.