weirdNox / org-noter

Emacs document annotator, using Org-mode
GNU General Public License v3.0
1.07k stars 101 forks source link

Allow :NOTER_DOCUMENT: to be in file-level :PROPERTIES: drawer #143

Open gcoladon opened 3 years ago

gcoladon commented 3 years ago

According to https://orgmode.org/Changes.html#orgdd3d5c7, properties that are set prior to the first heading work as if they are outline level 0. But when I put :NOTER_DOCUMENT: into a :PROPERTIES: drawer at the top of an org file, and try to run org-noter from below the first headline I get the Root heading not found error, and when I try to run it from above the first headline, I get the error 'org-noter must be issued inside a heading'.

In theory should org-noter work with NOTER_DOCUMENT specified at the top of the file, and it's just a matter of updating the code so that it conforms to this new feature of org-mode?

gcoladon commented 3 years ago

Could the call to org-entry-get inside org-noter--parse-root be replaced with a call to org-entry-get-with-inheritance, to take advantage of org's ability to recurse the tree looking for an inherited property?

benthamite commented 3 years ago

I was about to open an issue to suggest this improvement but then noticed @gcoladon had already made it. Currently I use an org-roam capture template that creates an ID property at the very beginning of the document, before any headings, and then it creates a new heading just for the purpose of attaching to it the :NOTER_DOCUMENT: property. It would be great to be able to set this additional property next to ID, and dispense with the need to have the extra heading.