Featherdown Cheatsheet

Updated on (created ) — Filed under: Docs Post Resource Software Syntax

This is a concise compilation of all Featherdown operators, here divided into three major types: Mono, Mirror and Minimalist operators.

Labels TEXT, MATH, JS mark some places where it would be unwise to overload the operators, as they already carry meaning per se. Label TBA means an operator is under consideration.

These operators require a single symbol, at specific positions, possibly repeated.

Symbol Name Start of line Inline as prefix Inline surrounding Multiline fencing (3+)
*asterisk-MATH** ** bold-
/slash-LINKS// // italic-
_underscore-LINKS__ __ underline___________ horizontal rule
~tilde--~~ ~~ strikethrough~~~ redacted section TBA
+plus-MATH++ ++ newly added text´+++ newly added section TBA
^circumflex-^ short superscript^^ ^^ long superscript^^^ footnotes section
¨umlaut-¨ short subscript¨¨ ¨¨ long subscript-
@at sign-@ known person@@ , @@ list of known people or @@@ @@@ contact button@@@ announce TBA
´acute--´´ ´´ code snippet´´´ code block
:colon-::: label: : emoji-
|vertical bar| admonition-|| || spoiler||| polycolumn
greater than blockquoteMATH--
#hash sign#, ##ATX heading# input label## , ## input labels### Setex heading (lvl. 1)
=equal-MATH== ==highlight=== Setex heading (lvl. 3)
-minus- unnumbered list itemMATHTEXT--- Setex heading (lvl. 5)

Only an alphanumeric expression (with dash or underscore) can follow an operator used as a prefix. However, a surrounded expression may contain spaces and all other characters, except the operator itself.

Multiline fencing operators require always at least three equal symbols at the beginning of the line, the rest of the line is free and may be used fro options.

The following mirror-operators are often used:

Symbol Operator Effect Rationale
[ ]square brackets (single)linksakin to wikipedia links
[1]square brackets (single, number inside)short footnote linksthe format actually used in academic writing
[[ ]]square brackets (double)keyboard or action shortcut explanationvisually resembles a keyboard key
(( ))parenthesis (double)caption or image sizeessentially a caption is an aside, so parenthesis would be mildly appropriate
{{}}curly brackets (double)writes enclosed expression exactly as typed, i.e. verbatim-

The following operators are, with some exceptions, excluded:

Symbol Operator Reason for exclusion Exceptions
‹ ›lesser-greater (single)compatibility with html tags-
{ }curly brackets (single)compatibility with javascript objects and JSON-
( )parenthesis (single)compatibility with normal textcommon typographical replacements like © (c)
« »guillemets (single)not easily accessible on english keyboardsshorthands/direct function calls (advanced feature)

Minimalist operators require no more characters than the information itself they reference. Convenient!

Example Operator Effect
https://example.comouter link (auto)auto outer link
image.pngimage pathinline image
page.titlepage propertyshorthands
site.namesite propertiesshorthands
1stauto-superscripted correct ordinalordinals
03/06/2023auto-formatted datedates
** 06/09/2023 ** changechangestream (bold date + text)changestream

These can be escaped with the verbatim operator if needed.

The only operators using two distinct unrelated symbols are:

Poly operators are less ergonomic to type and harder to memorise, and thus were avoided as much as possible.

The following symbols were excluded for operators because they already carry sufficient meaning.

Symbol Incompatibility
backslash \JS
question mark ?TEXT
exclamation mark !TEXT, factorial MATH
commas ,TEXT, vectors MATH
full stop .TEXT, decimals MATH, subsetting JS
apostrophes TEXT, strings JS
quotation mark TEXT, strings JS
alphanumerics ABC...89TEXT, symbols MATH
currencies $£€...TEXT
ordinals ºTEXT
semicolon ;TEXT