RememberMode a mode for quickly jotting down things to remember

This excellent feature inspired Capture in OrgMode and that is now (Aug2010) recommended for new users, see


Todo lists, schedules, phone databases… everything we use databases for is really just a way to extend the power of our memory. To be able to remember what our conscious mind may not currently have access to.

There are many different databases out there – and good ones -- which this mode is not trying to replace. Rather, it’s how that data gets there that’s the question. Most of the time, we just want to say “Remember so-and-so’s phone number, or that I have to buy dinner for the cats tonight.” That’s the FACT. How it’s stored is really the computer’s problem. But at this point in time, it’s most definitely also the user’s problem, and sometimes so laboriously so that people just let data slip, rather than expend the effort to record it.

“Remember” is a mode for remembering data. It uses whatever back-end is appropriate to record and correlate the data, but its main intention is to allow you to express as little structure as possible up front. If you later want to express more powerful relationships between your data, or state assumptions that were at first too implicit to be recognized, you can “study” the data later and rearrange it. But the initial “just remember this” impulse should be as close to simply throwing the data at Emacs as possible.

Remember is often used in conjunction with PlannerMode and/or OrgMode.


Here, we assume that Planner will be unpacked to the ~/elisp directory. It can be placed anywhere you like, really, but this is a fairly standard spot to place Emacs Lisp stuff.

Getting a release

You have two options: stable or development.

Getting the stable release

Using a tarball:

tar -xzf remember-2.0.tar.gz
mv remember-2.0 remember

Using a zip file:

mv remember-2.0 remember

Getting the latest development snapshot

Using git:

cd ~/elisp
git clone git:// remember

If you are behind a restrictive firewall and wish to use git, then do the following instead:

cd ~/elisp
git clone remember

Using a downloaded tarball:

cd ~/elisp
tar -xzf remember-latest.tar.gz

Using a downloaded zip file:

cd ~/elisp
tar -xzf

Setting up

Now that RememberMode is included in Emacs (as of Emacs 23), activation is as simple as: (require ‘remember)

After unpacking, install Remember by copying the directory “remember” to a nice spot on the hard drive, say ~/elisp/remember. Add to your .emacs the following statements:

    (add-to-list 'load-path "~/elisp/remember")

Setting up for OrgMode

Now that OrgMode and RememberMode are included in Emacs (as of Emacs 23), activation is as simple as: (org-remember-insinuate)

Note that there is no need for: (require ‘remember)

Basically you should follow the instructions in the org-mode info file. However this currently forgets that you also need something like this in your .emacs:

    (require 'remember)

If you are, like me, missing the function org-remember-insinuate, try the following

    (setq remember-annotation-functions '(org-remember-annotation))
    (setq remember-handler-functions '(org-remember-handler))
    (add-hook 'remember-mode-hook 'org-remember-apply-template)
Quick note-taking

When you have started your emacs server (emacs --daemon in Emacs 23 or above), you can open a new frame for quick note-taking with:

    $ emacsclient -e "(remember-other-frame)"

Note: remember now includes remember-other-frame so if you get an “Autoloading failed to define function”, remove the following defadvice from your .emacs

For older versions you may also want that frame like a pop-up for temporal editing add this code to your init file:

    (defadvice remember-other-frame (around remember-frame-parameters activate)
      "Set some frame parameters for the remember frame."
      (let ((default-frame-alist (append
    				(name . "*Remember*")
    				(width . 80)
    				(height . 10)
    				(vertical-scroll-bars . nil)
    				(menu-bar-lines . 0)
    				(tool-bar-lines . 0)

Note that -c is not passed to emacsclient such that finishing your note or cancelling it leaves your desktop just as it was, but this will only work if you already have an already started emacsclient, as otherwise Emacs does not know which terminal type to use.

Setting up for PlannerMode

PlannerMode is somewhat obsoleted by OrgMode, specially since the latter is now included in Emacs (as of Emacs 23).

See for a comparison.

I wouldn’t say it has been obsoleted by OrgMode, but that the two packages address different users. – JohnWiegley

Add this to your .emacs:

    (require 'remember-planner)
    (setq remember-handler-functions '(remember-planner-append))
    (setq remember-annotation-functions planner-annotation-functions)

According to Dryice Liu, “…if you are using FreeBSD, [the latest version of remember] is in the ports tree deskutils/remember.el”

One more thing. Remember always puts notes on today’s day page. It does not prompt for a date. If you’d like a note to appear on a different day’s day page, use planner-timewarp to change PlannerMode’s idea of what today’s date is. Be sure to change the date back when you’re done!


2008-04-16: Remember 2.0 released. Remember is now included with Emacs as of Emacs 23.

2006-08-05: Remember is now group-maintained by Sacha Chua, Michael Olson, and John Sullivan. Version 1.9 is released.

2006-05-01: “Remember” also works with the version of PlannerMode that’s based on EmacsMuse.

2003-11-22: SachaChua now maintains remember.el. A new version (1.7) can be found on her site, together with updated versions of PlannerMode. The new version makes reverse-chronological timestamped entries easier, which means RememberMode + PlannerMode + EmacsWikiMode = blog