An Org Mode parser for Dart.
For displaying Org Mode documents in Flutter applications, see org_flutter. For an example application that displays Org Mode documents with org_parser and org_flutter, see Orgro.
This package allows you to parse raw Org Mode documents into a structured in-memory representation.
import'package:org_parser/org_parser.dart';
final doc =OrgDocument.parse('''* TODO [#A] foo barbaz buzz''');
print(doc.children[0].headline.keyword); // TODOSee the example for more.
- Parser and rich, immutable AST for Org markup
- Zipper-based editing facilities for Org AST
- Extensive test suite, including checks for lossless round-tripping from markup to AST and back
- Parser for the headline matching DSL
- Parser for file links
- Parser for and extended handling of the TODO workflow DSL
Sections/headlines
* TODO [#A] foo barBlocks
#+BEGIN_SRC foo bar #+END_SRCInline src
foo src_sh{echo "bar"} bazAffiliated keywords
#+name: fooFixed-width areas
: foo bar : baz buzzTables
| foo | bar | |-----+-----| | biz | baz |Lists
- foo - [X] bar 1. baz 2. buzz - bazinga :: bazongaDrawers
:PROPERTIES: foo bar :END:Footnotes
Foo bar[fn:1] biz buzz [fn:1] BazingaLinks, including with emphasis in description
[[http://example.com][example]] [[http://example.com][example *with* emphasis]] http://example.comEmphasis markup, including nested emphasis
*bold* /italic/ _underline_ +strikethrough+ ~code~ =verbatim=Timestamps
[2020-05-05 Tue] <2020-05-05 Tue 10:00> [2020-05-05 Tue]--[2020-05-05 Tue]Macro references
{{{kbd(C-c C-c)}}}LaTeX fragments
Then we add $a^2$ to \(b^2\)\begin{equation} \nabla \times \mathbf{B} = \frac{1}{c}\left( 4\pi\mathbf{J} + \frac{\partial \mathbf{E}}{\partial t}\right) \end{equation}Entities
a\leftrightarrow{}b conversionCitations
[cite:@key]Horizontal rules
-----Radio targets
<<<foo>>>Link targets
<<bar>>