user:~$ tree -sD updates/
updates/ 1 file
.
└── 2026-10-18 mdcat-showcase.md2713signedc104f51a
[..]
user:~$ mdcat updates/mdcat-showcase.md
updates/mdcat-showcase.md markdown · 353 words

mdcat and its syntax

posted 2026-09-16updated 2026-10-182 min readthe birth of mdcat, and a tour of everything it can render

        /l、      MEOW!
       (゚、 。 7  /
         l、゙~ヽ
         じしf_,)ノ

# Overview

So I guess I've decided on a name for my zola theme. It's going to be called mdcat, and I think the reasoning behind the name should be pretty self-explanatory, haha.

Anyway, I'd say I'm around 80% finished with the syntax. I should also mention that building this website is actually a small part of a larger project which I'm working on. I hope to share more about it in the future, but for now I hope that you enjoy my showcase below:


# Markdown syntax

## Text

Emphasis leans, strong text stands out, inline code borders, and struck text fades. Where markdown has no syntax, HTML fills in: highlighted text, keys like Ctrl+C, H2O and 210.

A footnote sits at the end of a sentence[1], and a line that ends in a backslash
breaks without starting a new paragraph. Links stay inside the site, like the updates directory.

## Headings

Headings keep their marks, and the marks are the anchor links. This one has a custom anchor, #custom, set in the source.

## Lists

  • a bullet
    • nested one level
  • another bullet
  1. first
  2. second
  • done: struck and dimmed
  • still to do
[raw]
a definition list: term above, definition below
[sig]
the detached signature, on a page that has one

## Code

#!/bin/sh
# check a page before trusting it
gpg --verify updates/mail-server.txt || exit 1
echo "signature good"

The frame shows the file name and language; linenos numbers the lines and hl_lines marks one. Without a language it is only a frame:

$ mdcat updates/mdcat-showcase.md

## Blocks

A quote holds code, emphasis and paragraphs.

Quotes nest.

An alert is a quote with a tag. TIP, IMPORTANT, WARNING and CAUTION work the same way.

Folded callout

This one starts closed. Only the [+] opens it.

elementsourcerendered as
heading## Titlewhite, marks kept
calloutnote componentlabelled frame
alert> [!NOTE]quote, tag kept
  1. Footnotes gather here, dimmed, with a link back to where they came from. ↩

[..] [raw] [sig] [top]
user:~$