The macro name and the first argument, and any two consecutive arguments, can be optionally separated by exactly one newline character, e.g.:is equivalent to:which is also equivalent to:This allows to greatly improve the readability of long argument lists by having them one per line.
\H
[2]
{scope}
[Design goals]
\H[2]{scope}[Design goals]
\H[2]{scope}
[Design goals]
There is one exception to this however: inside an insane header, any newline is interpreted as the end of the insane header. This is why the following works as expected:and the
== My header 2 `some code`
{id=asdf}
id
gets assigned to the header rather than the trailing code element.