Special tags#

All tags may be introduced using the :tag-name: <contents> :: notation. However, some tags admit an alternative notation.

Shorthand#

Some tags allow for shorthand notation. Shorthand notation does not need tag names or Halmoses to modify the contained text, it uses different delimiters instead. For example, the following are two different ways for introducing bold text, one using the standard :span: tag and another using shorthand notation and asterisks *.

:manuscript:
This text is :span: {:strong:} bold ::, as
is *this one*.
::

This text is bold, as is this one.

Similarly, italic text also has a shorthand version using slashes /.

:manuscript:
This text is :span: {:emphas:} italic ::, as
is /this one/.
::

This text is italic, as is this one.

Math tags allow shorthand notation using one dollar sign $ for inline and two $$ for blocks.

:manuscript:

*Inline math.*

Either :math:2 + 2 = 4:: or
$2 + 2 = 4$.

::

Inline math.

Either \(2 + 2 = 4\) or \(2 + 2 = 4\).

:manuscript:

*Math block.*

Either

:mathblock:
2 + 2 = 4
::

or

$$
2 + 2 = 4.
$$

::

Math block.

Either

(1)
$$ 2 + 2 = 4 $$
(1)

or

(2)
$$ 2 + 2 = 4. $$
(2)

Code allows shorthand notation using one backtick ` for inline or three ``` for blocks.

:manuscript:

*Inline code.*

Either :code:var = "value":: or
`var = "value"`.

::

Inline code.

Either var = "value" or var = "value" .

:manuscript:

*Code block.*

Either

:codeblock:
var = "value"
::

or

```
2 + 2 = 4.
```

::

Code block.

Either

var = "value"

or

2 + 2 = 4.

Tip

Either standard or shorthand notation allow meta tags. For example, to assign a label to an inline math region, you may use either :math:{:label:some-lbl} 2+2=4 :: or ${:label:some-lbl} 2+2=4 $.

Tip

The standard notation using colons and Halmos as delimiters is easy to parse by automated tools. The shorthand notation is easy to read by humans.

Stamps#

Some tags deviate from the standard :tag-name: <contents> :: syntax in that they do not allow contents nor need a closing Halmos. These are called stamp tags. One example is the :appendix: tag, whose role is to mark the place in the manuscript where the Appendix starts.

:manuscript:

# First section
::

# Second section
::

:appendix:

# First appendix
::

::

1. First section

2. Second section

A. First appendix

Among other things, the :appendix: stamp restarts the numbering of the following sections and changes it from arabic to roman numerals.

Paragraphs#

Paragraphs of text need no tag. However, if you want to refer to an entire paragraph of text, you need to add a label to you. Labels can only be specified in meta tags, and meta tags can only go immediately after the opening tag of a block or inline. Then how can we label a paragraph of text?

The :paragraph: tag exists for this reason. Similar to the :item: tag, it does not need a closing Halmos. Note that if it us used, then some meta tags must be added.

:manuscript:

:paragraph: {:label:my-para} This is how you refer to a paragraph of text.

And now we refer to the entire previous :ref:my-para,paragraph::.

::

This is how you refer to a paragraph of text.

And now we refer to the entire previous paragraph.