Org::Document - Represent an Org document
This document describes version 0.47 of Org::Document (from Perl distribution Org-Parser), released on 2016-04-01.
use Org::Document; # create a new Org document tree from string my $org = Org::Document->new(from_string => <<EOF); * heading 1a some text ** heading 2 * heading 1b EOF
Derived from Org::Element.
List of tags for this file, usually set via #+FILETAGS.
List of known (action-requiring) todo states. Default is ['TODO'].
List of known done (non-action-requiring) states. Default is ['DONE'].
List of known priorities. Default is ['A', 'B', 'C'].
List of known drawer names. Default is [qw/CLOCK LOGBOOK PROPERTIES/].
List of radio target text.
If set, will be passed to DateTime->new() (e.g. by Org::Element::Timestamp).
Create object from string.
Load all Org::Element::* modules. This is useful when wanting to work with element objects retrieved from serialization, where the element modules have not been loaded.
Compare two priorities
$p2. Return result like Perl's
cmp: 0 if the two are the same, -1 if
$p1 is of higher priority (since it's more to the left position in priority list, which is sorted highest-first) than
$p2, and 1 if
$p2 is of lower priority than
$p2 has unknown priority, will return undef.
$doc->cmp_priorities('A', 'A') # -> 0 $doc->cmp_priorities('A', 'B') # -> -1 (A is higher than B) $doc->cmp_priorities('C', 'B') # -> 1 (C is lower than B) $doc->cmp_priorities('X', 'A') # -> undef (X is unknown)
Note that X could be known if there is a
#+PRIORITIES setting which defines it.
Please visit the project's homepage at https://metacpan.org/release/Org-Parser.
Source repository is at https://github.com/perlancar/perl-Org-Parser.
Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=Org-Parser
When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.
This software is copyright (c) 2016 by firstname.lastname@example.org.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.