<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>matthias.sh</title>
        <link>https://matthias.sh</link>
        <description>matthias.sh</description>
        <generator>Zola</generator>
        <language>en</language>
        <atom:link href="https://matthias.sh/en/rss.xml" rel="self" type="application/rss+xml"/>
        <lastBuildDate>Sun, 26 Jul 2026 00:00:00 +0000</lastBuildDate>
        <item>
            <title>Hummus</title>
            <link>https://matthias.sh/en/hummus/</link>
            <guid isPermaLink="true">https://matthias.sh/en/hummus/</guid>
            <pubDate>Sun, 26 Jul 2026 00:00:00 +0000</pubDate>
            <content:encoded>&lt;blockquote class=&quot;markdown-alert-note&quot;&gt;
&lt;p&gt;This is an automatic translation of the &lt;a href=&quot;https:&#x2F;&#x2F;matthias.sh&#x2F;hummus&#x2F;&quot;&gt;German original&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;My hummus recipe:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;1 jar chickpeas (330 g, drained weight: 220 g), rinsed well under cold water&lt;&#x2F;li&gt;
&lt;li&gt;60 g tahini (about 1 tbsp)&lt;&#x2F;li&gt;
&lt;li&gt;2 g salt&lt;&#x2F;li&gt;
&lt;li&gt;8 g ground cumin (about 1 tbsp)&lt;&#x2F;li&gt;
&lt;li&gt;25 g lemon juice (about 3 tbsp)&lt;&#x2F;li&gt;
&lt;li&gt;125 g cold water&lt;&#x2F;li&gt;
&lt;li&gt;optional: 100 g dates&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Blend everything in a high-performance blender. Then transfer the finished
hummus directly into the rinsed jar of the chickpeas and take it with you.&lt;&#x2F;p&gt;
</content:encoded>
        </item>
        <item>
            <title>Markdown Test</title>
            <link>https://matthias.sh/en/markdown-test/</link>
            <guid isPermaLink="true">https://matthias.sh/en/markdown-test/</guid>
            <pubDate>Sun, 12 Jul 2026 00:00:00 +0000</pubDate>
            <description>A test post that checks whether all Markdown elements render correctly.</description>
            <content:encoded>&lt;blockquote class=&quot;markdown-alert-note&quot;&gt;
&lt;p&gt;This is an automatic translation of the &lt;a href=&quot;https:&#x2F;&#x2F;matthias.sh&#x2F;markdown-test&#x2F;&quot;&gt;German original&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;This post tests the Markdown elements I usually use.&lt;&#x2F;p&gt;
&lt;h1 id=&quot;heading-h1&quot;&gt;Heading H1&lt;&#x2F;h1&gt;
&lt;h2 id=&quot;heading-h2&quot;&gt;Heading H2&lt;&#x2F;h2&gt;
&lt;h3 id=&quot;heading-h3&quot;&gt;Heading H3&lt;&#x2F;h3&gt;
&lt;h4 id=&quot;heading-h4&quot;&gt;Heading H4&lt;&#x2F;h4&gt;
&lt;h5 id=&quot;heading-h5&quot;&gt;Heading H5&lt;&#x2F;h5&gt;
&lt;h6 id=&quot;heading-h6&quot;&gt;Heading H6&lt;&#x2F;h6&gt;
&lt;h2 id=&quot;text-formatting&quot;&gt;Text formatting&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;Bold&lt;&#x2F;strong&gt;, &lt;em&gt;italic&lt;&#x2F;em&gt;, &lt;em&gt;&lt;strong&gt;bold and italic&lt;&#x2F;strong&gt;&lt;&#x2F;em&gt;, &lt;del&gt;strikethrough&lt;&#x2F;del&gt; and
&lt;u&gt;underline&lt;&#x2F;u&gt;. Underline only exists in Markdown as raw HTML.&lt;&#x2F;p&gt;
&lt;p&gt;And &lt;code&gt;inline code&lt;&#x2F;code&gt; in the middle of a sentence.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;lists&quot;&gt;Lists&lt;&#x2F;h2&gt;
&lt;p&gt;Unordered, nested:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;First item&lt;&#x2F;li&gt;
&lt;li&gt;Second item
&lt;ul&gt;
&lt;li&gt;Sub-item&lt;&#x2F;li&gt;
&lt;li&gt;Another sub-item&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;Third item&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Ordered:&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;First&lt;&#x2F;li&gt;
&lt;li&gt;Second&lt;&#x2F;li&gt;
&lt;li&gt;Third&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;p&gt;Task list:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot; checked=&quot;&quot;&#x2F;&gt;
Done&lt;&#x2F;li&gt;
&lt;li&gt;&lt;input disabled=&quot;&quot; type=&quot;checkbox&quot;&#x2F;&gt;
Open&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;quotes&quot;&gt;Quotes&lt;&#x2F;h2&gt;
&lt;blockquote&gt;
&lt;p&gt;A quote spanning several lines
that simply keeps going.&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;p&gt;And a nested quote inside it.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;&#x2F;blockquote&gt;
&lt;h2 id=&quot;links&quot;&gt;Links&lt;&#x2F;h2&gt;
&lt;ul&gt;
&lt;li&gt;Inline: &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;matthiasdotsh&#x2F;matthias.sh&quot;&gt;matthias.sh on GitHub&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;Automatic: &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;matthiasdotsh&#x2F;matthias.sh&quot;&gt;https:&#x2F;&#x2F;github.com&#x2F;matthiasdotsh&#x2F;matthias.sh&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;li&gt;As reference: &lt;a rel=&quot;external&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;matthiasdotsh&#x2F;matthias.sh&quot;&gt;the repository&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;image&quot;&gt;Image&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;img src=&quot;&#x2F;logo.jpeg&quot; alt=&quot;The logo: a penguin with a trombone on a bicycle&quot; &#x2F;&gt;&lt;&#x2F;p&gt;
&lt;h2 id=&quot;table&quot;&gt;Table&lt;&#x2F;h2&gt;
&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;Language&lt;&#x2F;th&gt;&lt;th style=&quot;text-align: center&quot;&gt;Code&lt;&#x2F;th&gt;&lt;th style=&quot;text-align: right&quot;&gt;File extension&lt;&#x2F;th&gt;&lt;&#x2F;tr&gt;&lt;&#x2F;thead&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;German&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;de&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: right&quot;&gt;&lt;code&gt;.md&lt;&#x2F;code&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;tr&gt;&lt;td&gt;English&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: center&quot;&gt;en&lt;&#x2F;td&gt;&lt;td style=&quot;text-align: right&quot;&gt;&lt;code&gt;.en.md&lt;&#x2F;code&gt;&lt;&#x2F;td&gt;&lt;&#x2F;tr&gt;
&lt;&#x2F;tbody&gt;&lt;&#x2F;table&gt;
&lt;h2 id=&quot;code-blocks&quot;&gt;Code blocks&lt;&#x2F;h2&gt;
&lt;p&gt;Nix:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #D8DEE9; background-color: #2E3440;&quot;&gt;&lt;code data-lang=&quot;nix&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #ECEFF4;&quot;&gt;{&lt;&#x2F;span&gt;&lt;span&gt; pkgs&lt;&#x2F;span&gt;&lt;span style=&quot;color: #81A1C1;&quot;&gt;, ...&lt;&#x2F;span&gt;&lt;span style=&quot;color: #ECEFF4;&quot;&gt; }:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #ECEFF4;&quot;&gt;{&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #8FBCBB;&quot;&gt;  environment&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color: #8FBCBB;&quot;&gt;systemPackages&lt;&#x2F;span&gt;&lt;span style=&quot;color: #81A1C1;&quot;&gt; =&lt;&#x2F;span&gt;&lt;span style=&quot;color: #ECEFF4;&quot;&gt; [&lt;&#x2F;span&gt;&lt;span&gt; pkgs&lt;&#x2F;span&gt;&lt;span style=&quot;color: #81A1C1;&quot;&gt;.&lt;&#x2F;span&gt;&lt;span&gt;zola&lt;&#x2F;span&gt;&lt;span style=&quot;color: #ECEFF4;&quot;&gt; ]&lt;&#x2F;span&gt;&lt;span style=&quot;color: #81A1C1;&quot;&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #ECEFF4;&quot;&gt;}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Python:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #D8DEE9; background-color: #2E3440;&quot;&gt;&lt;code data-lang=&quot;python&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #81A1C1;&quot;&gt;def&lt;&#x2F;span&gt;&lt;span style=&quot;color: #88C0D0;&quot;&gt; greet&lt;&#x2F;span&gt;&lt;span style=&quot;color: #ECEFF4;&quot;&gt;(&lt;&#x2F;span&gt;&lt;span&gt;name&lt;&#x2F;span&gt;&lt;span style=&quot;color: #ECEFF4;&quot;&gt;:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #88C0D0;&quot;&gt; str&lt;&#x2F;span&gt;&lt;span style=&quot;color: #ECEFF4;&quot;&gt;) -&amp;gt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #88C0D0;&quot;&gt; str&lt;&#x2F;span&gt;&lt;span style=&quot;color: #ECEFF4;&quot;&gt;:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #81A1C1;&quot;&gt;    return f&lt;&#x2F;span&gt;&lt;span style=&quot;color: #A3BE8C;&quot;&gt;&amp;quot;Hello, &lt;&#x2F;span&gt;&lt;span style=&quot;color: #EBCB8B;&quot;&gt;{&lt;&#x2F;span&gt;&lt;span&gt;name&lt;&#x2F;span&gt;&lt;span style=&quot;color: #EBCB8B;&quot;&gt;}&lt;&#x2F;span&gt;&lt;span style=&quot;color: #A3BE8C;&quot;&gt;!&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Without a language tag (no highlighting):&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #D8DEE9; background-color: #2E3440;&quot;&gt;&lt;code data-lang=&quot;plain&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;plain text without syntax highlighting&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;horizontal-rule&quot;&gt;Horizontal rule&lt;&#x2F;h2&gt;
&lt;hr &#x2F;&gt;
&lt;h2 id=&quot;footnotes&quot;&gt;Footnotes&lt;&#x2F;h2&gt;
&lt;p&gt;A sentence with a footnote.&lt;sup class=&quot;footnote-reference&quot;&gt;&lt;a href=&quot;#1&quot;&gt;1&lt;&#x2F;a&gt;&lt;&#x2F;sup&gt;&lt;&#x2F;p&gt;
&lt;h2 id=&quot;emoji&quot;&gt;Emoji&lt;&#x2F;h2&gt;
&lt;p&gt;Emoji via shortcode: ✨ 🚲 🎺, and directly as Unicode: 🎺🚲&lt;&#x2F;p&gt;
&lt;h2 id=&quot;callout-boxes-github-alerts&quot;&gt;Callout boxes (GitHub alerts)&lt;&#x2F;h2&gt;
&lt;blockquote class=&quot;markdown-alert-note&quot;&gt;
&lt;p&gt;A neutral note.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;blockquote class=&quot;markdown-alert-tip&quot;&gt;
&lt;p&gt;A helpful tip.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;blockquote class=&quot;markdown-alert-warning&quot;&gt;
&lt;p&gt;A warning that should stand out.&lt;&#x2F;p&gt;
&lt;&#x2F;blockquote&gt;
&lt;h2 id=&quot;definition-list&quot;&gt;Definition list&lt;&#x2F;h2&gt;
&lt;dl&gt;
&lt;dt&gt;Zola&lt;&#x2F;dt&gt;
&lt;dd&gt;A static site generator written in Rust.&lt;&#x2F;dd&gt;
&lt;dt&gt;Nix&lt;&#x2F;dt&gt;
&lt;dd&gt;Package manager and language for reproducible builds.&lt;&#x2F;dd&gt;
&lt;&#x2F;dl&gt;
&lt;h2 id=&quot;math&quot;&gt;Math&lt;&#x2F;h2&gt;
&lt;p&gt;&lt;strong&gt;LaTeX syntax&lt;&#x2F;strong&gt; is &lt;em&gt;not&lt;&#x2F;em&gt; rendered by Zola on its own. If I write the formula as
&lt;code&gt;$$a^2 + b^2 = c^2$$&lt;&#x2F;code&gt;, it stays literal:&lt;&#x2F;p&gt;
&lt;p&gt;$$
a^2 + b^2 = c^2
$$&lt;&#x2F;p&gt;
&lt;p&gt;Real math still works without JavaScript, using &lt;strong&gt;MathML&lt;&#x2F;strong&gt;, which browsers render
natively. I generate it once from LaTeX (for example with &lt;code&gt;pandoc&lt;&#x2F;code&gt;) and paste the
&lt;code&gt;&amp;lt;math&amp;gt;&lt;&#x2F;code&gt; markup straight in. The same formula, now rendered:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;math display=&quot;block&quot; xmlns=&quot;http:&#x2F;&#x2F;www.w3.org&#x2F;1998&#x2F;Math&#x2F;MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;msup&gt;&lt;mi&gt;a&lt;&#x2F;mi&gt;&lt;mn&gt;2&lt;&#x2F;mn&gt;&lt;&#x2F;msup&gt;&lt;mo&gt;+&lt;&#x2F;mo&gt;&lt;msup&gt;&lt;mi&gt;b&lt;&#x2F;mi&gt;&lt;mn&gt;2&lt;&#x2F;mn&gt;&lt;&#x2F;msup&gt;&lt;mo&gt;=&lt;&#x2F;mo&gt;&lt;msup&gt;&lt;mi&gt;c&lt;&#x2F;mi&gt;&lt;mn&gt;2&lt;&#x2F;mn&gt;&lt;&#x2F;msup&gt;&lt;&#x2F;mrow&gt;&lt;annotation encoding=&quot;application&#x2F;x-tex&quot;&gt;a^2 + b^2 = c^2&lt;&#x2F;annotation&gt;&lt;&#x2F;semantics&gt;&lt;&#x2F;math&gt;&lt;&#x2F;p&gt;
&lt;p&gt;It works &lt;strong&gt;inline&lt;&#x2F;strong&gt; just as well, for example the Pythagorean
theorem &lt;math display=&quot;inline&quot; xmlns=&quot;http:&#x2F;&#x2F;www.w3.org&#x2F;1998&#x2F;Math&#x2F;MathML&quot;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;msup&gt;&lt;mi&gt;a&lt;&#x2F;mi&gt;&lt;mn&gt;2&lt;&#x2F;mn&gt;&lt;&#x2F;msup&gt;&lt;mo&gt;+&lt;&#x2F;mo&gt;&lt;msup&gt;&lt;mi&gt;b&lt;&#x2F;mi&gt;&lt;mn&gt;2&lt;&#x2F;mn&gt;&lt;&#x2F;msup&gt;&lt;mo&gt;=&lt;&#x2F;mo&gt;&lt;msup&gt;&lt;mi&gt;c&lt;&#x2F;mi&gt;&lt;mn&gt;2&lt;&#x2F;mn&gt;&lt;&#x2F;msup&gt;&lt;&#x2F;mrow&gt;&lt;annotation encoding=&quot;application&#x2F;x-tex&quot;&gt;a^2 + b^2 = c^2&lt;&#x2F;annotation&gt;&lt;&#x2F;semantics&gt;&lt;&#x2F;math&gt;
with no line break.&lt;&#x2F;p&gt;
&lt;p&gt;It needs no JavaScript and no external requests, so it fits the rest of the site.
The trade-off is a longer source, since the generated &lt;code&gt;&amp;lt;math&amp;gt;&lt;&#x2F;code&gt; markup lives in the
post instead of a plain &lt;code&gt;$…$&lt;&#x2F;code&gt;.&lt;&#x2F;p&gt;
&lt;div class=&quot;footnote-definition&quot; id=&quot;1&quot;&gt;&lt;sup class=&quot;footnote-definition-label&quot;&gt;1&lt;&#x2F;sup&gt;
&lt;p&gt;And here is the footnote text.&lt;&#x2F;p&gt;
&lt;&#x2F;div&gt;
</content:encoded>
        </item>
        <item>
            <title>Hello World</title>
            <link>https://matthias.sh/en/hallo-welt/</link>
            <guid isPermaLink="true">https://matthias.sh/en/hallo-welt/</guid>
            <pubDate>Sat, 11 Jul 2026 00:00:00 +0000</pubDate>
            <content:encoded>&lt;p&gt;Hello World&lt;&#x2F;p&gt;
</content:encoded>
        </item>
    </channel>
</rss>
