1WYRD(1) a console calendar application WYRD(1)
2
3
4
6 wyrd is a text-based front-end to remind(1), a sophisticated calendar
7 and alarm program.
8
10 wyrd [OPTIONS] [FILE]
11
13 Open the calendar and display reminders defined in FILE (and any
14 included reminder files). The default reminder file is ~/.reminders.
15
17 --version
18 Display version information and exit.
19
20 --help
21 Display usage information.
22
23 --add EVENT
24 Add given event to reminders file and exit.
25
26 --a EVENT
27 Add given event to reminders file and exit.
28
30 CAUTION: while this manpage should be suitable as a quick reference, it
31 may be subject to miscellaneous shortcomings in typesetting. The defin‐
32 itive documentation is the user manual provided with Wyrd in PDF or
33 HTML format.
34
35 This section describes how to use Wyrd in its default configuration.
36 After familiarizing yourself with the basic operations as outlined in
37 this section, you may wish to consult the wyrdrc(5) manpage to see how
38 Wyrd can be configured to better fit your needs.
39
40 OVERVIEW
41 Before attemping to use Wyrd, learn how to use Remind. Wyrd makes no
42 attempt to hide the details of Remind programming from the user.
43
44 At the top of the window is a short (incomplete) list of keybindings.
45
46 The left window displays a scrollable timetable view, with reminders
47 highlighted in various colors. If the DURATION specifier is used for a
48 reminder, the highlighted area is rendered with an appropriate size.
49 Overlapping reminders are rendered using one of four different indenta‐
50 tion levels so that all reminders are at least partially visible. If
51 the current time is visible in this window, it is highlighted in red.
52
53 The upper right window displays a month calendar, with the color of
54 each day representing the number of reminders it contains. The colors
55 range across shades of white to blue to magenta as the number of
56 reminders increases. The selected date is highlighted in cyan; if the
57 current date is visible, it is highlighted in red.
58
59 The lower right window displays a list of the untimed reminders falling
60 on the selected date.
61
62 The bottom window displays the full text of the MSG for the reminder or
63 reminders that are currently selected.
64
65 NAVIGATION
66 ────────────────────────────────────────────────────────────────────────────────────────────────────────
67 Action Keypress
68 ────────────────────────────────────────────────────────────────────────────────────────────────────────
69 scroll up and down the schedule <up>, <down> or k, j
70 jump back or forward by a day <pageup>, <pagedown> or 4, 6 or <, > or H, L
71 jump back or forward by a week 8, 2 or [, ] or K, J
72 jump back or forward by a month {, }
73 jump to current date and time <home>
74 jump to the next reminder <tab>
75 switch between schedule and untimed reminders window <left>, <right> or h, l
76 zoom in on the schedule z
77 scroll the description window up and down d, D
78 ────────────────────────────────────────────────────────────────────────────────────────────────────────
79
80 Notice that if you have a numeric keypad, the {4, 6, 8, 2} keys will
81 let you move directionally in the month calendar view at the
82 upper-right of the screen. Similarly, {H, J, K, L} will cause direc‐
83 tional calendar movement using the standard mapping from vi(1).
84
85 In addition to the hotkeys provided above, Wyrd lets you jump immedi‐
86 ately to a desired date by pressing 'g', entering in a date specifier,
87 and then pressing <return>. Any of the following date specifiers may be
88 used:
89
90 * 8 digits representing year, month, and day: YYYYMMDD
91
92 * 4 digits representing month and day (of current year): MMDD
93
94 * 2 digits representing day (of current month and year): DD
95
96 (The date specifier format may be changed to DDMMYYYY; consult the sec‐
97 tion on CONFIGURATION VARIABLES. )
98
99 EDITING REMINDERS
100 Note: By default, Wyrd is configured to modify your reminder files
101 using the text editor specified by the $EDITOR environment variable.
102 (This configuration has been tested successfully with a number of com‐
103 mon settings for $EDITOR, including 'vim', 'emacs', and 'nano'.) If you
104 wish to use a different editor, see the wyrdrc(5) manpage.
105
106 If you select a timeslot in the schedule view, then hit 't', you will
107 begin creating a new timed reminder. Wyrd will open up your reminder
108 file in your favorite editor and move the cursor to the end of the
109 file, where a new reminder template has been created. The template has
110 the selected date and time filled in, so in many cases you will only
111 need to fill in a MSG value.
112
113 Similarly, hitting 'u' will begin creating an untimed reminder. 'w'
114 will create a weekly timed reminder, and 'W' will create a weekly
115 untimed reminder; 'm' will create a monthly timed reminder, and 'M'
116 will create a monthly untimed reminder.
117
118 'T' and 'U' also create timed and untimed reminders (respectively), but
119 first will provide a selection dialog for you to choose which reminder
120 file you want to add this reminder to. The set of reminder files is
121 determined by scanning the INCLUDE lines in your default reminder file.
122
123 If you select a reminder (either timed or untimed) and hit <return>,
124 you will begin editing that reminder. Wyrd will open up the appropriate
125 reminders file in your editor and move the cursor to the corresponding
126 REM line.
127
128 If you select a timeslot that contains multiple overlapping reminders,
129 Wyrd will provide a dialog that allows you to select the desired
130 reminder.
131
132 If you hit <enter> on a blank timeslot, Wyrd will begin creating a new
133 timed or untimed reminder (depending on whether the timed or the
134 untimed window is selected).
135
136 Finally, pressing 'e' will open the reminder file in your editor with‐
137 out attempting to select any particular reminder.
138
139 QUICK REMINDERS
140 Wyrd offers an additional mode for entering simple reminders quickly.
141 Press 'q', and you will be prompted for an event description. Simply
142 enter a description for the event using natural language, then press
143 <return>. Examples:
144
145 * meeting with Bob tomorrow at 11
146
147 * drop off package at 3pm
148
149 * wednesday 10am-11:30 go grocery shopping
150
151 * Board game night 20:15 next Fri
152
153 * 7/4 independence day
154
155 * 7/4/2007 independence day (next year)
156
157 * independence day (next year) on 2007-07-04
158
159 If your event description can be understood, Wyrd will immediately cre‐
160 ate the reminder and scroll the display to its location.
161
162 Currently the quick reminder mode tends to favor USA English conven‐
163 tions, as generalizing the natural language parser would require some
164 work.
165
166 Wyrd also allows you to use the "quick reminder" syntax to create new
167 reminders from the command line, using the -a or --add options. For
168 example,
169 wyrd --add "dinner with neighbors tomorrow at 7pm"
170
171 would create a new reminder for tomorrow evening. When used in this
172 mode, Wyrd exits silently with error code 0 if the reminder was suc‐
173 cessfully created. If the reminder could not be created (e.g. if the
174 reminder syntax could not be parsed), Wyrd prints an error message and
175 exits with a nonzero error code.
176
177 CUTTING AND PASTING REMINDERS
178 Reminders can be easily duplicated or rescheduled through the use of
179 Wyrd's cutting and pasting features.
180
181 Selecting a reminder and pressing 'X' will cut that reminder: the cor‐
182 rdsponding REM line is deleted from your reminders file, and the
183 reminder is copied to Wyrd's clipboard. To copy a reminder without
184 deleting it, use 'y' instead.
185
186 To paste a reminder from the clipboard back into your schedule, just
187 move the cursor to the desired date/time and press 'p'. Wyrd will
188 append a new REM line to the end of your reminders file, and open the
189 file with your editor. The REM line will be configured to trigger on
190 the selected date. If the copied reminder was timed, then the pasted
191 reminder will be set to trigger at the selected time using the original
192 DURATION setting. (Additional Remind settings such as delta and tdelta
193 are not preserved by copy-and-paste.)
194
195 If you wish to paste a reminder into a non-default reminders file, use
196 'P'. This will spawn a selection dialog where you can choose the file
197 that will hold the new reminder.
198
199 WARNING: Cutting a reminder will delete only the single REM command
200 responsible for triggering it. If you are using more complicated Remind
201 scripting techniques to generate a particular reminder, then the cut
202 operation may not do what you want.
203
204 VIEWING REMINDERS
205 Aside from viewing reminders as they fall in the schedule, you can
206 press 'r' to view all reminders triggered on the selected date in a
207 less(1) window. Similarly, 'R' will view all reminders triggered on or
208 after the selected date (all non-expired reminders are triggered).
209
210 If you want to get a more global view of your schedule, Wyrd will also
211 let you view Remind's formatted calendar output in a less(1) window.
212 Pressing 'c' will view a one-week calendar that contains the selected
213 date, while pressing 'C' will view a one-month calendar containing the
214 selected date.
215
216 SEARCHING FOR REMINDERS
217 Wyrd allows you to search for reminders with MSG values that match a
218 search string. Press '/' to start entering a (case insensitive) regular
219 expression. After the expression has been entered, press <return> and
220 Wyrd will locate the next reminder that matches the regexp. Press 'n'
221 to repeat the same search. Entry of a search string may be cancelled
222 with <esc>.
223
224 The regular expression syntax is Emacs-compatible.
225
226 Note: Sorry, there is no "search backward" function. The search func‐
227 tion requires the use of "remind -n", which operates only forward in
228 time. For the same reason, there is a command to jump forward to the
229 next reminder, but no command to jump backward to the previous
230 reminder.
231
232 OTHER COMMANDS
233 A list of all keybindings may be viewed by pressing '?'. You can exit
234 Wyrd by pressing 'Q'. If the screen is corrupted for some reason, hit
235 'Ctrl-L' to refresh the display.
236
237 ALARM STRATEGIES
238 You may wish to generate some sort of alarm when a reminder is trig‐
239 gered. Wyrd does not offer any special alarm functionality, because
240 Remind can handle the job already. Check the Remind manpage and con‐
241 sider how the -k option could be used to generate alarms with the aid
242 of external programs. For example, the following command will generate
243 a popup window using gxmessage(1) whenever a timed reminder is trig‐
244 gered:
245 remind -z -k'gxmessage -title "reminder" &' ~/.reminders &
246
247 (A sensible way to start this alarm command is to place it in
248 {.xinitrc} so that it launches when the X server is started.) If you
249 want some advance warning (say, 15 minutes), you can cause Remind to
250 trigger early by setting a tdelta in the AT clause:
251 REM Nov 27 2005 AT 14:30 +15 MSG Do something
252
253
254 Alternatively, if you want to generate alarms only for specific
255 reminders, consider using Remind's RUN command. This process could be
256 easily automated by using the templateN configuration variables
257 described in the wyrdrc(5) manpage.
258
259 MISCELLANEOUS
260 Remind's TAG specifier may be used to cause Wyrd to give special treat‐
261 ment to certain reminders. If a reminder line includes the clause "TAG
262 noweight", then Wyrd will not give that reminder any weight when deter‐
263 mining the ``busy level'' colorations applied to the month calendar. If
264 a reminder line includes the clause "TAG nodisplay", then Wyrd will
265 neither display that reminder nor give it any weight when determining
266 the month calendar colorations. The tag parameters are case insensi‐
267 tive.
268
269 WARNING: These tag parameters are not guaranteed to interact well with
270 other Remind front-ends such as tkremind.
271
273 * Wyrd fills in sensible defaults for the fields of a REM state‐
274 ment, but you will inevitably need to make some small edits to
275 achieve the behavior you want. If you use Vim, you can make your
276 life easier by installing the Vim-Latex Suite and then modifying
277 your ~/.wyrdrc to use REM templates like this:
278
279 set timed_template="REM %monname% %mday% %year% <++>AT %hour%:%min%<++>
280 DURATION 1:00<++> MSG %\"<++>%\" %b"
281 set untimed_template="REM %monname% %mday% %year% <++>MSG %\"<++>%\"
282 %b"
283
284 With this change, hitting Ctrl-J inside Vim (in insert mode) will cause
285 your cursor to jump directly to the <++> markers, enabling you to
286 quickly add any desired Remind delta and message parameters.
287
289 Wyrd is Free Software; you can redistribute it and/or modify it under
290 the terms of the GNU General Public License (GPL), Version 2, as pub‐
291 lished by the Free Software Foundation. You should have received a copy
292 of the GPL along with this program, in the file 'COPYING'.
293
295 Thanks, of course, to David Skoll for writing such a powerful reminder
296 system. Thanks also to Nicolas George, who wrote the OCaml curses
297 bindings used within Wyrd.
298
300 Wyrd author: Paul Pelzl <pelzlpj@eecs.umich.edu>
301 Wyrd website: http://www.eecs.umich.edu/~pelzlpj/wyrd
302
304 ``Wyrd is a concept in ancient Anglo-saxon and Nordic cultures roughly
305 corresponding to fate.'' -- Wikipedia
306
308 wyrdrc(5), remind(1)
309
310a console calendar application 19 August 2007 WYRD(1)