-replacement_field ::= "{" [arg_id] [":" ([format_spec](#format-spec) | [chrono_format_spec](#chrono-format-spec))] "}"
+
+replacement_field ::= "{" [arg_id] [":" (format_spec | chrono_format_spec)] "}"
arg_id ::= integer | identifier
integer ::= digit+
digit ::= "0"..."9"
identifier ::= id_start id_continue*
id_start ::= "a"..."z" | "A"..."Z" | "_"
id_continue ::= id_start | digit
-
+
In less formal terms, the replacement field can start with an *arg_id* that
specifies the argument whose value is to be formatted and inserted into the
@@ -70,7 +70,7 @@ The general form of a *standard format specifier* is:
-format_spec ::= [[fill]align][sign]["#"]["0"][width]["." precision]["L"][type]
+format_spec ::= [[fill]align]\[sign]["#"]\["0"][width]["." precision]["L"]\[type]
fill ::=
align ::= "<" | ">" | "^"
sign ::= "+" | "-" | " "
@@ -330,7 +330,7 @@ month) are valid only for `std::tm` and time points but not durations.
Format specifications for range types have the following syntax:
-range_format_spec ::= ["n"][range_type][range_underlying_spec]
+range_format_spec ::= ["n"]\[range_type][range_underlying_spec]
The `'n'` option formats the range without the opening and closing