1TKREMIND(1) General Commands Manual TKREMIND(1)
2
3
4
6 tkremind - graphical front-end to Remind calendar program
7
9 tkremind [options] [read_file] [write_file]
10
12 TkRemind is a graphical front-end to the Remind program. It provides a
13 friendly graphical interface which allows you to view your calendar and
14 add reminders without learning the syntax of Remind. Although not all
15 of Remind's features are available with TkRemind, TkRemind gives you an
16 opportunity to edit the reminder commands which it creates. This
17 allows you to learn Remind's syntax and then add extra features as you
18 become a more sophisticated Remind programmer.
19
20 TkRemind is written in Tcl, and requires version 8.0 (or higher). It
21 also requires a wish binary.
22
23
25 TkRemind itself has no options. However, it passes certain options on
26 to Remind. The options it passes are -b, -g, -x, -i and -m. See the
27 Remind man page for details about the options. Note that TkRemind will
28 respect the -m and -b1 options and adjust its appearance accordingly.
29
30 Read_file is the file from which TkRemind reads reminders. It is in
31 standard Remind format. Write_file is the file to which TkRemind
32 writes reminders which you add using the GUI. If Read_file is omitted,
33 it defaults to $HOME/.reminders. If Write_file is omitted, it defaults
34 to Read_file.
35
36 You may wish to have a different Write_file from Read_file if you want
37 to collect all of TkRemind's reminders in one place. Suppose your main
38 file is $HOME/.reminders and you want TkRemind to put its reminders in
39 $HOME/.tkreminders. In $HOME/.reminders, include the line:
40
41 INCLUDE [getenv("HOME")]/.tkreminders
42
44 When you start TkRemind, it displays a calendar for the current month,
45 with today's date highlighted. Reminders are filled into each box on
46 the calendar. If a box contains many reminders, you can scroll it up
47 and down by dragging mouse button 2 in the box. Note that there is no
48 specific indication of an over-full box; you'll just have to notice
49 that the box appears completely full.
50
51
53 To change to the previous or next month, click the <- or -> button,
54 respectively. To change back to the current month, click Today. To go
55 to a specific month, click Go To Date.... This pops up a dialog box
56 which allows you to select a month and enter a year. Once you've done
57 this, click Go to go to the date, or Cancel to cancel.
58
59 To exit TkRemind, click Quit.
60
61
63 To add a reminder, click button 1 in any day number in the calendar.
64 The Add Reminder... dialog will pop up, with values preselected for the
65 day you clicked.
66
67 The dialog has six basic groups of controls. The first three lines
68 select one of three types of reminders. Choose the type of reminder
69 with the radio buttons, and choose the values of the days, months, and
70 years by selecting values from pull-down menus. The pull-down menus
71 appear when you click the raised value buttons.
72
73 The next control specifies an expiry date for the reminder. Select the
74 check button to enable an expiry date, and fill in the values using
75 pull-down menus.
76
77 The third control specifes how much advance notice you want (if any),
78 and whether or not weekends and holidays are counted when computing
79 advance notice.
80
81 The fourth control specifies which days Remind considers as part of the
82 weekend. This can affect the interpretation of "weekday" in the second
83 and third types of reminders.
84
85 The fifth control associates a time with the reminder. You can also
86 specify advance notice, possibly repeating.
87
88 The sixth control specifies what Remind should do if a reminder falls
89 on a holiday or weekend.
90
91 Enter the body of the reminder into the Body: text entry.
92
93 To add the reminder to the reminder file, click Add to reminder file.
94 To close the dialog without adding the reminder to the file, click Can‐
95 cel. To preview the reminder, click Preview reminder. This pops up
96 the Preview reminder dialog box.
97
98
100 The Preview reminder dialog box is an excellent way to learn Remind.
101 It displays the Remind command which realizes the reminder you entered
102 using the Add Reminder... dialog. You can edit the reminder, thereby
103 gaining access to advanced features of Remind. You can also use it
104 simply to play around and discover Remind's idioms for expressing dif‐
105 ferent types of reminders.
106
107
109 To print the current month's calender, click Print... on the main cal‐
110 endar window. This brings up the print dialog. Printing either pro‐
111 duces a PostScript file or sends PostScript to a UNIX command.
112
113 Select the print destination by choosing either To file: or To command:
114 in the print dialog. Press Browse... to bring up a file browser. In
115 the file browser, you can enter a filename in the text entry, double-
116 click on a filename in the listbox, or double-click on a directory to
117 navigate the file system. You can also type the first few characters
118 of a file name in the text entry box and press space to complete the
119 name to the first matching entry.
120
121 The Match: box contains a filename wildcard which filters files in the
122 listbox. You can change the filter and press enter to rescan the
123 directory.
124
125 Select the appropriate paper size and orientation. Activate Fill page
126 if you want the calendar to fill the page. This should be the normal
127 case unless you have many reminders in a particular day. (See the
128 Rem2PS documentation.)
129
130 Finally, click Print to print or Cancel to cancel. Note that during
131 printing, Remind is not called with the -itkremind=1 option, because it
132 is operated in normal PostScript-producing mode.
133
134
136 If you created a reminder with TkRemind, it will turn red as the mouse
137 cursor passes over it in the calendar window. Click button-1 over the
138 reminder and you will be presented with a dialog window whose state is
139 identical to the one used to create the reminder. At this point, you
140 can change the reminder by editing the dialog entries and selecting
141 Replace reminder. You can delete the reminder entirely by selecting
142 Delete reminder. The remaining buttons, Preview reminder and Cancel
143 operate identically to the dialog in "ADDING REMINDERS."
144
145 Note that if you edit a reminder (using Preview reminder), any edits
146 you made are not retained in the dialog box. You should not attempt to
147 edit such reminders; you have to retype them in the Preview reminder
148 dialog.
149
150 If the reminder was not created with TkRemind, you can't edit it with
151 TkRemind.
152
153
155 If you have set the "text editor" option correctly, right-clicking on a
156 reminder will bring up a text editor on the file containing the
157 reminder. The cursor will be positioned on the line that generated the
158 reminder.
159
160
162 If you create "timed" reminders, TkRemind will queue them in the back‐
163 ground and pop up boxes as they are triggered. Additionally, if you
164 created the reminder using TkRemind, you will be given the option of
165 "turning off" the reminder for the rest of the day. TkRemind achieves
166 queueing of background reminders by running Remind in server mode,
167 described later.
168
169
171 The final button on the calendar window, Options, lets you configure
172 certain aspects of TkRemind. The configuration options are:
173
174
175 Start up Iconified
176 If this is selected, TkRemind starts up iconified. Otherwise,
177 it starts up in a normal window.
178
179
180 Show Today's Reminders on Startup
181 If this is selected, TkRemind shows a text window containing
182 reminders which would be issued by "remind -q -a -r" on startup,
183 and when the date changes at midnight.
184
185
186 Confirm Quit
187 If this is selected, you will be asked to confirm when you press
188 Quit. If not, TkRemind quits without prompting.
189
190
191 Automatically close pop-up reminders after a minute
192 If this is selected, pop-up reminder boxes will be closed after
193 one minute has elapsed. Otherwise, they remain on your screen
194 forever until you explicitly dismiss them.
195
196
197 Beep terminal when popping up a reminder
198 If selected, TkRemind beeps the terminal bell when a queued
199 reminder pops up.
200
201
202 Deiconify calendar window when popping up a reminder
203 If selected, does what it says.
204
205
206 Run command when popping up a reminder
207 If this entry is not blank, the specified command is run when‐
208 ever a background reminder pops up.
209
210
211 Feed popped-up reminder to command's standard input
212 If selected, feeds the text of the reminder to the command
213 described above.
214
215
216 E-mail reminders here if popup not dismissed
217 If you enter a non-blank e-mail address in this field, then
218 TkRemind will e-mail you a reminder if you don't dismiss the
219 popup box within one minute. This is useful if you need to
220 leave your terminal but want your reminders to "follow" you via
221 e-mail.
222
223
224 Name or IP address of SMTP server
225 TkRemind uses a direct SMTP connection to send mail. Enter the
226 IP address of your SMTP server here.
227
228
229 Text Editor
230 This specifies a text editor to invoke when a reminder is right-
231 clicked. The characters "%d" are replaced with the lined number
232 of the file containing the reminder, and "%s" are replaced with
233 the file name. Useful strings might be "emacs +%d %s" or "gvim
234 +%d %s"
235
236
237 Once you've configured the options the way you like them, press Apply
238 Options to put them into effect, Save Options to put them into effect
239 and save them in $HOME/.tkremindrc, or Cancel to cancel any changes you
240 made.
241
242
244 TkRemind's main window includes the following keyboard shortcuts:
245
246
247 Ctrl-Q Quit
248
249 Left Arrow
250 Previous Month
251
252 Right Arrow
253 Next Month
254
255 Home Today
256
257
259 TkRemind performs some basic consistency checks when you add or preview
260 a reminder. However, if you edit a reminder in the previewer, TkRemind
261 does not check the edited reminder. You can produce illegal reminders
262 which may cause problems. (This is one good reason to isolate TkRe‐
263 mind's reminders in a separate file.)
264
265 TkRemind does not check the body of the reminder in any way. You can
266 use the normal Remind substitution sequences in the body. Furthermore,
267 if you use expression-pasting in the body, TkRemind does not validate
268 the expressions.
269
270 When TkRemind invokes Remind, it supplies the option:
271
272 -itkremind=1
273
274 on the command line. So, in your Remind file, you can include:
275
276 IF defined("tkremind")
277 # Then I'm probably being invoked by TkRemind
278 ENDIF
279
280 You can use this to activate certain reminders in different ways for
281 TkRemind (for example).
282
283 TkRemind uses tags to keep track of reminders in the script file. It
284 also places special comments in the reminder file to store additional
285 state. You can certainly mix "hand-crafted" reminders with reminders
286 created by TkRemind if you are aware of the following rules and limita‐
287 tions:
288
289 o Do not use the TAG keyword in hand-crafted reminders.
290
291 o Do not edit lines starting with "# TKTAGnnn", "# TKEND", or any
292 lines in between. You can move such lines, but be careful to
293 move them as a single block.
294
295 o Hand-crafted reminders cannot be edited with TkRemind, and for
296 hand-crafted timed reminders, you will not be presented with the
297 "Don't remind me again" option when they pop up.
298
299
301 Remind has a special mode for interacting with programs like TkRemind.
302 This mode is called server mode and is selected by supplying the -z0
303 option to Remind.
304
305 In server mode, Remind operates similar to daemon mode, except it reads
306 commands (one per line) from standard input and writes status lines to
307 standard output.
308
309 The commands accepted in server mode are:
310
311
312 EXIT Terminate the Remind process. EOF on standard input does the
313 same thing.
314
315
316 STATUS Return the number of queued reminders.
317
318
319 REREAD Re-read the reminder file
320
321
322 The status lines written are as follows:
323
324
325 NOTE reminder time tag
326 Signifies the beginning of a timed reminder whose trigger time
327 is time with tag tag. If the reminder has no tag, an asterisk
328 is supplied for tag. All lines following this line are the body
329 of the reminder, until the line NOTE endreminder is transmitted.
330
331
332 NOTE newdate
333 This line is emitted whenever Remind has detected a rollover of
334 the system date. The front-end program should redraw its calen‐
335 dar or take whatever other action is needed.
336
337
338 NOTE reread
339 This line is emitted whenever the number of reminders in
340 Remind's queue changes because of a date rollover or a REREAD
341 command. The front-end should issue a STATUS command in
342 response to this message.
343
344
345 NOTE queued n
346 This line is emitted in response to a STATUS command. The num‐
347 ber n is the number of reminders in the queue.
348
349
351 TkRemind is now supported by Roaring Penguin Software Inc.
352 (http://www.roaringpenguin.com)
353
354 TkRemind was written by David F. Skoll <dfs@roaringpenguin.com>.
355
356 TkRemind is Copyright 1996-1998 by David F. Skoll, Copyright 1999 by
357 Roaring Penguin Software Inc.
358
359
361 $HOME/.reminders -- default reminder file.
362
363 $HOME/.tkremindrc -- TkRemind saved options.
364
365
367 remind, rem2ps
368
369
370
3714th Berkeley Distribution 15 February 1998 TKREMIND(1)