I use Emacs, Org mode and the Org mode plugins org-noter and org-brain to take notes during lectures. On this page you will find information about my setup and workflow. I’m going to asume, that you know Emacs, how to configure this text editor, how to install packages from MELPA and know about Org mode.
First of all, install org-noter and org-brain from MELPA. Please verify, that you can use org-noter to annotate pdf documents and create a first brain on your system.
If you compare the headlines that are created with org-noter with
those created by org-brain, you might see a difference in the
:PROPERTIES: drawer. Org-noter adds some metadata to the headlines.
This is used to sync notes, with the document locations.
All org-brain headlines were created with an
:ID:. This is
neccessary for org-brain, to show the headlines with
org-brain-visualize. The org-noter headlines don’t have an id
associated with them. I want the org-noter entries, to be shown in the
brain. To achieve that, org-noter must be configured to always create
:ID: to new note headlines. This is done with adding the
org-id-get-create function to the
(add-hook 'org-noter-insert-heading-hook #'org-id-get-create)
Now all new notes will receive an id. If you create a note with org-noter in a org-brain buffer, that will show up in the brain. This is useful.
But it’s not yet convenient to open a Noter session. With the current
configuration, you cannot open a Noter session from within the
visualized brain. Instead you would have to open the current entry in
an Org mode buffer, call
org-noter there and visualize the brain
again. We have to define a new function for this feature:
org-brain-open-org-noter. This function can be called from a
visualized org-brain and opens the Noter session for the current
(defun org-brain-open-org-noter (entry) "Open `org-noter' on the ENTRY. If run interactively, get ENTRY from context." (interactive (list (org-brain-entry-at-pt))) (org-with-point-at (org-brain-entry-marker entry) (org-noter)))
If you annotate a lot of documents, this is a bit long to type. It
might be a good idea, to add a keyboard shortcut for the visualised
brain. In the following example
org-brain-open-org-noter is mapped
(define-key org-brain-visualize-mode-map (kbd "\C-c n") #'org-brain-open-org-noter)
I made a short video showing the structure of my studies brain and talking a bit about my workflow and how I use it during class. I hope this helps someone, even though this is my first screen recording experiment.
In my studies brain, I create children entries for every semester. These semester entries are parents to the entries for every lecture I’m attending. This is the pretty easy overall structure in my studies brain. The next hierarchy varies a bit depending on the lecture.
Basically I like two approaches of structuring my notes: by date of the class and by topic. Org-brains linking capacities enable the hybrid approach of structuring the notes.
At the beginning of the semester, I create an “dates” entry. This will be filled with children for all days I went to class. I don’t write a lot of notes in these entries. But at the end of the day, I’m adding the day as parent to the topics of the day. That allows me to easily see all topics, discussed on a specific date. As an example: Before the next class, I only need a glimpse on the last class entry, to see what was covered the last time.
For my notes on the topic, I try to mimic the professors lecture structure in my brain. That means I create a child headline for every presentation we receive. I attach the slides to the child headline and start org-noter to annotate the attached file. It depends on the topic, if we go through the whole topic in one class or if we need multiple days. So it happens often, that the time and topic structure drift apart.
I write most of my notes in the form of questions. Like I would prepare flash cards. During class I ask my self: “The answers to which important questions are available in the current slide?” Of course I should be able to answer these questions later. If the professors add information that is not available on the slide, I will of course write that down with or without a good question.
After class I sometimes take the time to link the notes to similar entries, like brain “friends” or “parents.” But even if I don’t do this, I have notes that are nice to navigate in.
Conclusion & Thanks
Org-brain helps me structure my notes during class in different ways and link them together. Org-noter allows me to keep my notes in sync with the slides. Everything works wonderful in Emacs and is kept in plain-text. I’m not sure how long I will stick to this method (I changed my note taking system nearly every semester), but for now I am happy.
A big thank you to the maintainers of org-noter and org-brain! They are very responsive and do a great job. Both helped to improve the combination of org-brain and org-noter for example in the following issues:
- org-brain issue about org-noter integration
- org-noter issue about
:ID:property on new note entries
- org-noter issue about annotating on attached files
I can easily think on even more possible helpful tool combinations.