utf8_runtime.ebnf (457B)
1 %lex :utf8 { 2 %skip WS = (" " | "\u000A" | "\u2028") (" " | "\u000A" | "\u2028")*; 3 4 EMOJI = "\U0001F642"; 5 HEX_E9 = "\xE9"; 6 GREEK = [\p{L}&&\p{Script_Extensions=Greek}]; 7 LATIN = [\p{L}--\p{Script_Extensions=Greek}]; 8 MARK = [\p{XID_Continue}--\p{XID_Start}]; 9 RANGE = [\u{80}-\U0010FFFF]; 10 NONASCII_PAIR = [^\p{ASCII}] "\u0301"; 11 IDENT = \p{XID_Start} \p{XID_Continue}*; 12 } 13 14 start = IDENT EMOJI GREEK HEX_E9 MARK RANGE LATIN NONASCII_PAIR IDENT;