A simple Markdown journal in Emacs

I wanted to get into daily journaling since a long time. Keeping a journal makes it easy to find and go back to all kinds of things you have encountered and thus saves time. But more important is, I believe, that journaling structures your thoughts, like any kind of writing. You need to think clearly about something before you can write it down. Then, the act of writing it down anchors it more deeply in your memory.

Alas, all my previous attempts at journaling failed. Whatever the reason, whether on paper or on the computer, I never felt entirely at home with the solutions I tried. So what’s a hacker to do – write his own solution.

I know that there are already many ways to write a journal in Emacs. Well, here’s another one: simple-journal. It’s tiny and simple, it produces a Markdown format that I love, and having it written myself I feel more inclined to actually use it.

The journal looks like this:

### 2010-01-10

- **18:15** - "XML serializations should be hidden away from
  human view lest small children accidentally see them and become
  frightened." - from the paper *Representing disjunction and
  quantifiers in RDF*, McDermottDou02.pdf.

### 2010-01-17

- **14:45** - Set up a minimal Wicket application with Netbeans (a
  first for me, version 6.8) and Jetty. I want to try out working
  asynchronously with JSON using Wicket. Here are the steps to get the
  application running, serving up an empty page:

  - Start a plain Java SE project in Netbeans.
  - ... 

Being in Markdown, it’s very readable, and can readily be converted to well-formatted HTML. The format is completely hard-coded in the code for the moment. The goal was just to quickly get something simple and small working. Nevertheless, I’m always happy about feedback and ideas.

There’s one item on the TODO list that I’d really like to have, but I’m wondering about how to implement it a somewhat simple and efficient way: showing all entries that have “TODO” in them, or that start with “TODO”. Do I have to go through the buffer to collect them and show them in a temporary buffer? That would be a bit more programming than I feel is appropriate for such a task, and the temp buffer wouldn’t be in sync with the journal. Planet Emacs, ideas? ;-)


Tags: , , , ,

4 Responses to “A simple Markdown journal in Emacs”

  1. paul r Says:

    M-x occur should help you for your later problem.
    Let me add that org-mode together with remember is a very productive way to keep logs.

  2. evolve75 Says:

    I will also second the use of org-mode. It does everything you need (including export to HTML and many other formats) – and tracking TODOs is one of the PRIMARY functions that it does extremely well.

    I personally have been using it for GTD and journal keeping for the last 2+ years and can heartily recommend the same.

  3. thomas11 Says:

    Hey, thanks for your suggestions. I knew of org-mode, of course, as it’s pretty well-known in the Emacs world. I’m sure it was partly NIH syndrome that made me write simple-journal. org-mode also seemed quite complex when I looked at it, but I guess I’ll give it another try at some point.

  4. thomas11 Says:

    Paul, occur did exactly what I wanted, thanks for your suggestion! I committed the new function sj-todos to show all TODOs.

Comments are closed.

%d bloggers like this: