Remind

From 43FoldersWiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 16:02, 14 April 2006 (edit)
PhilGeek (Talk | contribs)
m (TextMate)
← Previous diff
Current revision (20:26, 15 August 2007) (edit) (undo)
Stercor (Talk | contribs)
m (Removed link status from Cygwin... Cut a few words from the description.)
 
(10 intermediate revisions not shown.)
Line 1: Line 1:
== Description == == Description ==
 +Remind is a sophisticated calendar and alarm service for [[UNIX]] (including Cygwin). It is a [[command line]] application that interacts well with other programs. Remind offers a specialized scripting language which is able to express complicated scheduling methods in just a few lines.
-Remind is a [[command line]] calendaring program for [[UNIX]] and other platforms.+== Further Information on the Wiki ==
- +* Check out the [[Remind FAQ]] for a good overview.
-== Hacks and Hints ==+* The [[Remind Cookbook]] offers a bunch of useful Remind script snippets.
- +* [[Remind Include Files]] provides definitions for holidays and other special days.
-=== Dashboard ===+* [[Remind Helpers]] talks about a number of utilities that work well in conjunction with Remind.
-* Use the [http://liepins.org/dashboard/ Shell Watcher] widget to display Remind's output in Dashboard.+* Some users have posted more extensive Remind use cases:
- +** [[Remind use case 1]]
-=== GeekTool ===+** [[Remind use case 2]]
-* Use [[GeekTool]] to display the output of [[Remind]] on your desktop. Remember to use the -q option to prevent GeekTool from queueing up all your timed reminders again every time it refreshes.+
- +
-=== Growl ===+
-* I don't always have a terminal open, and sometimes when I do have one open, it's not the app currently in focus. So I wrote a [[User:ThePolack/RemGrowl.pl|Perl script]] that executes remind and shoves the output (via Mac::Glue) to a [[Growl]] notification. Then I put the script in ~/Library/Scripts where [[Quicksilver]] can see it and now I can just execute it any time I want to see my reminders no matter what application I'm working in.+
-* '''nohup/remind/growl +
-You can run remind as a background daemon and fire off reminders through growl:+
-<pre>nohup remind -z -k'growlnotify -s %s &' ~/.reminders &</pre>+
-Dissection:+
-; nohup : don't kill this command when i close this terminal window or log out+
-; remind -z : run remind as a daemon, checking up every five minutes+
-; -k : pass the reminders to 'growlnotify -s %s &'+
-; -s : make the growl bubble sticky+
-; %s : represents the text of the reminder+
-; & : run growlnotify as a background process+
-; ~/.reminders: what remind file to run+
-; & : run the whole thing as a background process+
- +
- +
-=== Cron, Mail, and Pipes ===+
- +
-How would you like to see an updated reminder calendar in your email every morning? Set up a cron job to go off just before you would normally first sit down at your computer. The cron command would be something along the lines of:+
- +
-<pre>rem -c+1 | mail user@foobar.com</pre>+
- +
-Which produces a nice plaintext weekly calendar with all your reminders for your inbox.+
- +
- +
-=== Wyrd ===+
-* [http://freshmeat.net/projects/wyrd/ Wyrd] is a curses front-end for Remind. To run it in MacOSX you have to have your terminal set as xterm-color. This is [http://www.eecs.umich.edu/~pelzlpj/wyrd/osx.html| easy to do in terminal preferences], but if you find it causes problems for other programs, then you can put the following alias in your .bashrc file (this temporarily changes the value and runs wyrd; the value reverts to the original value once wyrd exits):<pre>alias wyrd='TERM="xterm-color" wyrd'</pre>+
- +
-=== iCal2Remind ===+
-A script to turn iCal entries into Remind entries is available at [http://jalcorn.net/weblog/archives/899-iCal-to-Remind-script.html iCal to Remind script]. In the ~/.reminders file, include the new file:<pre>INCLUDE ./.ical2rem</pre> and use <b>cron</b> to build the included file:<pre>0-59/15 * * * * local/bin/ical2rem.pl > ~/.ical2rem</pre>+
- +
-===TextMate===+
-Editing your remind files in TextMate can be made easier if you create a Remind bundle. Here is a language grammar that provides syntax coloring for your rem files. Open your bundle editor (by pressing &#x2303; &#x2325; &#x2318; B) and create a new bundle called Remind. Within the newly created Remind bundle creat a new language and add the following:+
- +
-<pre>+
-{ scopeName = 'source.remind';+
- firstLineMatch = '^REM*';+
- fileTypes = ( 'defs.rem', 'REM*.txt', '.reminders' );+
- patterns = (+
- { name = 'keyword.control.remind';+
- match = '\b(IF|ELSE|ENDIF|IFTRIG)\b';+
- },+
- { name = 'entity.remind';+
- match = '\b(tag|PRIORITY|TAG)\b';+
- },+
- { name = 'constant.language.remind';+
- match = '%';+
- },+
- { name = 'keyword.commands.remind';+
- match = '\b(REM|OMIT|SET|FSET|UNSET)\b';+
- },+
- { name = 'keyword.expiry.remind';+
- match = '\b(UNTIL|SCANFORM|SCAN|WARN|SCHED)\b';+
- },+
- { name = 'keyword.timed.remind';+
- match = '\b(AT|DURATION)\b';+
- },+
- { name = 'keyword.move.remind';+
- match = '\b(ONCE|SKIP|BEFORE|AFTER)\b';+
- },+
- { name = 'keyword.special.remind';+
- match = '\b(INCLUDE|INC|BANNER|PUSH-OMIT-CONTEXT|PUSH|CLEAR-OMIT-CONTEXT|CLEAR|POP-OMIT-CONTEXT|POP)\b';+
- },+
- { name = 'keyword.run.remind';+
- match = '\b(RUN|MSG|MSF|CAL|SATISFY|SPECIAL|PS|PSFILE|SHADE|MOON)\b';+
- },+
- { name = 'comment.line.number-sign.remind';+
- match = '(?<!\$)#(?!\{).*$';+
- },+
- { name = 'comment.line.semi-colon.remind';+
- match = '(?<!\$);(?!\{).*$';+
- },+
- { name = 'string.quoted.double.remind';+
- begin = '"';+
- end = '"';+
- },+
- );+
-}+
-</pre>+
- +
-To get the syntax coloring to work with your favorite theme add the above scope names to your theme and assign them colors.+
- +
-To view your monthly calendar within TextMate add the following command to your Remind bundle:+
- +
-<pre>+
-Save: Nothing+
-Command(s) remind -p1 ~/.reminders | rem2html -b 1 -t 1 -se -1+
-Input: None+
-Output: Show as HTML+
-</pre>+
- +
-Assign the command a key equivalent and now you can access your monthly calendar within TextMate at a keystroke.+
- +
-Snippets will also be useful for your Remind bundle. Here is (a slightly modified) snippet suggested by Merlin Mann:+
- +
-<pre>+
-REM ${1:mmm dd yyyy} AT ${2:00:00} DURATION ${3:1:00} MSG $4 %+
-$0+
-</pre>+
- +
-Other snippets are useful as well but these will depend on your use case.+
== See Also == == See Also ==
* [http://www.roaringpenguin.com/penguin/open_source_remind.php Project Homepage] * [http://www.roaringpenguin.com/penguin/open_source_remind.php Project Homepage]
-* the [[Remind Cookbook]]+* [http://www.43folders.com/2005/02/24/guest-mike-harris-looks-at-remind/ 43F: Mike Harris looks at "Remind"]
-* the [[Remind FAQ]]+
-* [http://www.43folders.com/2005/02/guest_mike_harr.html 43F: Mike Harris looks at "Remind"]+
-[[Category: UNIX Software]] [[Category: Open Source]]+[[Category: Open Source]][[Category: Remind]][[Category: UNIX Software]][[Category: Calendar Software]]

Current revision

[edit] Description

Remind is a sophisticated calendar and alarm service for UNIX (including Cygwin). It is a command line application that interacts well with other programs. Remind offers a specialized scripting language which is able to express complicated scheduling methods in just a few lines.

[edit] Further Information on the Wiki

[edit] See Also

Personal tools