Previously a C++20 requires-clause was only supported on `function`
declarations. However, the C++ standard allows a require-clause on
class/union templates, alias templates, and variable templates, and
also allows a requires clause after each template parameter list, not
just the final one.
This moves the requiresClause to be a property of `ASTTemplateParams`
rather than `ASTDeclaration` to better match the C++ grammar and
allows requires clauses in many places that are supported by C++20 but
were not previously allowed by Sphinx, namely:
- On class templates, alias templates, and variable templates
- After each template parameter list, not just the last one.
- After the template parameter list in template template parameters.
When encoding the id, the requires clause of the last template
parameter list is treated specially in order to preserve compatibility
with existing v4 ids.
We need to make sure the \put command arguments will expand to a
(fractional) number, so \strip@pt is added, and the \dimexpr properly
closed with \relax
In order to fulfill its function, LatinRules.xdy must use single,
non-standard byte characters (neither ASCII, nor multi-byte UTF-8).
To someone encountering the file without knowing its purpose (e.g.
due a post-processing raising a warning for the unrecognized encoding)
this is likely surprising, and may seem like a holdover from a time where
Unicode wasn't as universally supported.
The added comment should make clear that the file must stay as it is,
and in particular that it must not be "standardized" to UTF-8.
- LaTeX: box padding (t,r,b,l), borders (t,r,b,l), shadows (x,y) or radii
- LaTeX: fix#10650 via usage of our own sophisticated \fcolorbox
- LaTeX: user interface via 'sphinxsetup' to enhanced code-blocks frames
- LaTeX: user interface via 'sphinxsetup' to enhanced topic boxes
- LaTeX: CSS-named-alikes 'sphinxsetup' options for code-blocks and
topics
- LaTeX: CSS-named-alikes 'sphinxsetup' keys for warning type notices
(fix#10651)
- LaTeX: documentation of the new CSS-like options
- LaTeX: remove #10619 documentation, as the #10619 added
shadowBorderColor and shadowShadowColor now named respectively:
aside.topic_border-TeXcolor and aside.topic_box-shadow-TeXcolor
- LaTeX: use div.topic option prefix and not aside.topic for CSS-like
options
- LaTeX: keep the implicit legacy padding of warning type boxes as
default behaviour