((p "There are some reasons to mark text that should be rendered as uninterpreted:") (ul (li "Mark text as literal, sometimes as part of a program.") (li "Mark text as input you give into a computer via a keyboard.") (li "Mark text as output from some computer, e.g. shown at the command line.")) (h2 (@ (id . "literal-text")) "Literal text") (p "Literal text somehow relates to " (a (@ (href . "00001007030500")) "verbatim blocks") ": their content should not be interpreted further, but may be rendered special." " " "It is specified by two grave accent characters (" (@L (@H "“") (kbd "`") (@H "”")) ", U+0060), followed by the text, followed by again two grave accent characters, optionally followed by an " (a (@ (href . "00001007050000")) "attribute") " specification." " " "Similar to the verbatim block, the literal element allows also a modifier letter grave accent (" (@L (@H "“") (kbd "ˋ") (@H "”")) ", U+02CB) as an alternative to the grave accent character" (sup (@ (id . "fnref:1")) (a (@ (class . "zs-noteref") (href . "#fn:1") (role . "doc-noteref")) "1")) "." " " "However, all four characters must be the same.") (p "The literal element supports the default attribute: when given, all spaces in the text are rendered in HTML as open box characters (U+2423)." " " "The use of a generic attribute allows to specify a (" (a (@ (href . "00001007050200")) "programming") ") language that controls syntax coloring when rendered in HTML.") (p "If you want to specify a grave accent character in the text, either use modifier grave accent characters as delimiters for the element, or put a backslash character before the grave accent character you want to use inside the element." " " "If you want to enter a backslash character, you need to enter two of these.") (p "Examples:") (ul (li (code "``abc def``") " is rendered in HTML as " (span (@ (class . "example")) (code "abc def")) ".") (li (code "``abc def``{-}") " is rendered in HTML as " (span (@ (class . "example")) (code "abc␣def")) ".") (li (code "``abc\\`def``") " is rendered in HTML as " (span (@ (class . "example")) (code "abc`def")) ".") (li (code "``abc\\\\def``") " is rendered in HTML as " (span (@ (class . "example")) (code "abc\\def")) ".")) (h2 (@ (id . "computer-input")) "Computer input") (p "To mark text as input into a computer program, delimit your text with two apostrophe characters (" (@L (@H "“") (kbd "'") (@H "”")) ", U+0027) on each side.") (p "Example:") (ul (li (code "''STRG-C''") " renders in HTML as " (span (@ (class . "example")) (kbd "STRG-C")) ".") (li (code "''STRG C''{-}") " renders in HTML as " (span (@ (class . "example")) (kbd "STRG␣C")) ".")) (p "Attributes can be specified, the default attribute has the same semantic as for literal text.") (h2 (@ (id . "computer-output")) "Computer output") (p "To mark text as output from a computer program, delimit your text with two equal sign characters (" (@L (@H "“") (kbd "=") (@H "”")) ", U+003D) on each side.") (p "Examples:") (ul (li (code "==The result is: 42==") " renders in HTML as " (span (@ (class . "example")) (samp "The result is: 42")) ".") (li (code "==The result is: 42=={-}") " renders in HTML as " (span (@ (class . "example")) (samp "The␣result␣is:␣42")) ".")) (p "Attributes can be specified, the default attribute has the same semantic as for literal text.") (h2 (@ (id . "inline-zettel-snippet")) "Inline-zettel snippet") (p "To specify an inline snippet in a different " (a (@ (href . "00001008000000")) "syntax") ", delimit your text with two at-sign characters (" (@L (@H "“") (kbd "@") (@H "”")) ", U+0040) on each side.") (p "You can add some " (a (@ (href . "00001007050000")) "attributes") " immediate after the two closing at-sign characters to specify the syntax to use." " " "Either use the attribute key " (@L (@H "“") "syntax" (@H "”")) " or use the generic attribute to specify the syntax value." " " "If no value is provided, " (@L (@H "“") (a (@ (href . "00001008000000#text")) "text") (@H "”")) " is assumed.") (p "Examples:") (ul (li (code "A @@-->@@ B") " renders in HTML as " (span (@ (class . "example")) "A " (code (@ (class . "language-text")) "-->") " B") ".") (li (code "@@@@{=html}Small@@@@{=html}") " renders in HTML as " (span (@ (class . "example")) (@H "") "Small" (@H "")) ".")) (p "To some degree, an inline-zettel snippet is the " (@H "") "smaller" (@H "") " sibling of the " (a (@ (href . "00001007031200")) "inline-zettel block") "." " " "For HTML syntax, the same rules apply.") (h2 (@ (id . "math-mode-tex-input")) "Math mode / " (code (@ (class . "zs-math")) "\\TeX") " input") (p "This allows to enter text, that is typically interpreted by " (code (@ (class . "zs-math")) "\\TeX") " or similar software." " " "The main difference to all other literal-like formatting above is that the backslash character (" (@L (@H "“") (kbd "\\") (@H "”")) ", U+005C) has no special meaning." " " "Therefore it is well suited the enter text with a lot of backslash characters.") (p "Math mode text is delimited with two dollar signs (" (@L (@H "“") (kbd "$") (@H "”")) ", U+0024) on each side.") (p "You can add some " (a (@ (href . "00001007050000")) "attributes") " immediate after the two closing at-sign characters to specify the syntax to use." " " "Either use the attribute key " (@L (@H "“") "syntax" (@H "”")) " or use the generic attribute to specify the syntax value." " " "If no syntax value is provided, math mode text roughly corresponds to literal text.") (p "Currently, Zettelstore does not support any syntax." " " "This will probably change." " " "However, external software might support specific syntax value, like " (@L (@H "“") "tex" (@H "”")) ", " (@L (@H "“") "latex" (@H "”")) ", " (@L (@H "“") "mathjax" (@H "”")) ", " (@L (@H "“") "itex" (@H "”")) ", or " (@L (@H "“") "webtex" (@H "”")) "." " " "Even an empty syntax value might be supported.") (p "Example:") (ul (li (code "Happy $$\\TeX$$!") "is rendered as " (span (@ (class . "example")) "Happy " (code (@ (class . "zs-math")) "\\TeX") "!"))))