Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/novoid/github-orgmode-tests

This is a test project where you can explore how github interprets Org-mode files
https://github.com/novoid/github-orgmode-tests

markup org-mode orgdown orgmode

Last synced: 7 days ago
JSON representation

This is a test project where you can explore how github interprets Org-mode files

Awesome Lists containing this project

README

        

#+TAGS: { FAILS(f) PARTLY(p) WORKS(w) example(e)}
#+EXPORT_EXCLUDE_TAGS: noexport

*Note:* a complete list of these features including keyboard
shortcuts, links, and descriptions is available on
https://github.com/novoid/github-orgmode-tests

This page demonstrates Org-mode features that are (or are not)
supported by github which is using an (old) version of [[https://github.com/wallyqs/org-ruby][org-ruby]].

Last GitHub feature render check and last table update: <2020-10-15 Thu>

# FIXXME 2020-10-15: Following line causes my Org to display column view mode instead of re-generating the filtered table:
# :exclude-tags "example"

#+BEGIN: columnview :id "Featuretest" :match "WORKS|FAILS|PARTLY" :format "%ITEM(Feature) %TAGS(status)"
| Feature | status |
|----------------------------------------------+------------------|
| Text formatting | :WORKS: |
| Text formatting within other syntax elements | :WORKS: |
| Lists | :PARTLY: |
| Headings with TODO items | :FAILS: |
| Drawers | :FAILS: |
| blocks ([[http://orgmode.org/org.html#Blocks][docu]]) | :PARTLY: |
| EXAMPLE block | :WORKS: |
| QUOTE block | :WORKS: |
| VERSE block | :FAILS: |
| SRC block | :WORKS: |
| python | :WORKS: |
| shell | :WORKS: |
| ruby | :WORKS: |
| ditaa | :WORKS: |
| session with shell and R | :WORKS: |
| QUOTE block | :WORKS: |
| HTML block | :FAILS: |
| LATEX block ([[http://orgmode.org/org.html#Embedded-LaTeX][docu]]) | :FAILS: |
| NOTES block | :FAILS: |
| comments ([[http://orgmode.org/manual/Comment-Lines.html][docu]]) | :WORKS: |
| Noexport tag of heading | :WORKS:noexport: |
| links [[http://orgmode.org/org.html#Hyperlinks][(docu)]] | :PARTLY: |
| states; TODO items ([[http://orgmode.org/org.html#TODO-Items][docu]]) | :PARTLY: |
| tags [[http://orgmode.org/org.html#Tags][(docu)]] | :FAILS: |
| tables simple [[http://orgmode.org/org.html#Tables][(docu)]] | :PARTLY: |
| tables complex ([[http://orgmode.org/org.html#The-Spreadsheet][docu]], [[http://orgmode.org/worg/org-tutorials/org-spreadsheet-intro.html][tutorial]]) | :PARTLY: |
| column view ([[http://orgmode.org/org.html#Column-View][docu]]) | :FAILS: |
| dates & time ([[http://orgmode.org/org.html#Dates-and-Times][docu]]) | :WORKS: |
| clocking time ([[http://orgmode.org/org.html#Clocking-Work-Time][docu]]) | :PARTLY: |
| images | :PARTLY: |
| Macro replacement | :FAILS: |
#+END:

Please note that there is a *much* better syntax overview and compatibility list on [[https://gitlab.com/publicvoit/orgdown/-/blob/master/doc/Tool-Support.org][the Orgdown project page]].

* Featuretest
:PROPERTIES:
:ID: Featuretest
:END:
** Text formatting :WORKS:

- *bold*
- /italic/
- _underline_
- +strike through+
- =code=
- ~commands~
- http://orgmode.org

: small example

** Text formatting within other syntax elements :WORKS:
:PROPERTIES:
:CREATED: [2020-12-21 Mon 12:13]
:END:

Within links:

[[http://orgmode.org][This *is* an /example/ of _some_ syntax +highlighting+ within =links= and ~such~.]]

[[https://gnu.org][~gnu~]]

Table:

| Example |
|-----------------------------------------------------------------------------------|
| http://orgmode.org |
| [[http://orgmode.org][Org mode]] |
| This *is* an /example/ of _some_ syntax +highlighting+ within =links= and ~such~. |

Lists:

- Example
- This *is* an /example/ of _some_ syntax +highlighting+ within =links= and ~such~.

Headings:

*** This *is* an /example/ of _some_ syntax +highlighting+ within =links= and ~such~.

** Lists :PARTLY:

- MISSING:
- Checkbox rendering/alignment
- Reusing same enumerate bullet symbols (dash, numbers, ...)

simple list:
- Org mode
- Lists
- [ ] unchecked checkbox
- [X] checked checkbox
- [-] undecided checkbox (=C-u C-u C-c C-c=)

enumerate:
1. Emacs
2. Org-mode
3. Lists

mixed with checkboxes:

- Clean out garage
1. [ ] get stuff out
- [ ] be careful with that axe, Eugene
2. [X] get rid of old stuff
- using eBay?
- try to use rubbish as birthday presents for family
3. [ ] repaint garage
4. [X] put stuff back in

** Headings with TODO items :FAILS:

- MISSING
- display of TODO keywords

*** TODO Clean out garage [0/4]

**** TODO get stuff out

- be careful with that axe, Eugene

**** TODO get rid of old stuff

- using eBay?
- try to use rubbish as birthday presents for family

**** TODO repaint garage

**** TODO put stuff back in

** Drawers :FAILS:

- MISSING:
- rendering of drawers

*** NEXT Test with category property :mytag:
:PROPERTIES:
:CATEGORY: mycategory
:END:

** blocks ([[http://orgmode.org/org.html#Blocks][docu]]) :PARTLY:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:18]
:END:

- including babel ([[http://orgmode.org/org.html#Library-of-Babel][docu]])

*** EXAMPLE block :WORKS:

#+BEGIN_EXAMPLE
An example in an EXAMPLE block.
Second line within this block.

This *is* an /example/ of _some_ syntax +highlighting+ within =links= and ~such~.
#+END_EXAMPLE

*** QUOTE block :WORKS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:51]
:END:

Will be wrapped:

#+BEGIN_QUOTE
An example in an QUOTE block.
Second line within this block.

This *is* an /example/ of _some_ syntax +highlighting+ within =links= and ~such~.
#+END_QUOTE

*** VERSE block :FAILS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:52]
:END:

- MISSING:
- rendering of the block

#+BEGIN_VERSE
An example in an VERSE block.
Second line within this block.

This *is* an /example/ of _some_ syntax +highlighting+ within =links= and ~such~.
#+END_VERSE

*** SRC block :WORKS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:52]
:END:

**** python :WORKS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 12:02]
:END:

#+BEGIN_SRC python
def my_test(myvar: str = 'foo bar'):
"""
This is an example function.

@type myvar: str = 'foo bar': number
@param myvar: str = 'foo bar': FIXXME
"""

mynewvar: str = myvar + ' additional content'
return mynewvar

print("Hello " + my_text('Europe!'))
#+END_SRC

#+BEGIN_SRC emacs-lisp
(message (concat "Hello" "Europe!")) ;; inline comment
#+END_SRC

- some examples are taken from [[http://orgmode.org/worg/org-contrib/babel/intro.html][Worg: Introduction to Babel]]

**** shell :WORKS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:59]
:END:

#+BEGIN_SRC sh
echo "Hello Europe!"
FOO="foo bar"
echo "A test with ${FOO}"
pwd
#+END_SRC

**** ruby :WORKS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:59]
:END:

#+begin_src ruby
require 'date'
"This file was last evaluated on #{Date.today}"
#+end_src

**** ditaa :WORKS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:59]
:END:

#+begin_src ditaa :file blue.png :cmdline -r
+---------+
| cBLU |
| |
| +----+
| |cPNK|
| | |
+----+----+
#+end_src

**** session with shell and R :WORKS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:59]
:END:

#+name: directories
#+begin_src sh :results replace
cd ~/archive/events_memories && du -sc * |grep -v total
#+end_src

Using result set "directories" from above as "dirs" in R below:

#+name: directory-pie-chart(dirs = directories)
#+begin_src R :session R-pie-example :file ./dirs.png
pie(dirs[,1], labels = dirs[,2])
#+end_src

*** QUOTE block :WORKS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:52]
:END:

Will be wrapped:

#+BEGIN_QUOTE
An example in an QUOTE block.
Second line within this block.

This *is* an /example/ of _some_ syntax +highlighting+ within =links= and ~such~.
#+END_QUOTE

*** HTML block :FAILS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:52]
:END:

#+BEGIN_HTML
This is strong.
This is emphasized.
Heres is a web reference: link

#+END_HTML

*** LATEX block ([[http://orgmode.org/org.html#Embedded-LaTeX][docu]]) :FAILS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:53]
:END:

- MISSING:
- rendering of the block
- some special characters

- Greek characters
- Working outside of block: \alpha \beta \phi
- not working: \LaTeX{} $\varphi$

#+BEGIN_LATEX
\section{Section Title}

This is \emph{emphasized} and $y=x^2$ is an equation.

An example in an LATEX block.
Another line within this block.

\alpha $x=42y$

Greek characters \alpha \beta \phi \LaTeX{} $\varphi$
#+END_LATEX

*** NOTES block :FAILS:
:PROPERTIES:
:CREATED: [2020-10-15 Thu 11:53]
:END:

- MISSING:
- rendering of the block

Notes blocks are *not standard Org mode*. However, =org-reveal= is using
it for handout notes so I would like to include it here.

#+BEGIN_NOTES
An example in an NOTES block.
Second line within this block.

This *is* an /example/ of _some_ syntax +highlighting+ within =links= and ~such~.
#+END_NOTES

** comments ([[http://orgmode.org/manual/Comment-Lines.html][docu]]) :WORKS:

Comment lines:

space hash space:

# This is a comment

space space hash space:

# This is a comment

-----------

Comment block:

#+BEGIN_COMMENT
This is a multi line comment block.
This is the second line.

This is the second paragraph.

This *is* an /example/ of _some_ syntax +highlighting+ within =links= and ~such~.
#+END_COMMENT

** Noexport tag of heading :WORKS:noexport:

The document needs to explicitly set the tag used for no export, as is done at
the top of this document (it's set to ~noexport~).

Tagging a heading with the tag hides the section when opening the on the site.

This whole heading is omitted from being rendered on GitHub.

** links [[http://orgmode.org/org.html#Hyperlinks][(docu)]] :PARTLY:

- MISSING:
- =<>=
- following =id:= links
- custom links
- without your Emacs config, those links are impossible to follow
- rendering somehow would be fine
- footnotes

todo: target
: # <>

- file:test.org without brackets
- [[file:test.org]] with double brackets
- http://orgmode.org → plain URL without brackets
- [[http://orgmode.org]] → URL with brackets without description
- [[http://orgmode.org][Org mode homepage]] → URL with brackets with description

- id:myexampleid → an id-link
- custom links: [[contact:John%20Smith][contact:John Smith]]
- [[http://orgmode.org/org.html#Link-Abbreviations][docu: link abbrevations]]

- footnotes ([[http://orgmode.org/org.html#Creating-Footnotes][docu]])
- plain [fn::great content here]
- with own label [fn:mylabel:great content here]
- reference [fn:myotherlabel] [fn:2]

[fn:myotherlabel] This is a footnote from reference above.
[fn:2] This is a footnote with a simple number as label.

Footnotes aren't working

*** heading with PROPERTIES drawer containing ID
:PROPERTIES:
:ID: myexampleid
:END:
Should have =#myexampleid= anchor, doesn't work as of =2021-04-11=

*** eading with PROPERTIES drawer containing CUSTOM_ID
:PROPERTIES:
:CUSTOM_ID: myexamplecustomid
:END:
Should have =#myexamplecustomid= anchor, doesn't work as of =2021-04-11=

** states; TODO items ([[http://orgmode.org/org.html#TODO-Items][docu]]) :PARTLY:

- MISSING:
- todo keywords
- dependencies from within drawers

*** making dependencies explicit

**** example with chain siblings

***** NEXT buy bike
:PROPERTIES:
:TRIGGER: chain-siblings(NEXT)
:END:

***** take tour

***** goto hospital

*** priorities ([[http://orgmode.org/org.html#Priorities][docu]])

**** TODO [#A] example
**** NEXT [#B] example

*** breaking down in subtasks ([[http://orgmode.org/org.html#Breaking-Down-Tasks][docu]])

**** TODO example [1/3] [33%]
***** DONE subtask 1
***** TODO subtask 2
***** TODO subtask 3
** tags [[http://orgmode.org/org.html#Tags][(docu)]] :FAILS:

- MISSING:
- rendering tags

*** example :tag:

** tables simple [[http://orgmode.org/org.html#Tables][(docu)]] :PARTLY:

- MISSING:
- number alignment

| *Heading1* | *head2* |
|------------+---------|
| entry | 42 |
| foo | 21.7 |
|------------+---------|
| end | 99.99 |

** tables complex ([[http://orgmode.org/org.html#The-Spreadsheet][docu]], [[http://orgmode.org/worg/org-tutorials/org-spreadsheet-intro.html][tutorial]]) :PARTLY:

- MISSING:
- Tables are concatenated unfortunately and alignment fails.

#+TBLNAME: mydemo-USD-EUR-rate
| *US-Dollar* | *EUR* |
| 1 | 0.76481836 |

| *When* | *What* | *USD* | *EUR* |
|------------+------------------------+-------+-------|
| 2012-02-03 | Taxi Graz-Airport | | 18.00 |
| 2012-02-03 | Taxi Seattle Airport | 25.00 | 19.12 |
| 2012-02-13 | Taxi | 7.00 | 5.35 |
| 2012-02-14 | Taxi | 8.00 | 6.12 |
| 2012-02-17 | Taxi to Airport SeaTac | 35.00 | 26.77 |
| 2012-02-22 | Taxi Airport-Graz | | 16.00 |
|------------+------------------------+-------+-------|
| | | | 91.36 |
#+TBLFM: @>$4=vsum(@I$4..@II$4);%.2f::@3$4=@3$3*remote(mydemo-USD-EUR-rate,@2$2);%.2f::@4$4=@4$3*remote(mydemo-USD-EUR-rate,@2$2);%.2f::@5$4=@5$3*remote(mydemo-USD-EUR-rate,@2$2);%.2f::@6$4=@6$3*remote(mydemo-USD-EUR-rate,@2$2);%.2f

** column view ([[http://orgmode.org/org.html#Column-View][docu]]) :FAILS:
:PROPERTIES:
:COLUMNS: %25ITEM %TAGS %PRIORITY %TODO %10MyProperties
:MyProperties_ALL: "Thomas" "Maria" "Susan" "Joe"
:END:

- MISSING:
- no support for those things

*** example sub-item :mytag1:
:PROPERTIES:
:MyProperties: Susan
:END:

*** NEXT [#B] another example :mytag2:
:PROPERTIES:
:MyProperties: Thomas
:END:

** dates & time ([[http://orgmode.org/org.html#Dates-and-Times][docu]]) :WORKS:

- ~C-c .~ *insert active* <2012-04-23 Mon> (with ~C-u~: <2012-04-23 Mon 19:14>)
- ~C-c !~ insert inactive [2012-04-23 Mon] (with ~C-u~: [2012-04-23 Mon 19:14])

** clocking time ([[http://orgmode.org/org.html#Clocking-Work-Time][docu]]) :PARTLY:

- MISSING:
- drawer information

*** example sub-hierarchy with report

#+BEGIN: clocktable :maxlevel 2 :scope subtree
Clock summary at [2012-11-19 Mon 11:17]

| Headline | Time |
|--------------+---------|
| *Total time* | *27:16* |
|--------------+---------|
#+END:

**** example item
:LOGBOOK:
CLOCK: [2012-11-19 Mon 11:16]--[2012-11-19 Mon 11:17] => 0:01
CLOCK: [2012-11-18 Sun 19:15]--[2012-11-18 Sun 19:23] => 0:08
:END:

**** another item
:LOGBOOK:
CLOCK: [2012-11-18 Sun 19:26]--[2012-11-18 Sun 19:33] => 0:07
CLOCK: [2012-11-17 Sat 16:25]--[2012-11-18 Sun 19:25] => 27:00
:END:

** images :PARTLY:
:PROPERTIES:
:CREATED: [2023-12-16 Sat 23:31]
:END:

Embedding image using HTML block:

#+BEGIN_HTML



#+END_HTML

Embedding image using =file= link:

[[file:Orgdown logo - 64x64 white background.png]]

** Macro replacement
:PROPERTIES:
:CREATED: [2024-11-21 Thu 17:31]
:END:

- [[https://orgmode.org/org.html#Macro-Replacement][Documentation in the Org-mode manual]]

#+MACRO: poem Rose is $1, violet's $2. Life's ordered: Org assists you.
{{{poem(red,blue)}}}

* Parsers

Parsers for Org mode can be found on https://orgmode.org/worg/org-tools/index.html
* MISC Ad-Hoc Testing

This sub-hierarchy is here to test specific stuff.

*You can ignore everything starting from here.*

** Headings

** heading with properties
:PROPERTIES:
:CREATED: <2011-10-09 Sun 15:16>
:END:

** tables

| *head1* | *head2* | *head3* |
|-----------------------+---------+---------|
| text | 42 | ----- |
| [email protected] | 23 | :-) |
|-----------------------+---------+---------|
| | 65 | |
#+TBLFM: @>$2 = vsum(@I$2..@II$2)

** links

- direct URL: http://tagstore.org
- [[http://tagstore.org][indirect URL]]
- direct email: [email protected]
- [[[email protected]][indirect email]]
- [[file:README.org][file link]]
should link to README.org
- [[#links][file + heading link]]
should link to #links in the same file (but the link is recognized in Emacs). If the heading is multiple words, attach them with '-'.

** examples

verse:
#+begin_verse
This is an example.
Second line.
Very long line with many characters showing the wordwrap feature or the not existing word wrap feature
#+end_verse

quote:
#+begin_quote
This is an example.
Second line.
Very long line with many characters showing the wordwrap feature or the not existing word wrap feature
#+end_quote

only colon:
: This is an example.
: Second line.
: Very long line with many characters showing the wordwrap feature or the not existing word wrap feature

non-specific source:
#+begin_src
This is an example.
Second line.
Very long line with many characters showing the wordwrap feature or the not existing word wrap feature
#+end_src

python source:
#+begin_src python
if VALUE and dummy < 42:
execute_something("Dummy text", 23)
#+end_src

** Underscores_like_this

- me_low
- 2_8
- ~*.org_archive~
- ~*.org\_archive~
- *.org\_archive

** Orgmode examples

Das hier ist eine Erklärung von dem Ganzen:

:conf: ;; this is ELISP code
:conf: (foo (bar))

Und in der Org-mode-Datei wird das dann so angewendet:

:org: :PROPERTIES:
:org: :ID: this-is-an-example
:org: :END: