Skip to content

Support for level-0 properties & timestamps #42

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Oct 31, 2021
Merged

Support for level-0 properties & timestamps #42

merged 4 commits into from
Oct 31, 2021

Conversation

tbruckmaier
Copy link
Contributor

Hi, thanks for your work, I am using orgparse daily and it works great!

This pull requests adds support for property drawers & timestamps before the first headline. Since org 9.4, everything before the first headline is considered to belong to a "outline level 0" (https://orgmode.org/Changes.html#orgdd3d5c7), so I think it makes sense to attach them to our OrgRootNode.

I have basically just moved methods from OrgNode to OrgBaseNode, so they are available in OrgRootNode, and added the appropriate parsers in OrgRootNode.

There was a comment in the code, which said it was "a hack that the root node just reads the lines before the first headline". But I think that is the correct behaviour? I have removed it therefore for now

Since org 9.4, property drawers are allowed & belong to a "level 0
  headline". In orgparse, they should end up in OrgRootNode

- moved property methods from OrgNode to OrgBaseNode & added parsing in
  OrgRootNode
- removed obsolete todo, OrgRootNode correctly contains all lines before
  the first headline
- moved get_timestamps(), datelist(), rangelist() to OrgBaseNode (so
  they are available also in OrgRootNode) and added timestamp parsing to
  OrgRootNode
@karlicoss karlicoss merged commit 349a61f into karlicoss:master Oct 31, 2021
@karlicoss
Copy link
Owner

Thanks, looks good! Sorry it took me a while to get to it; I'll do a pypi release soon as well

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants