Overview

What is Remind?

Remind is a sophisticated calendar and alarm service for Unix. It is a command line application which interacts well with other programs. Remind offers a specialized scripting language which can be used to express rather complicated scheduling methods in just a few lines.

Why would I want to use Remind?

Remind is very fast and lightweight in comparison to typical GUI calendar programs.

Remind can handle rather complicated recurring reminders, which are beyond the capability of most calendar applications.

Remind can interact well with other programs. You can quickly add reminders from the terminal, with Quicksilver, or with a homebrewed Python script; you can schedule applications to execute through Remind; you can display Remind's output through an external application, or even read off your reminders with a text-to-speech program.

If you have any programming experience, then the idea of using a scripting language to describe a calendar may seem very natural to you.

Applications that Work with Remind

Are there any frontends that make Remind easier to use?

TkRemind is a GUI frontend that ships with Remind. Its point-and-click interface is quite easy to use, but also hides some of Remind's power from the user.

Wyrd is a frontend for the terminal. It integrates with an editor of your choice, making it faster and easier to enter and edit reminders. Wyrd is probably a good choice for power users, as it is highly configurable and does not conceal any of Remind's functionality.

Note that the the reminder will not be cancelled unless the SKIP keyword is used.

How can I generate popup windows to warn me of timed reminders?

You can use a separate application that takes text as input and simply displays it in a window; on GNU/Linux systems, gxmessage is one such program. Then you can launch Remind in "daemon mode" and direct it to generate a popup window for every timed reminder that is triggered:

remind -z -k'gxmessage -title "reminder" %s &' ~/.reminders &

You probably want this command to run exactly once, when your desktop is started. For an X Window desktop, this command could be placed in the startup script ~/.xinitrc .

OS X users may want to consider running Growl, then using growlnotify as a replacement for gxmessage.

How can I automatically create a popup window with my daily reminders?

The rem command can create a list of your reminders in the terminal. If you want to get a bit fancier, you can have your day's reminders automatically pop up in a window at whatever time you like. Just use cron to dump remind's output to a window periodically, with a cron table entry like this: