@@ -906,16 +906,28 @@ backslash = %x5C ; U+005C REVERSE SOLIDUS "\"
906
906
### Whitespace
907
907
908
908
** _ <dfn >Whitespace</dfn >_ ** is defined as one or more of
909
- U+0009 CHARACTER TABULATION (tab),
910
- U+000A LINE FEED (new line),
911
- U+000D CARRIAGE RETURN,
912
- U+3000 IDEOGRAPHIC SPACE,
913
- or U+0020 SPACE.
909
+ ` U+0009 CHARACTER TABULATION ` (tab),
910
+ ` U+000A LINE FEED ` (new line),
911
+ ` U+000D CARRIAGE RETURN ` ,
912
+ ` U+3000 IDEOGRAPHIC SPACE ` ,
913
+ or ` U+0020 SPACE ` ,
914
+ optionally prepended with ` U+200E LEFT-TO-RIGHT MARK ` .
914
915
915
916
Inside _ patterns_ and _ quoted literals_ ,
916
917
whitespace is part of the content and is recorded and stored verbatim.
917
918
Whitespace is not significant outside translatable text, except where required by the syntax.
918
919
920
+ The character ` U+200E LEFT-TO-RIGHT MARK ` (LRM) MAY be prepended to _ whitespace_ outside
921
+ _ patterns_ and _ quoted literals_ to assist with presentation to users.
922
+ Tools SHOULD generate these LRM characters following _ identifiers_ , _ unquoted literals_ , or
923
+ _ option_ values that use right-to-left characters so that the _ message_ displays
924
+ intelligibly in a left-to-right context.
925
+
926
+ This definition of _ whitespace_ implements
927
+ [ UTR #31 Rule 3a-2] ( https://www.unicode.org/reports/tr31/#R3a-2 ) .
928
+ It is a profile of R3a-1 in that specification because only the
929
+ whitespace characters listed are permitted as whitespace.
930
+
919
931
> [ !NOTE]
920
932
> The character U+3000 IDEOGRAPHIC SPACE is included in whitespace for
921
933
> compatibility with certain East Asian keyboards and input methods,
0 commit comments