Markdown
Prettyfi markdown
- glow
- Render markdown on the CLI, with pizzazz! 💅🏻
- Go
- Doesn't handle wide tables well
- mdcat
- Rust
-
1k commits
- Renders images in terminal using resvg
- AUR package
has a lot of KDE dependencies,
so
eget linebender/resvg
is preferred
- AUR package
has a lot of KDE dependencies,
so
- Markdown table support added in v2.4.0
- bat
Collaborative markdown editing
Best workflow for collaborative markdown pages:
- Use Hedgedoc demo, edit online, upload images
- Download markdown file
-
Download and locally reference all images using Markdown articles tool
markdown_tool.py Openappstack\ demoweek\ blogpost.md
Hedgedoc (formerly codiMD / hackMD)
Heddoc cli tool
Usage:
export HEDGEDOC_SERVER='https://demo.hedgedoc.org'
hedgedoc export --md MXlAkGw4RgeCd6hlPWcRIQ /tmp/Openappstack.md
markdown-articles-tool
Parse markdown article, download images and replace image URL's to local paths
markdown_tool.py --images-publicpath '/images' Openappstack.md
Styles
see ~/projects/markup/markdown/syntax.md
as example
Syntax
Code block syntax highlighting
- github-linguist: Supported languages
- highlight.js: Supported languages
- Treesitter supported languages
Show available github-linguist
languages and files extensions:
curl --no-progress-meter \
https://raw.githubusercontent.com/github-linguist/linguist/refs/heads/main/lib/linguist/languages.yml\
| yq 'to_entries | .[] | .key + ": " + (.value.extensions | @csv)'
Markdown server
Madness
- madness - Instant Markdown Server
- madness container image
Start madness serving current directory:
docker run --rm -it -v $PWD:/docs -p 3000:3000 dannyben/madness
or alias
madness
Other tools
- glow: Render markdown on the CLI
- For neovim markdown plugins see neovim markdown plugins
- glow.nvim A (text-based) markdown preview directly in your neovim
- glow-hover Leverage glow to display LSP hover responses.
Collapsilbe section
<details>
<summary>Click me</summary>
### Heading
1. Foo
2. Bar
- Baz
- Qux
### Some Code
```js
function logSomething(something) {
console.log("Something", something);
}
```
</details>