What is Memacs?

#emacs

What are Memacs (and its alternative, Orger)? This puzzled me for a while. The grandiose vision outlined in the Memacs README did not make it clear to me which part of that vision is enabled by Memacs itself.

The short version is that you want to reuse Org-mode's ability to search for datestamps such as [2022-01-28 Fri] across all your files, and surface them to yourself in a view such as Org-agenda's log.

You may not know but when you're sitting there in the agenda buffer, you can hop to the last week, the one before that and so on ad infinitum. You already have a time machine as part of Org.

All that's left to do is to inform Org more about what's happening in your life, not just the TODOs you completed, so that all that other stuff that happened, even away from the computer, will also be visible in the agenda log.

An example is photos. Maybe you want to inform Org about your entire photo library, so that when you look at a specific day like the 6th of June 2018, any photos taken that day will be linked right there.

But photos usually have nothing to do with Org-mode and there is no predefined way to "tell Org about them".

So what do you do? Hack up a script that loops over the entire photo library, and writes a datestamped Org headline for each and every one. It's a little weird if you're used to thinking of headlines as semantic actual headlines for some of document, but it may bother you less if you think of Memacs-produced files as binary blobs that just happen to look like Org markup.

Memacs is just a collection of scripts like these. It's not an Emacs package per se because the author was familiar with Python and there is no need for these scripts to be elisp as there is nothing to do inside Emacs. You run these scripts once a day with a cron job.

Created (2 years ago)