All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
org-noter-property-location-lock
(NOTER_PAGE_LOCK
) property that inhibitorg-noter-set-start-location
from changing the location of a note.
- Symbol definition is void error from org-noter-citar.el by removing
citar--ensure-entries
.
org-noter-integration.el
that was copied from the Xi Fu’s org-pdftools (see #75). If user wants the same functionality they can use org-noter-pdftools.el (see org-pdftools installation guide).
1.15.0 [2022-05-31 Tue]
- Option
org-noter-create-skeleton-functions
, list of function that inserts a tree of headlines according to the outline of the document.
- Move skeleton functions to their own files.
org-noter-set-up-document-handler
->org-noter-set-up-document-hook
.
- Revert using
org-element-cache-map
.
- Not recognizing location in file-level property.
- Wrong number of arguments error in
org-noter--doc-approx-location
. - Not parsing the document property before comparing to document path.
- org-noter–get-view-info don’t work with drawer as root.
- doc-mode and note-mode overlapping when using a single buffer.
- Before first heading error in
org-noter--focus-notes-region
.
1.14.0 [2022-04-12 Tue]
- Allow links as document property.
- Option
org-noter-open-document-functions
, list of functions that gives a buffer when passed with a document property. - org-noter-citar.el also give URL as document.
- Handle single window layout when opening a URL.
- Use
org-noter--get-or-read-document-property
inorg-noter-sync-current-note
. - Remove org-roam-bibtex dependency in org-noter-citar.el.
org-noter--doc-approx-location-cons
- Fixes for org-pdftools location link in #93.
- Killing the base buffer of note file when
org-noter-use-indirect-buffer
isnil
.
1.13.0 [2022-03-11 Fri]
- Option
org-noter-get-buffer-file-name-hook
, a list of functions that when passed a major mode, will return the current buffer file name. - Option
org-noter-set-up-document-handler
- Option
org-noter--doc-approx-location-hook
- Option
org-noter--get-current-view-hook
- Option
org-noter-get-selected-text-hook
- Modularization of all document formats
1.12.0 [2022-01-17 Mon]
- org-noter-dynamic-block.el allows using dynamic block as a note. The dynamic block have to be in the format of
#+BEGIN: note PRECISE-LOCATION NOTE #+END:
- Option
org-noter--get-containing-element-hook
, list of functions that will be called byorg-noter--get-containing-element
to get the org element of the note. - Option
org-noter--get-location-property-hook
, a list of functions that will return the note location of an org element.
- Delegates getting the org element of the note to
org-noter--get-containing-element
. - Using edges as precise location for pdf files.
- “Before first heading” error when starting a session in a file with no headings.
1.11.0 [2022-01-14 Fri]
- Support an org file with no headings.
- org-noter-citar.el a module that helps finding note files via citar.
- Speed up page turning by using
org-element-cache-map
. [YANKED] - Option
org-noter-parse-document-property-hook
, a list of functions that return a file name for the value of the propertyorg-noter-property-doc-file
. - Option
org-noter-prefer-root-as-file-level
(defaultnil
) When non-nil, org-noter will always try to return the file-level property drawer even when there are headings.
1.10.0 [2021-12-26 Sun]
- Option
org-noter-swap-window
(defaultnil
) - Option
org-noter-disable-narrowing
(defaultnil
) - Option
org-noter-use-indirect-buffer
(defaultt
) - Option
org-noter-find-additional-notes-functions
, a list of functions that when given a document file path as argument, give out an org note file path.
- Org-noter can be called without headline.
- Separate core functions to org-noter-core.el.
- Setting property drawer to read-only when there is no drawer.
- Emacs crashing when note buffer is not setup.
1.9.0 [2021-11-21 Sun]
org-noter-create-skeleton-epub
for nov-mode from https://github.com/yuchen-lea/org-noter-plus.
get-location-page -> ~org-noter--get-location-page
org-noter-nov-overlay.el
only make overlays when the page matches.org-noter-nov-overlay.el
only make overlays when the location is precise.
1.8.0 [2021-09-15 Wed]
- Allow keyword as a document property.
#+NOTER_DOCUMENT: /path/to/doc.pdf
- Allow document property to be file-level
:PROPERTIES: :NOTER_DOCUMENT: /path/to/doc.pdf :END: * First heading brah brah brah
- org-noter-nov-overlay.el highlight your notes with overlay in session for nov-mode.
- Use active region as precise info for djvu and epub files.
get-location-top -> ~org-noter--get-location-top
get-location-left
->org-noter--get-location-left
1.7.0 [2021-01-13 Wed]
- Modified version of
pdf-util-tooltip-arrow
calledpdf-util-tooltip-arrow-with-image-left
to handle x axis arrow. get-location-page
,get-location-top
&get-location-left
to help with getting the value of precise location.
- The format for precise location of a pdf becomes
(PAGE X . Y)
.
1.6.0 [2021-09-13 Mon]
org-noter-create-skeleton-djvu
for creating skeleton for djvu files.
org-noter--doc-goto-location
also move point for djvu files.org-noter-insert-note
additionally takeNOTE-TITLE
as an argument.- Refactor most code of
org-noter-create-skeleton
toorg-noter-create-skeleton-pdf
.
1.5.0 [2021-09-04 Sat]
- weirdNox’s original README is in README-orig.org.
1.4.1[2019-10-25 Fri]
- Missing quote in
org-noter--get-precise-info
.
1.4.0 [2019-09-29 Sun]
- Option
org-noter-insert-heading-hook
for running functions after inserting notes. - Option
org-noter-kill-frame-at-session-end
. - Command
org-noter-jump-to-note
to jump from annotation to org heading. - Support annotating attached document.
- Use org-id for org-pdftools locations.
- Use org-pdftools links by
org-noter-create-skeleton
. - Integration with org-pdftools in org-noter-integration.el.
- Single frame deletion error.
- Error about structs for Emacs < 26.
- Narrowing heading with no children.
1.3.0 [2018-10-26 Fri]
- Option
org-noter-doc-property-in-notes
that make org-noter put document property to every new note. - Record session id as text properties in the text in note buffer.
- Inserting note without question with the option
org-noter-insert-note-no-questions
, the commandorg-noter-insert-note-toggle-no-questions
can also be used with the keybindingC-i
.
org-noter-hide-other
is set to true as a default.
- Optimization of narrowing helper functions.
- Killing buffer not from session.
- Moving the point when focusing on notes
- Unnecessary newlines with creating multiple notes.
- Wrong root when creating a session in indirect buffer.
- Let user insert space when creating note.
1.2.0 [2018-08-16 Thu]
- Option
org-noter-closest-tipping-point
can be overrode with the propertyNOTER_CLOSEST_TIPPING_POINT
per file or set the value withorg-noter-set-closest-tipping-point
. - Option
org-noter-set-doc-split-fraction
to control the size of the split can be overrode with the propertyNOTER_DOCUMENT_SPLIT_FRACTION
or by settingorg-noter-set-doc-split-fraction
. org-noter--get-view-info
to help with creating note.only-prev
behavior fororg-noter-notes-window-behavior
.
- Refactor some code in
org-noter--focus-notes-region
toorg-noter--show-note-entry
. org-noter-insert-note
no longer takes prefix argument.
org-noter--get-notes-for-current-view
->org-noter--get-current-view
org-noter-doc-split-percentage
->org-noter-doc-split-fraction
org-noter--get-this-note-last-element
org-noter--get-this-note-end
1.1.1[2018-06-26 Tue]
- Option to choose ALL types of annotation in
org-noter-create-skeleton
. - Option to choose both outline and annotation to generate skeleton.
- Content and Comment of an annotation will be its children.
- Subtree for URL in a page when creating a skeleton.
1.1.0 [2018-06-18 Mon]
- Fallback to using
buffer-file-truename
when a mode killbuffer-file-name
. - Using region as precise location.
- Toggle
org-noter-always-create-frame
by callingorg-noter
with prefix argument 0. - Showing arrow when syncing notes with
org-noter--arrow-location
andorg-noter--show-arrow
. - Option
org-noter-arrow-delay
to set the delay for arrow. - Option
org-noter-notes-search-path
to search for an org mode when start a session for a document. - Option
org-noter-insert-selected-text-inside-note
to makeorg-noter-insert-note
insert the selected text to the note heading aswell.
- Convert edges of precise location of annotations in
org-noter-create-skeleton
to region format withorg-noter--pdf-tools-edges-to-region
.
- Wrong order of outline (#23).
- Unable to create a session from EPUB by using
nov-file-name
.
1.0.2 [2018-05-12 Sat]
- Using selection as the default title
- The outline created by
org-noter-create-skeleton
no longer separated with newline.
assert
Symbol’s function definition is void error.
1.0.1 [2018-03-31 Sat]
- MELPA Stable badge in README.org
- Use if-elseif in
org-noter
.
1.0 [2018-03-24 Sat]
- Support for nov.el.
- Starting a session from the document. If the note file is not found,
it will be created. The name of the new file is chose by the user
from
org-noter-default-notes-file-names
. org-noter-create-skeleton
can generate annotations as well.- The option
org-noter-separate-notes-from-heading
to insert an empty line after creating a note. org-noter--note-in-view
,org-noter--count-notes
&org-noter--get-notes-for-current-view
as helper functions to show note count in mode line.
org-noter-kill-session
will also remove hooks and advisors related to org-noter.
org-noter--page-property
->org-noter--location-property
org-noter--compare-page-cons
->org-noter--compare-location-cons
org-noter-property-note-page
->org-noter-property-note-location
org-noter--page-change-handler
->org-noter--doc-page-change-handler
org-noter--ask-scroll-percentage
->org-noter--ask-precise-location
org-noter-sync-prev-page
->org-noter-sync-prev-page-or-chapter
org-noter-sync-current-page
->org-noter-sync-current-page-or-chapter
org-noter-sync-next-page
->org-noter-sync-next-page-or-chapter
org-noter--inhibit-page-handler
->org-noter--inhibit-location-change-handler
org-noter--goto-page
->org-noter--doc-goto-location
org-noter--doc-page-change-handler
->org-noter--doc-location-change-handler
org-noter--doc-view-advice
->org-noter--location-change-advice
org-noter--get-slice
->org-noter--doc-get-page-slice
org-noter--modeline-text
->org-noter--mode-line-text
org-noter--doc-current-page
->org-noter--doc-approx-location
0.12.0 [2018-02-06 Tue]
- Support for grouping notes in the same headline.
- Demonstration in Demo.org.
- Resume session from a note.
org-noter-create-skeleton
to generate the document outline with org headline.- Caching the structure of the file in session for faster retrieval.
- Customization for reusing existing frame with
org-noter-always-create-frame
. - Hiding unrelated note with
org-noter-hide-other
, can be toggled withorg-noter-set-hide-other
, and overrode withorg-noter--property-hide-other
,NOTER_HIDE_OTHER
.
- Reword many section of README.
- Refactor code in
org-noter--selected-note-page
to its own function,org-noter--get-containing-heading
. - Refactor code in
org-noter--setup-windows
toorg-noter--get-notes-window
. org-noter-set-notes-window-location
deletes extra frame displaying only note window.- Reuse windows if it’s in the correct configuration.
- Empty session name
- Error when creating session because
current-page
symbol is nil. - Inconsistency in
org-noter-sync-prev-note
. - Infinite recursion in killing a session.
0.11.0 [2018-01-29 Mon]
- Note count to mode line.
- Save progress with the variable
org-noter-auto-save-last-page
. The variable can be toggled withorg-noter-set-auto-save-last-page
or override in a file withorg-noter-property-auto-save-last-page
,NOTER_AUTO_SAVE_LAST_PAGE
property. - Store
::auto-save-last-page
property in session.
org-noter-insert-note
will select the document window when user quits while inserting note.org-noter-kill-session
will kill the frame of the notes buffer.
org-noter-property-behavior
->org-noter--property-behavior
org-noter-property-location
->org-noter--property-location
org-noter-property-auto-save-last-page
->org-noter--property-auto-save-last-page
0.10.0 [2018-01-28 Sun]
- Override global window settings with
org-noter-property-behavior
andorg-noter-property-location
,NOTER_NOTES_BEHAVIOR
andNOTER_NOTES_LOCATION
respectively. - The macro
org-noter--with-selected-notes-window
. - The function
org-noter--notes-window-behavior-property
andorg-noter--notes-window-location-property
to get window setting property. - The command
org-noter-set-notes-window-behavior
andorg-noter-set-notes-window-location
to set window setting. - Store
:window-behavior
and:window-location
property in session. org-noter--compare-page-cons
to do page comparison.- Sync page commands:
org-noter-sync-prev-page
,org-noter-sync-current-page
&org-noter-sync-next-page
. See README for their keybindings and explanation.
- Refactor most of the code in
org-noter
command toorg-noter--create-session
function. org-noter
accepts relative file path.
org-noter--restore-windows
->org-noter--setup-windows
0.9.0 [2018-01-11 Thu]
- More control over the setup of windows with
org-noter-notes-window-behavior
andorg-noter-notes-window-location
. - The function
org-noter-other-window-config
to startorg-noter
with another window configuration.
- Change the package name from
alt-interleave.el
toorg-noter.el
.
- Every function is renamed with
org-noter
as its prefix. - Every occurrence of
pdf
is replaced withdoc
.
interleave--focus-notes-region
recentering at the beginning of the window.- Setting the beginning of the document to read-only.
- Wrong
cl-lib
dependency declaration.
0.8.0 [2017-12-18 Mon]
interleave--selected-note-page
uses all of the buffer to get root property value.interleave--focus-notes-region
also recenters the screen.interleave--restore-windows
narrows to root after restoring windows.interleave-kill-session
no longer asks for confirmation when the note buffer is modified.
- Inserting headline at the end of the buffer without inserting newline.
- Calling
interleave
with prefix argument still consider inherited tags.
0.7.0 [2017-11-28 Tue]
interleave-set-start-page
command sets the page for the start of a session.interleave-other-window-config
command that use another split direction to start.interleave--selected-note-page
to get the start page.- ideas.org to record some ideas.
- Use
interleave--get-slice
to get a more precise scroll percentage in localized note. - Shorten display name of PDF buffer.
- Users have to choose which notes
interleave-insert-note
can insert. interleave--narrow-to-root
go to the content of root instead of restoring point.
interleave-kill-session
killing modified notes buffer.interleave--page-change-handler
focusing on notes with noINTERLEAVE_NOTE_PAGE
property.
0.6.0 [2017-11-25 Sat]
interleave-insert-localized-note
that inserts a note that associate with part of a page.INTERLEAVE_NOTE_PAGE
can be in the format of a cons cell;(PAGE_NUMBER . SCROLL_PERCENT)
.
interleave--goto-page
takes number instead of string.
0.5.0 [2017-11-24 Fri]
- Installation & Usage in README.
- Users can change the default title of a note with the variable
interleave-default-heading-title
. - Opening only the directory of the PDF by passing prefix argument to
interleave
- Displaying name of documents when killing a session.
- Storing the level of root heading in session.
- Customized scroll for windows of interleave session with
interleave--set-scroll
.
- The package is now named
alt-interleave
. - The property for the page of a note is changed back to
INTERLEAVE_NOTE_PAGE
, for compatibility with Sebastian’s Interleave, users have to change this themselves as instructed in README. - Define minor mode for PDF and notes:
interleave-pdf-mode
,interleave-notes-mode
. This is a cleaner way to handle local keybindings. - Use windows to set up the session instead of buffers.
- Restore windows when a session is already opened with
interleave--restore-windows
.
- The variable
interleave--inhibit-next-page-change
as no functions use it anymore.
- Point not moving at the end of the buffer when syncing the pages.
- Inserting new line in title when creating notes.
0.4.0 [2017-11-11 Sat]
- Support for DocView mode.
- Syncing the note file by going to the nearest note when the page changes.
- Commands for syncing notes:
interleave-sync-previous-page-note
,interleave-sync-next-page-note
. - Customization group called
interleave
- More details in README containing keybindings and features:
M-p
interleave-sync-next-page-note
M-.
interleave-sync-page-note
M-n
interleave-sync-next-page-note
i
interleave-insert-note
q
interleave-kill-session
interleave--property-pdf-file
->interleave-property-pdf-file
interleave--property-note-page
->interleave-property-note-page
0.3.0 [2017-11-10 Fri]
- The macro
interleave--with-valid-session
can be used for other functions to access the information of a session. - Making root heading read-only when starting a session.
- The property for the page of a note is now
INTERLEAVE_PAGE_NOTE
for compatibility.
0.2.0 [2017-10-11 Wed]
- LICENSE file for GNU GPL3 license.
- README file explaining the reason for a rewrite.
interleave-kill-session
command to manually kill a session.- Killing session automatically with
interleave--handle-buffer-kill
andinterleave--handle-delete-frame
used as hook for delete frame functions. - The
INTERLEAVE_NOTE_PAGE
property to store page number of each note. interleave-insert-note
command that automatically make a new note with respect to the order of the page number.
- Also consider the parent of a note as a “root” if it has the same PDF as its property.
- Ask user to kill the session instead of giving error when the PDF is already interleaved with another note file.
- The note window is no longer set as dedicated.
0.1.0 [2017-10-10 Tue]
interleave.el
copied from Sebastian Christ.- Checks for PDF file path e.g. non-existent file, invalid path in
interleave
command. - The ability to use relative file name for PDF file.
- Storing information of a session in
interleave--sessions
instead of relying on text only. - Narrowing to a heading when calling
interleave
. - Setting windows for the PDF file and the note file to be dedicated.