Reading notes with nov.el-mode and org-noter
            ============================================

Within Emacs, you can read PDF and EPUB files and keep reading notes
in a  separate but linked org  file. With DocView you  can also read
odt and  docx files,  with these  also you  can keep  linked reading
notes.

I have only used org-noter with EPUB files.

Below, we  look at using  Emacs to read  EPUB files, and  create and
maintain reading notes.

I use the Vanilla Emacs key bindings (without Doom or Spacemacs).

nov.el and org-noter can both be installed from Melpa.

                    Read EPUB files with nov.el
                    ---------------------------

nov.el (https://depp.brause.cc/nov.el) is a wonderful major mode for
reading EPUB files in Emacs.

                           Configuration
                           .............

With nov.el you open and read EPUB-files in Emacs. Depending on your
preferences  the  text  is  shown  with a  variable  pitch  font,  a
monospace font or your standard font in Emacs.

I prefer the standard Emacs font,  this way everything uses the same
presentation.

Nov.el by  default fills the text  to column 80. I  prefer a smaller
text  width and  set this  to column  70. This  way I  can have  two
windows side-by-side and still have some 'air' around the text.

This is my configuration:

    (use-package nov
      :ensure t
      :config
      (setq nov-variable-pitch nil
            nov-text-width 70))

Line  numbers are  probably not  very useful  while reading  a EPUB.
Therefor I have  disabled the line numbers in  nov.el-mode, and some
other modes:

    (dolist (mode '(deft-mode-hook
                    term-mode-hook
                    nov-mode-hook
                    shell-mode-hook))
        (add-hook mode (lambda () (display-line-numbers-mode 0))))

                               Usage
                               .....

Just open an EPUB file to start reading.

The main navigation is with the  standard key bindings, like in info
or eww:

* To scroll, use space and to scroll back use backspace.
* To move to the next chapter, use n and to the previous, use p,
  or use the ] and [ keys.

For more key bindings, see the nov.el file, search for nov-mode-map.

                 Take reading notes with org-noter
                 ---------------------------------

org-noter (https://github.com/weirdNox/org-noter)  advertises itself
as "a synchronized, org-mode document annotator".

Org-noter shows the buffer with your EPUB-file side-by-side with the
buffer with the org file containing the notes.

It keeps  both buffers  synchronized, so when  you walk  through the
EPUB file, the notes for the  current chapter are shown, if any. And
vice versa,  when you walk through  your notes, the for  the current
note corresponding chapter from the EPUB file is shown.

Org-noter can be  used with PDF files, with EPUB  files, and ODT and
docx files.

org-noter creates  org PROPERTIES drawers  in the org file,  to link
your notes  to the specific  EPUB file,  and to link  the individual
notes to the chapters in the EPUB file.

                               Frames
                               ......

For each EPUB file or PDF  file, org-noter creates a new frame. This
new frame contains  two windows, the left one  containing the buffer
with the EPUB or PDF file, and the right one containing the org file
for the notes.

These frames makes  it possible to open several PDF-  and EPUB files
at the same time, each together with their own org-noter window.

When you press q in one of  the frames, the specific frame is closed
again.

In the  beginning this was something  that I really had  to get used
to,  normally I  run Emacs  in  a single  frame. Once  used to  this
however, it turns out to work fine.

                           Configuration
                           .............

Default  org-noter uses  a  file called  "Notes.org",  but I  prefer
lowercase-only filenames, so I configured it to use "notes.org".

Org-noter needs a default path.

This is my configuration:

    (use-package org-noter
      :after org
      :ensure t
      :config
      (setq org-noter-default-notes-file-names '("notes.org")
            org-noter-notes-search-path '("/path-to-the-notes/")))


                               Usage
                               .....

Open an EPUB file and  start org-noter with M-x org-noter. Org-noter
opens  the notes.org  file as  configured.  At this  point, you  can
choose to  not use the default  notes.org file, but a  different org
file.

Start reading the EPUB file.

* To create a new note, use i
* To create a precise note, use M-i
* To stop taking notes and close the frame, use q
* To go to the previous page or chapter, use M-p
* To go to the next page or chapter, use M-n
* To go to the previous note, use C-M-p
* To go to the next note, use C-M-n

A "precise note"  is a note linked to a  specific location which you
have marked with your mouse. I haven't used this.

For  more  key  bindings,  see the  org-noter.el  file,  search  for
org-noter-doc-mode-map.

When  you walk  through the  EPUB file,  the note  referring to  the
currently opened page is unfolded, the other notes are folded so you
only see their headings.

                            Taking notes
                            ------------

After you  have started org-noter from  an opened EPUB or  PDF file,
you have a frame with two windows:

* The left window contains the EPUB or PDF 
* The right window contains the org file for the reading notes.

At any  location you currently are  in the EPUB file,  Just press i,
and org-noter will prompt in the minibuffer for the title text for a
new heading.

Just enter the title text  followed by Return, org-noter now creates
a level two header (** Note title)  in the org document in the right
window, followed by  a folded PROPERTIES drawer, and  puts the point
right below it. so you can start typing your note right away.

The note you just have entered  is linked to the current location in
the EPUB file.

It doesn't take long to get used to this workflow, and very soon you
take notes while staying "in the flow".

           The reading notes are kept in the right order
           .............................................

If you  make a  note at  say, chapter 2,  and after  that a  note at
chapter 5, followed  by a note at chapter 3.  org-noter will put the
last note between the notes for chapter 2 and chapter 5, so it keeps
your notes in the right order.

In your org file you will see:

* Title of your note on Chapter 2
* Title of your note on Chapter 3
* Title of your note on Chapter 5

This is a great feature! 

While reading the  EPUB and going through the text,  you can stay in
the flow, and at any time make a note on any place in the EPUB file,
without having to think about the placement.

You  will end  with a  perfectly  organized org-file  with all  your
notes, each with a nice org-heading, and all in the right order.

                 Organization of your reading notes
                 ----------------------------------

Default  org-noter uses  the  "notes.org" file,  as  defined in  its
configuration.

For each EPUB, PDF  and so on, for which you  have made notes, there
is a  level one  header (*  Title) with the  title, followed  by the
level two headers (** Note-title) with their actual note.

However,  if you  want the  notes for  a certain  PDF of  EPUB in  a
different org file, you can do that.

If you have notes made with  org-noter in a different file, and want
to read  the notes together with  the original PDF or  EPUB file the
notes relate to,  first open the org-file, and  start org-noter from
there. Org-noter retrieves the right PDF or EPUB, including its file
name and path, from the PROPERTIES drawer and open it.

                             Org files
                             ---------

org-noter creates  standard org files.  You can read and  edit these
files like any other org file.

When you  want to review  your notes, there is  no need to  open the
related  EPUB or  PDF,  just  open the  org  file directly,  without
org-noter.

At any  time while reading  the org  file, you can  start org-noter,
which will open the related EPUB or PDF and you can see the original
file and your notes side-by-side and synchronized again.

org-noter  uses  only the  org-files,  and  puts all  the  necessary
information  it needs  to function,  in the  PROPERTIES drawers.  No
extra tools, like a database, are needed. It is all just plain org.

Just give it a try!

Last edited: $Date: 2023/01/26 14:14:18 $

                              * EOF *