140 lines
4.3 KiB
Org Mode
140 lines
4.3 KiB
Org Mode
#+TITLE: Example org mode file
|
|
#+AUTHOR: Niklas Fasching
|
|
#+DESCRIPTION: just some random elements with little explanation
|
|
|
|
* Motivation
|
|
|
|
To validate the parser we'll try printing the AST back to org-mode source - if that
|
|
works we can be kind of sure that the parsing worked.
|
|
At least I hope so - I would like to get around writing tests for the individual parsing
|
|
functions...
|
|
|
|
** Headlines with TODO status, priority & tags
|
|
*** TODO [#B] Headline with todo status & priority
|
|
*** DONE Headline with TODO status
|
|
*** [#A] Headline with tags & priority :foo:bar:
|
|
this one is cheating a little as tags are ALWAYS printed right aligned to a given column number...
|
|
** Lists
|
|
- unordered list item 1
|
|
- unordered list item 2 - with ~inline~ /markup/
|
|
1. ordered sublist item 1
|
|
a) ordered sublist item 1
|
|
b) ordered sublist item 2
|
|
c) ordered sublist item 3
|
|
2. ordered sublist item 2
|
|
- unordered list item 3 - and a [[https://example.com][link]]
|
|
and some lines of text
|
|
1. and another subitem
|
|
#+BEGIN_SRC sh
|
|
echo with a block
|
|
#+END_SRC
|
|
2. and another one with a table
|
|
| a | b | c |
|
|
|---+---+---|
|
|
| 1 | 2 | 3 |
|
|
|
|
and text with an empty line in between as well!
|
|
- unordered list item 4
|
|
|
|
** Inline
|
|
- /emphasis/ and a hard line break \\
|
|
see?
|
|
- /.emphasis with dot border chars./
|
|
- /emphasis with a slash/inside/
|
|
- /emphasis/ followed by raw text with slash /
|
|
- ->/not an emphasis/<-
|
|
- links with slashes do not become /emphasis/: [[https://somelinkshouldntrenderaccidentalemphasis.com]]/ /emphasis/
|
|
- _underlined_ *bold* =verbatim= ~code~ +strikethrough+
|
|
- *bold string with an *asterisk inside*
|
|
- links
|
|
1. regular link [[https://example.com]] link without description
|
|
2. regular link [[https://example.com][example.com]] link with description
|
|
3. regular link to a file (image) [[file:my-img.png]]
|
|
4. auto link, i.e. not inside =\[[square brackets]\]= https://www.example.com
|
|
** blocks
|
|
#+BEGIN_SRC bash
|
|
echo a bash source block
|
|
#+END_SRC
|
|
|
|
#+BEGIN_SRC
|
|
a source block without a language
|
|
and a second line
|
|
and a third one
|
|
#+END_SRC
|
|
|
|
#+BEGIN_EXAMPLE foo bar baz
|
|
an example block
|
|
with multiple lines
|
|
#+END_EXAMPLE
|
|
|
|
#+BEGIN_QUOTE
|
|
Mongodb is very webscale
|
|
#+END_QUOTE
|
|
|
|
** issues from goorgeous (free test cases, yay!)
|
|
*** DONE [[https://github.com/chaseadamsio/goorgeous/issues/29][#29:]] Support verse block
|
|
#+BEGIN_VERSE
|
|
This
|
|
*is*
|
|
verse
|
|
#+END_VERSE
|
|
|
|
#+BEGIN_CUSTOM
|
|
or even a *totally* /custom/ kind of block
|
|
crazy ain't it?
|
|
#+END_CUSTOM
|
|
*** DONE [[https://github.com/chaseadamsio/goorgeous/issues/47][#47:]] Consecutive ~code~ wrapped text gets joined
|
|
either ~this~ or ~that~ foo.
|
|
either ~this~
|
|
or ~that~ foo.
|
|
*** DONE [[https://github.com/chaseadamsio/goorgeous/issues/68][#68]]: Quote block with inline markup
|
|
#+BEGIN_QUOTE
|
|
[[https://www.example.com][/this/ *is* _markup_!]]
|
|
#+END_QUOTE
|
|
|
|
*** DONE [[https://github.com/chaseadamsio/goorgeous/issues/77][#77]]: Recognize =code=--- as code plus dash
|
|
*** DONE [[https://github.com/chaseadamsio/goorgeous/issues/75][#75]]: Not parsing nested lists correctly
|
|
- bullet 1
|
|
- sub bullet
|
|
*** DONE [[https://github.com/chaseadamsio/goorgeous/issues/78][#78]]: Emphasis at beginning of line
|
|
/italics/
|
|
|
|
|
|
Text
|
|
/italics/
|
|
*** DONE [[https://github.com/chaseadamsio/goorgeous/issues/82][#82]]: Crash on empty headline
|
|
****
|
|
just a space as title...
|
|
*** DONE [[https://github.com/chaseadamsio/goorgeous/issues/84][#84]]: Paragraphs that are not followed by an empty line are not parsed correctly
|
|
**** Foo
|
|
Foo paragraph.
|
|
**** Bar
|
|
Bar paragraph
|
|
** Footnotes
|
|
- normal footnote reference [fn:1] [fn:6]
|
|
- further references to the same footnote should not [fn:1] render duplicates in the footnote list
|
|
- inline footnotes are also supported via [fn:2:the inline footnote definition].
|
|
|
|
* Footnotes
|
|
[fn:1] https://www.example.com
|
|
- footnotes can contain *markup*
|
|
- and other elements
|
|
- like blocks
|
|
#+BEGIN_SRC
|
|
other non-plain
|
|
#+END_SRC
|
|
- and tables
|
|
| 1 | a |
|
|
| 2 | b |
|
|
| 3 | c |
|
|
|
|
[fn:3] [[http://example.com/unused-footnote][example.com/unused-footnote]]
|
|
|
|
[fn:4] another unused footnote
|
|
|
|
[fn:5] another unused footnote
|
|
|
|
[fn:6]
|
|
|
|
Footnotes break after two consecutive empty lines - just like paragraphs - see https://orgmode.org/worg/dev/org-syntax.html.
|
|
This shouldn't happen when the definition line and the line after that are empty.
|