提醒:一个精密的日历和闹钟程序
Remind: A sophisticated calendar and alarm program

原始链接: https://dianne.skoll.ca/projects/remind/

## 提醒:功能强大、可定制的日历与提醒系统 提醒是一个免费且开源的日历和闹钟程序,专为 Unix 和 Linux 系统设计。它提供强大的脚本语言,用于高级日程安排,智能处理例外情况和节假日。用户可以将日历输出为纯文本、PDF、PostScript 和 HTML 格式,并提供定时提醒和弹出式闹钟。 对于不希望使用脚本语言的用户,提供了一个用户友好的图形界面 (tkremind)。提醒支持格里高利历和希伯来历,并已本地化为 12 种语言。 最新版本(截至 2025 年 11 月 10 日为 06.02.01)需要从源代码编译。存在大量辅助程序和前端,扩展了提醒的功能——包括用于 iCalendar 转换的工具以及用 Python、Go 和 Bash 等语言构建的各种图形界面。提醒优先考虑用户对数据的控制,提供了一个“去 Google 化”的日历解决方案。

## 提醒:基于文本的日历应用讨论 一则Hacker News讨论围绕着“提醒”(Remind),这是一个复杂的、基于文本的日历和闹钟程序,可以追溯到80年代。用户称赞其强大和灵活性,特别是其能够通过脚本定制通知(通过电子邮件、短信和家庭广播系统——通常使用Home Assistant等工具实现)。 一些用户分享了围绕“提醒”构建的复杂工作流程,通过bash脚本自动化事件的输入和检索。虽然承认其复杂性,但他们重视系统的互操作性和一旦配置完成的“设置一次,长期使用”的特性。 有人提出反对意见,质疑这类工具是否过于复杂,迎合了“极客”式的过度工程,而非用户友好性。然而,其他人则为基于文本工具的力量和多功能性辩护,认为它们提供了一种通用格式,并允许用户根据*他们*的工作流程定制软件,而不是反过来。这场讨论突出了个人组织工具中简单性和控制权之间的权衡。
相关文章

原文

Remind is a sophisticated calendar and alarm program. It includes the following features:

  • A sophisticated scripting language and intelligent handling of exceptions and holidays.
  • Plain-text, PDF, PostScript and HTML output.
  • Timed reminders and pop-up alarms.
  • A friendly graphical front-end for people who don't want to learn the scripting language.
  • Facilities for both the Gregorian and Hebrew calendars.
  • Support for 12 different languages.

License

Remind is Free Software, licensed under the terms of the GNU General Public License, Version 2

Download Remind

The current version of remind is 06.02.01 released on 2025-11-10.

 

Verify the Signature

To verify the GPG signature, run:

    gpg --verify remind-06.02.01.tar.gz.sig

You will need to have my public key in your GnuPG keyring.

Donations

You can donate to me on Liberapay if you wish. This is entirely optional and not necessary to use Remind, but I very much appreciate the donations I do receive.

Screenshots

Everybody loves screenshots. Here you go.

De-Googling your Calendar

Remind is an integral part of my effort to avoid storing sensitive data on servers I don't control. Here is an article about how I de-Googled my Contacts and Calendar.

Intro Video

I made a (longish) Introduction to Remind video on YouTube. Best viewed in full-screen mode at 1920x1080 resolution.

Install Remind

What the heck do you do with a tar.gz file? Remind is designed to run on UNIX and Linux. As such, it's distributed as source code that you need to compile. If you are on a Linux or UNIX system, the build process is the usual:

tar xfz remind-06.02.01.tar.gz && cd remind-06.02.01 && ./configure && make && make test && sudo make install

Entirely painless. But do read the README file for other ways to build.

Use Remind

Like all good UNIX programs, Remind comes with a man page. To read the Remind manual, type this command:

    man remind

Of course, the man remind command will only work once you've actually installed Remind! And please be aware that the Remind manual is rather... full-featured. For a gentler introduction, you might want to watch the intro video or read the presentation slides I created a while back.

Public git Repository

We have a public git respository you can clone if you want to live on the bleeding edge:

https://salsa.debian.org/dskoll/remind

The above repo is a mirror of the official git repo at https://git.skoll.ca/Skollsoft-Public/Remind

Unfortunately, because of abuse by AI scrapers, I've had to password-protect my git website. Log in as user notabot with password notabot.

Bug Reports

 If you find a bug in Remind, or would like to suggest an improvement, please email me... email details are on the Contact Page.

Remind-related Sites and Mailing List

Remind Helpers

  • Remind ships with four helper programs:
    • rem2ps generates PostScript calendars.
    • rem2pdf generates PDF, SVG, PostScript and Encapsulated PostScript calendars. It is a modern replacement for rem2ps and can handle UTF-8 input and Unicode rendering.
    • rem2html generates HTML calendars.
    • tkremind provides an X Window GUI for Remind.
  • Paul M. Foster has an HTML front/back-end written in PHP.
  • Daniel Graham has a wxPython front/back-end called wxRemind.
  • Mark Atwood has written rem2ics, a program to convert the output of Remind to RFC 2445 iCalendar format.
  • Martin Michel has a program called remmy that converts a subset of Remind scripting to iCalendar format. Although it handles only a subset of Remind's syntax, it does have the advantage of preserving repeating events faithfully.
  • Patrick Hof has ical2rem.rb, a Ruby script that goes the other way... it converts iCalendar format to Remind.
  • Justin Alcorn wrote ical2rem which is a Perl script to convert iCalendar format to Remind.
  • Richard Kelly has a syntax-highlighting file for the Kate text editor.
  • Wyrd is a curses-based front-end for Remind written in OCaml, originally written by Paul Pelzl and now maintained by Jochen Sprickerhof.
  • Jochen Sprickerhof also has a number of Remind helpers written in Python:
  • remindcal is another curses-based front-end for Remind. This one is by Sergio (realsirjoe) and is written in Go.
  • Mathieu Laparie has written remint, which is a simple text UI for Remind, written as a pure Bash script.
  • Joop Kiefte has a set of Remind files that implement the Baháʼí calendar.
  • Hong Wu has a Remind syntax highlighter for Microsoft Visual Studio. The source for this extension is on GitHub.
  • Judah Milgram maintains a Slackbuild (originally created by T3slider) for Remind. Slackware users with sbotools installed can easily install Remind by running: /usr/sbin/sboinstall remind

If you've written a program designed to work with Remind and would like it linked from this page, please email me.

联系我们 contact @ memedata.com