This is an attempt at implementing a pandoc reader in rust that can handle the norg File Format. Since pandoc has no native support for rust it will output the AST root node Currently it supports Layer 2 as well as selected other things:
-
Inline link targets
-
Wiki Links
-
.image
-
Todo items:
- Urgent (
(!)
)
- Urgent (
Since this parser uses the norg tree sitter under the hood it shares the same limitations.
I'll List them here as I encounter them.
- The max nesting Headings and lists can have is 6. Anything beyond that will be treated like 6th level nesting
The following are limitations that aren't inherited by tree sitter and i have not found a way to resolve yet
-
Line number links (
{2}
) don't work -
Magic Char links to other files (
{:other_file:# Some Heading}
) don't work and will simply link to the other file -
File links of the syntax
{file://path/to/file.norg}
seem to work as apparantly URIs of that schema need absolute paths. However even with absolute paths im running into issues -
Wiki Links currently only work in the same file. As this parser is only processing one file at a time it can't open other files to search for the target.
-
Scoping Links of the form
{* Level 1 Heading: *** Level 3 Heading}
will simply link to* Level 1 Heading
As resolving the scope is over my head currently
-
These need better documentation as to what kinds of tags exist and how to handle them. The ones implemented for now are:
-
Metadata
@document.meta
-
Code blocks
-
Everything else is handled pretty much like a code block
-