Apply a numbering to a sequence of numbers.
A numbering defines how a sequence of numbers should be displayed as content. It is defined either through a pattern string or an arbitrary function.
A numbering pattern consists of counting symbols, for which the actual number is substituted, their prefixes, and one suffix. The prefixes and the suffix are repeated as-is.
#numbering("1.1)", 1, 2, 3) \ #numbering("1.a.i", 1, 2) \ #numbering("I – 1", 12, 2) \ #numbering( (..nums) => nums .pos() .map(str) .join(".") + ")", 1, 2, 3, )
ParametersParameters are the inputs to a function. They are specified in parentheses after the function name.
Defines how the numbering works.
Counting symbols are
*. They are
replaced by the number in the sequence, in the given case.
* character means that symbols should be used to count, in the
‖. If there are more than six
items, the number is represented using multiple symbols.
Suffixes are all characters after the last counting symbol. They are repeated as-is at the end of any rendered number.
Prefixes are all characters that are neither counting symbols nor suffixes. They are repeated as-is at in front of their rendered equivalent of their counting symbol.
This parameter can also be an arbitrary function that gets each number as
an individual argument. When given a function, the
just forwards the arguments to that function. While this is not
particularly useful in itself, it means that you can just give arbitrary
numberings to the
numbering function without caring whether they are
defined as a pattern or function.
numbersintegerPositionalPositional parameters are specified in order, without names.VariadicVariadic parameters can be specified multiple times.
The numbers to apply the numbering to. Must be positive.
numbering is a pattern and more numbers than counting symbols are
given, the last counting symbol with its prefix is repeated.