HTML export to Textpod

· back

On <2026-04-27 Mon> I'm once again fascinated how bad Markdown is and how broken the export is. So for Textpod I decided to skip Markdown, and export notes directly from Org to HTML.

Problem

Markdown can't handle lists properly.

This Org Mode block:

- github :: [[https://github.com/inanimate-tech/mist][inanimate-tech/mist]]
- posts ::
  - [[https://interconnected.org/home/2026/02/12/mist][mist: Share and edit Markdown together, quickly (Interconnected)]]
  - [[https://interconnected.org/home/2026/04/10/open-mist][mist is now open source and looking for interop (Interconnected)]]

: curl https://mist.inanimate.tech/new -T file.md

is exported as this Markdown block:

-   **github:** [inanimate-tech/mist](https://github.com/inanimate-tech/mist)
-   **posts:** -   [mist: Share and edit Markdown together, quickly (Interconnected)](https://interconnected.org/home/2026/02/12/mist)
    -   [mist is now open source and looking for interop (Interconnected)](https://interconnected.org/home/2026/04/10/open-mist)

    curl https://mist.inanimate.tech/new -T file.md

which is then converted to this HTML block:



The list was rendered completely wrong.

When exporting from Org directly to HTML, it's correct - dl/dt/dd tags are used, comment rendered as verbatim text:


github
inanimate-tech/mist
posts
curl https://mist.inanimate.tech/new -T file.md

Solution

Luckily, the change in texptpod.el is this:

-   (org-export-string-as org-text 'md t)
+   (org-export-string-as org-text 'html t)

I also changed backend to preprocess internal links, they look like this:

../markdown.md // for Markdown export
../markdown.html#5B98C220-A8F4-4202-9708-82B0D000A4E9 // for HTML export

Preprocessing changes both to ?q=markdown., so search starts to /markdown. which matches both md and html extensions.