Other Markup Languages

00001008000000 · Info · (manual) · #manual #zettelstore (all)

Zettelmarkup is not the only markup language you can use to define your content. Zettelstore is quite agnostic with respect to markup languages. Of course, Zettelmarkup plays an important role. However, with the exception of zettel titles, you can use any (markup) language that is supported:

The metadata keysyntax” specifies which markup language / data format should be used. If it is not given, it defaults to plain. The following syntax values are supported:


A Cascading Style Sheet, to be used when rendering a zettel as HTML.


A language to “draw” a graphic by using some simple Unicode characters.

gif; jpeg; jpg; png; webp

The formats for pixel graphics. Typically the data is stored in a separate file and the syntax is given in the meta-file, which has the same name as the zettel identifier and has no file extension.1


Hypertext Markup Language, will not be parsed further. Instead, it is treated as text, but will be encoded differently for HTML format (same for the web user interface).

Since HTML from unknown sources may contain security-related problems, zettel with this syntax are treated as an empty zettel, unless the startup configuration value for insecure-html is set to at least the value “html”.

For security reasons, equivocal elements will not be encoded in the HTML format / web user interface. The < script ...> tag is an example. See security aspects of Markdown for some details.

markdown, md

For those who desperately need Markdown. Since the world of Markdown is so diverse, a CommonMark parser is used. See Use Markdown within Zettelstore.


Only the metadata of a zettel is “parsed”. Useful for displaying the full metadata. The runtime configuration zettel uses this syntax. The zettel content is ignored.


Scalable Vector Graphics.


S-Expressions, as implemented by Sx. Often used to specify templates when rendering a zettel as HTML for the web user interface (with the help of sxhtml]).

text, plain, txt

Plain text that must not be interpreted further.



The actual values are also listed in a zettel named Zettelstore Supported Parser.

If you specify something else, your content will be interpreted as plain text.

  1. Before version 0.2, the meta-file had the file extension .meta ↩︎