list items only contain content that is indented to their respective level. Except when that content is inside a block. To allow for this we have to ignore the parentStop when parsing a block and just include everything until the end of that block. Can't think of any problems with this right now. Let's see if this comes back to bite me.
34 lines
2.4 KiB
Org Mode
34 lines
2.4 KiB
Org Mode
* go-org [[https://travis-ci.org/niklasfasching/go-org.svg?branch=master]]
|
|
A basic Org mode parser in go.
|
|
Take a look at [[https://niklasfasching.github.io/go-org/][github pages]] for some examples and an online org -> html demo (requires wasm support).
|
|
* next
|
|
- test against [[https://raw.githubusercontent.com/kaushalmodi/ox-hugo/master/test/site/content-org/all-posts.org][ox-hugo all-posts.org]]
|
|
- ATTR_HTML without printing child - i.e. above other, non-affiliated keyword
|
|
- more keywords: https://orgmode.org/manual/In_002dbuffer-settings.html
|
|
- headlines
|
|
- unique ids
|
|
- CUSTOM_ID drawer property
|
|
- see [[https://github.com/kaushalmodi/ox-hugo/blob/8472cf2d8667754c9da3728255634e8001a1da6d/ox-hugo.el#L1785-L1850][ox-hugo]] for auto generation
|
|
- improve list parsing
|
|
- handle list items with empty first line
|
|
- handle ordered list overrides [@10]
|
|
* differences to goorgeous
|
|
To get a feeling take a look at goorgeous vs go-org html rendering of the examples [[https://niklasfasching.github.io/go-org/go-org-vs-goorgeous][comparison]].
|
|
Please note that a visual comparison is not fair to goorgeous as the stylesheet is not adapted to it.
|
|
Nonetheless, the html output can be compared by taking a look in the developer console where relevant.
|
|
|
|
- no headline ids
|
|
- not changing links to .org files into links to .html files
|
|
- do not plan to implement this, too many edge cases (e.g. [[https://github.com/chaseadamsio/goorgeous/issues/56][mangling links to e.g. example.org]].)
|
|
- org comments not rendered as html comments (same as ox-html.el)
|
|
- headline priority not exported to html (same as ox-html.el)
|
|
- goorgeous treats all `file:` links as images - go-org checks for an image file extension (same as ox-html.el)
|
|
- no support for [@10] in ordered lists https://github.com/chaseadamsio/goorgeous/issues/18
|
|
- do not plan to implement this
|
|
* resources
|
|
- https://orgmode.org/manual/
|
|
- https://orgmode.org/worg/dev/org-syntax.html
|
|
- https://code.orgmode.org/bzg/org-mode/src/master/lisp/org.el
|
|
- https://code.orgmode.org/bzg/org-mode/src/master/lisp/org-element.el
|
|
- mostly those & ox-html.el, but yeah, all of [[https://code.orgmode.org/bzg/org-mode/src/master/lisp/]]
|
|
- existing Org mode implementations: [[https://github.com/emacsmirror/org][org]], [[https://github.com/bdewey/org-ruby/blob/master/spec/html_examples][org-ruby]], [[https://github.com/chaseadamsio/goorgeous/][goorgeous]], [[https://github.com/jgm/pandoc/][pandoc]]
|