This implements a Markdown / Gemtext suite, testing the entire renderer
at complex Markdown documents, containing the entirety of current
Markdown features accessible with gmnhg. The test suite can be expanded
by adding a pair of .md/.gmi files.
Minor bug fixes in JSON/Org metadata parsing where bugs were detected
with the test suite are also included in this patch.
Fixes#13.
This makes gmnhg parse TOML/YAML/JSON/org-mode front matter in Hugo posts.
This also makes the library no longer render metadata in posts, removing
the API to do so. The metadata parsing code itself moves to
internal/gmnhg.
As the library no longer has a preset to include metadata in rendered
document, md2gmn will from now on silently discard front matter if it
encounters any.
Fixes#28. Unblocks #13.
This implements RSS timeline generation in gmnhg.
RSS is generated both for the whole site, and for the content
directories as an rss.xml file inside these directories.
RSS requires the absolute URI to the article. For this to work,
a geminiBaseURL setting is required to be set in the Hugo
configuration file (config.toml/json/yaml).
RSS template can be ovewritten on the site-wide /
directory-wise basis; see godoc on how to do this.
As there's no discovery method of an RSS timeline in Gemini,
the users are expected to put a link to rss.xml on their site
where necessary.
This adds support for Markdown table rendering with
github.com/olekukonko/tablewriter. Tables are rendered as ASCII text
in a preformatted text block. Cells are hard-aligned with spaces.
tablewriter options are not yet configurable, although they should be.
For now, extra formatting inside tables is omitted.
Fixes#2.
This also introduces a simple program, md2gmn, that is meant for testing
the renderer on Markdown files. Nonetheless, it can be used as
a standalone tool as well.