|
|
||
|---|---|---|
| src | ||
| .build.yml | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| LICENSE.md | ||
| README.gmi | ||
| README.md | ||
README.md
md2gemtext
for converting Markdown into gemtext.
standalone usage
cargo install md2gemtext
md2gemtext /path/to/some/file.md /path/to/some/file.gmi
library usage
let gemtext = md2gemtext::convert("some markdown")?;
translation rules
- "thematic breaks" (hr tags) are translated to
-----on a line by itself - headings turn into headings, levels beyond 3 get capped at 3
- code blocks get turned into code blocks (info strings are discarded)
- something happens to HTML, i forget what
- paragraphs get empty lines between them, because i think that looks better
- block quotes get turned into quotes (multi-paragraph contiguous block quotes break though)
- lists get turned into lists ("loose lists" probably misbehave, nested lists definitely misbehave, numbering is not preserved)
`markdown code spans`retain their backticks_italics_are surrounded by single underscores**bold**is surrounded by double asterisksa [link](a://url) with contextturns intoa link with contextfollowed by=> a://url linkan  imageturns intoan [image: inline] imagefollowed by=> a://url [image: inline]- if a link or image is its own paragraph, it becomes just the gemtext link, to not be redundant