NAME
wyrd is a text-based front-end to remind(1), a sophisticated calendar
and alarm program.
SYNOPSIS
wyrd [OPTIONS] [FILE]
DESCRIPTION
Open the calendar and display reminders defined in FILE (and any
included reminder files). The default reminder file is ~/.reminders.
OPTIONS
--version
Display version information and exit.
--help Display usage information.
--add EVENT
Add given event to reminders file and exit.
--a EVENT
Add given event to reminders file and exit.
QUICK START
CAUTION: while this manpage should be suitable as a quick reference, it
may be subject to miscellaneous shortcomings in typesetting. The
definitive documentation is the user manual provided with Wyrd in PDF
or HTML format.
This section describes how to use Wyrd in its default configuration.
After familiarizing yourself with the basic operations as outlined in
this section, you may wish to consult the wyrdrc(5) manpage to see how
Wyrd can be configured to better fit your needs.
OVERVIEW
Before attemping to use Wyrd, learn how to use Remind. Wyrd makes no
attempt to hide the details of Remind programming from the user.
At the top of the window is a short (incomplete) list of keybindings.
The left window displays a scrollable timetable view, with reminders
highlighted in various colors. If the DURATION specifier is used for a
reminder, the highlighted area is rendered with an appropriate size.
Overlapping reminders are rendered using one of four different
indentation levels so that all reminders are at least partially
visible. If the current time is visible in this window, it is
highlighted in red.
The upper right window displays a month calendar, with the color of
each day representing the number of reminders it contains. The colors
range across shades of white to blue to magenta as the number of
reminders increases. The selected date is highlighted in cyan; if the
current date is visible, it is highlighted in red.
The lower right window displays a list of the untimed reminders falling
on the selected date.
The bottom window displays the full text of the MSG for the reminder or
reminders that are currently selected.
NAVIGATION
--------------------------------------------------------------------------------------------------------
Action Keypress
--------------------------------------------------------------------------------------------------------
scroll up and down the schedule <up>, <down> or k, j
jump back or forward by a day <pageup>, <pagedown> or 4, 6 or <, > or H, L
jump back or forward by a week 8, 2 or [, ] or K, J
jump back or forward by a month {, }
jump to current date and time <home>
jump to the next reminder <tab>
switch between schedule and untimed reminders window <left>, <right> or h, l
zoom in on the schedule z
scroll the description window up and down d, D
--------------------------------------------------------------------------------------------------------
Notice that if you have a numeric keypad, the {4, 6, 8, 2} keys will
let you move directionally in the month calendar view at the
upper-right of the screen. Similarly, {H, J, K, L} will cause
directional calendar movement using the standard mapping from vi(1).
In addition to the hotkeys provided above, Wyrd lets you jump
immediately to a desired date by pressing ’g’, entering in a date
specifier, and then pressing <return>. Any of the following date
specifiers may be used:
* 8 digits representing year, month, and day: YYYYMMDD
* 4 digits representing month and day (of current year): MMDD
* 2 digits representing day (of current month and year): DD
(The date specifier format may be changed to DDMMYYYY; consult the
section on CONFIGURATION VARIABLES. )
EDITING REMINDERS
Note: By default, Wyrd is configured to modify your reminder files
using the text editor specified by the $EDITOR environment variable.
(This configuration has been tested successfully with a number of
common settings for $EDITOR, including ’vim’, ’emacs’, and ’nano’.) If
you wish to use a different editor, see the wyrdrc(5) manpage.
If you select a timeslot in the schedule view, then hit ’t’, you will
begin creating a new timed reminder. Wyrd will open up your reminder
file in your favorite editor and move the cursor to the end of the
file, where a new reminder template has been created. The template has
the selected date and time filled in, so in many cases you will only
need to fill in a MSG value.
Similarly, hitting ’u’ will begin creating an untimed reminder. ’w’
will create a weekly timed reminder, and ’W’ will create a weekly
untimed reminder; ’m’ will create a monthly timed reminder, and ’M’
will create a monthly untimed reminder.
’T’ and ’U’ also create timed and untimed reminders (respectively), but
first will provide a selection dialog for you to choose which reminder
file you want to add this reminder to. The set of reminder files is
determined by scanning the INCLUDE lines in your default reminder file.
If you select a reminder (either timed or untimed) and hit <return>,
you will begin editing that reminder. Wyrd will open up the appropriate
reminders file in your editor and move the cursor to the corresponding
REM line.
If you select a timeslot that contains multiple overlapping reminders,
Wyrd will provide a dialog that allows you to select the desired
reminder.
If you hit <enter> on a blank timeslot, Wyrd will begin creating a new
timed or untimed reminder (depending on whether the timed or the
untimed window is selected).
Finally, pressing ’e’ will open the reminder file in your editor
without attempting to select any particular reminder.
QUICK REMINDERS
Wyrd offers an additional mode for entering simple reminders quickly.
Press ’q’, and you will be prompted for an event description. Simply
enter a description for the event using natural language, then press
<return>. Examples:
* meeting with Bob tomorrow at 11
* drop off package at 3pm
* wednesday 10am-11:30 go grocery shopping
* Board game night 20:15 next Fri
* 7/4 independence day
* 7/4/2007 independence day (next year)
* independence day (next year) on 2007-07-04
If your event description can be understood, Wyrd will immediately
create the reminder and scroll the display to its location.
Currently the quick reminder mode tends to favor USA English
conventions, as generalizing the natural language parser would require
some work.
Wyrd also allows you to use the "quick reminder" syntax to create new
reminders from the command line, using the -a or --add options. For
example,
wyrd --add "dinner with neighbors tomorrow at 7pm"
would create a new reminder for tomorrow evening. When used in this
mode, Wyrd exits silently with error code 0 if the reminder was
successfully created. If the reminder could not be created (e.g. if
the reminder syntax could not be parsed), Wyrd prints an error message
and exits with a nonzero error code.
CUTTING AND PASTING REMINDERS
Reminders can be easily duplicated or rescheduled through the use of
Wyrd’s cutting and pasting features.
Selecting a reminder and pressing ’X’ will cut that reminder: the
corrdsponding REM line is deleted from your reminders file, and the
reminder is copied to Wyrd’s clipboard. To copy a reminder without
deleting it, use ’y’ instead.
To paste a reminder from the clipboard back into your schedule, just
move the cursor to the desired date/time and press ’p’. Wyrd will
append a new REM line to the end of your reminders file, and open the
file with your editor. The REM line will be configured to trigger on
the selected date. If the copied reminder was timed, then the pasted
reminder will be set to trigger at the selected time using the original
DURATION setting. (Additional Remind settings such as delta and tdelta
are not preserved by copy-and-paste.)
If you wish to paste a reminder into a non-default reminders file, use
’P’. This will spawn a selection dialog where you can choose the file
that will hold the new reminder.
WARNING: Cutting a reminder will delete only the single REM command
responsible for triggering it. If you are using more complicated Remind
scripting techniques to generate a particular reminder, then the cut
operation may not do what you want.
VIEWING REMINDERS
Aside from viewing reminders as they fall in the schedule, you can
press ’r’ to view all reminders triggered on the selected date in a
less(1) window. Similarly, ’R’ will view all reminders triggered on or
after the selected date (all non-expired reminders are triggered).
If you want to get a more global view of your schedule, Wyrd will also
let you view Remind’s formatted calendar output in a less(1) window.
Pressing ’c’ will view a one-week calendar that contains the selected
date, while pressing ’C’ will view a one-month calendar containing the
selected date.
SEARCHING FOR REMINDERS
Wyrd allows you to search for reminders with MSG values that match a
search string. Press ’/’ to start entering a (case insensitive) regular
expression. After the expression has been entered, press <return> and
Wyrd will locate the next reminder that matches the regexp. Press ’n’
to repeat the same search. Entry of a search string may be cancelled
with <esc>.
The regular expression syntax is Emacs-compatible.
Note: Sorry, there is no "search backward" function. The search
function requires the use of "remind -n", which operates only forward
in time. For the same reason, there is a command to jump forward to
the next reminder, but no command to jump backward to the previous
reminder.
OTHER COMMANDS
A list of all keybindings may be viewed by pressing ’?’. You can exit
Wyrd by pressing ’Q’. If the screen is corrupted for some reason, hit
’Ctrl-L’ to refresh the display.
ALARM STRATEGIES
You may wish to generate some sort of alarm when a reminder is
triggered. Wyrd does not offer any special alarm functionality,
because Remind can handle the job already. Check the Remind manpage and
consider how the -k option could be used to generate alarms with the
aid of external programs. For example, the following command will
generate a popup window using gxmessage(1) whenever a timed reminder is
triggered:
remind -z -k’gxmessage -title "reminder" &’ ~/.reminders &
(A sensible way to start this alarm command is to place it in
{.xinitrc} so that it launches when the X server is started.) If you
want some advance warning (say, 15 minutes), you can cause Remind to
trigger early by setting a tdelta in the AT clause:
REM Nov 27 2005 AT 14:30 +15 MSG Do something
Alternatively, if you want to generate alarms only for specific
reminders, consider using Remind’s RUN command. This process could be
easily automated by using the templateN configuration variables
described in the wyrdrc(5) manpage.
MISCELLANEOUS
Remind’s TAG specifier may be used to cause Wyrd to give special
treatment to certain reminders. If a reminder line includes the clause
"TAG noweight", then Wyrd will not give that reminder any weight when
determining the ‘‘busy level’’ colorations applied to the month
calendar. If a reminder line includes the clause "TAG nodisplay", then
Wyrd will neither display that reminder nor give it any weight when
determining the month calendar colorations. The tag parameters are case
insensitive.
WARNING: These tag parameters are not guaranteed to interact well with
other Remind front-ends such as tkremind.
USAGE TIPS
* Wyrd fills in sensible defaults for the fields of a REM
statement, but you will inevitably need to make some small edits
to achieve the behavior you want. If you use Vim, you can make
your life easier by installing the Vim-Latex Suite and then
modifying your ~/.wyrdrc to use REM templates like this:
set timed_template="REM %monname% %mday% %year% <++>AT %hour%:%min%<++>
DURATION 1:00<++> MSG %\"<++>%\" %b"
set untimed_template="REM %monname% %mday% %year% <++>MSG %\"<++>%\"
%b"
With this change, hitting Ctrl-J inside Vim (in insert mode) will cause
your cursor to jump directly to the <++> markers, enabling you to
quickly add any desired Remind delta and message parameters.
LICENSING
Wyrd is Free Software; you can redistribute it and/or modify it under
the terms of the GNU General Public License (GPL), Version 2, as
published by the Free Software Foundation. You should have received a
copy of the GPL along with this program, in the file ’COPYING’.
ACKNOWLEDGMENTS
Thanks, of course, to David Skoll for writing such a powerful reminder
system. Thanks also to Nicolas George, who wrote the OCaml curses
bindings used within Wyrd.
CONTACT INFO
Wyrd author: Paul Pelzl <pelzlpj@eecs.umich.edu>
Wyrd website: http://www.eecs.umich.edu/~pelzlpj/wyrd
MISCELLANEOUS
‘‘Wyrd is a concept in ancient Anglo-saxon and Nordic cultures roughly
corresponding to fate.’’ -- Wikipedia
SEE ALSO
wyrdrc(5), remind(1)