GUIDE 2 — HEADINGS

home | guide index


6 levels, fixed width

marktxt headings are always ;= followed by exactly 4 characters.
the weight descends by eroding = into - into .


comparison

marktxt

;==== H1 TITLE ;.         4 equals (heaviest)
;===- H2 section ;.       3 equals, 1 dash
;==-- H3 subsection ;.    2 equals, 2 dashes
;=--- H4 detail ;.        1 equal, 3 dashes
;=--. H5 minor ;.         1 equal, 2 dashes, 1 dot
;=-.. H6 smallest ;.      1 equal, 1 dash, 2 dots (lightest)

markdown

# H1 TITLE
## H2 section
### H3 subsection
#### H4 detail
##### H5 minor
###### H6 smallest

html

<h1>H1 TITLE</h1>
<h2>H2 section</h2>
<h3>H3 subsection</h3>
<h4>H4 detail</h4>
<h5>H5 minor</h5>
<h6>H6 smallest</h6>

why it matters

no ambiguity

markdown: # is a heading — but also a comment in bash, python, yaml, etc.
marktxt: ;= is always a heading. nothing else uses ;=

fixed width

every heading operator is exactly 4 characters after ;
the parser reads ;= then exactly 3 chars from = - . — deterministic.

visual weight

you can see the heading level in the source without counting characters:

;==== heavy   (all equals)
;===-
;==--
;=---
;=--.
;=-.. light   (mostly dots)

the visual weight of the operator matches the semantic weight of the heading.


prev: plain text | next: text formatting