diff --git a/README.md b/README.md
index 5eeb49629..2156253a6 100644
--- a/README.md
+++ b/README.md
@@ -47,7 +47,7 @@ translators for Pygments lexers and styles.
| I | Idris, Igor, INI, Io, ISCdhcpd
| J | J, Janet, Java, JavaScript, JSON, JSONata, Jsonnet, Julia, Jungle
| K | Kakoune, Kotlin
-| L | Lean4, Lighttpd configuration file, LLVM, lox, Lua
+| L | Lean4, Lighttpd configuration file, LLVM, lox, Lua, Luau
| M | Makefile, Mako, markdown, Markless, Mason, Materialize SQL dialect, Mathematica, Matlab, MCFunction, Meson, Metal, MiniZinc, MLIR, Modelica, Modula-2, Mojo, MonkeyC, MoonScript, MorrowindScript, Myghty, MySQL
| N | NASM, Natural, NDISASM, Newspeak, Nginx configuration file, Nim, Nix, NSIS, Nu
| O | Objective-C, ObjectPascal, OCaml, Octave, Odin, OnesEnterprise, OpenEdge ABL, OpenSCAD, Org Mode
diff --git a/_tools/pygments2chroma_xml.py b/_tools/pygments2chroma_xml.py
index 7d0dcc55d..5ce2f5332 100755
--- a/_tools/pygments2chroma_xml.py
+++ b/_tools/pygments2chroma_xml.py
@@ -54,7 +54,10 @@
'''
-def xml_regex(s):
+def xml_regex(s: str) -> str:
+ # Convert Python-style capture groups to .NET-style capture groups
+ s = s.replace('(?P', '(?')
+
return xml_string(s)
def xml_string(s):
diff --git a/lexers/embedded/json.xml b/lexers/embedded/json.xml
index a34abfa49..5c8d4c465 100644
--- a/lexers/embedded/json.xml
+++ b/lexers/embedded/json.xml
@@ -5,6 +5,7 @@
*.json
*.jsonc
*.avsc
+ .luaurc
application/json
true
true
diff --git a/lexers/embedded/lua.xml b/lexers/embedded/lua.xml
index e3d778f12..903d4581f 100644
--- a/lexers/embedded/lua.xml
+++ b/lexers/embedded/lua.xml
@@ -2,10 +2,8 @@
Lua
lua
- luau
*.lua
*.wlua
- *.luau
text/x-lua
application/x-lua
diff --git a/lexers/embedded/luau.xml b/lexers/embedded/luau.xml
new file mode 100644
index 000000000..79a60949a
--- /dev/null
+++ b/lexers/embedded/luau.xml
@@ -0,0 +1,173 @@
+
+
+ Luau
+ luau
+ *.luau
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/lexers/testdata/luau.actual b/lexers/testdata/luau.actual
new file mode 100644
index 000000000..4d3de6b97
--- /dev/null
+++ b/lexers/testdata/luau.actual
@@ -0,0 +1,9 @@
+-- we can define our own structural data types
+type Point = { x: number, y: number }
+-- and we can annotate variables (and function arguments) with them)
+local p: Point = { x = 1, y = 2 }
+
+print(p.x, p.y)
+
+-- and we can see that accessing an invalid field from a table raises a type error!
+print(p.z)
diff --git a/lexers/testdata/luau.expected b/lexers/testdata/luau.expected
new file mode 100644
index 000000000..24ec146f9
--- /dev/null
+++ b/lexers/testdata/luau.expected
@@ -0,0 +1,68 @@
+[
+ {"type":"CommentSingle","value":"-- we can define our own structural data types"},
+ {"type":"TextWhitespace","value":"\n"},
+ {"type":"KeywordReserved","value":"type"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"NameClass","value":"Point"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Punctuation","value":"="},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Punctuation","value":"{"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"NameClass","value":"x"},
+ {"type":"Punctuation","value":":"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"NameClass","value":"number"},
+ {"type":"Punctuation","value":","},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"NameClass","value":"y"},
+ {"type":"Punctuation","value":":"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"NameClass","value":"number"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Punctuation","value":"}"},
+ {"type":"TextWhitespace","value":"\n"},
+ {"type":"CommentSingle","value":"-- and we can annotate variables (and function arguments) with them)"},
+ {"type":"TextWhitespace","value":"\n"},
+ {"type":"KeywordDeclaration","value":"local"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Name","value":"p"},
+ {"type":"Punctuation","value":":"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"NameClass","value":"Point"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Operator","value":"="},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Punctuation","value":"{"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Name","value":"x"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Operator","value":"="},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"LiteralNumberFloat","value":"1"},
+ {"type":"Punctuation","value":","},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Name","value":"y"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Operator","value":"="},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"LiteralNumberFloat","value":"2"},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Punctuation","value":"}"},
+ {"type":"TextWhitespace","value":"\n\n"},
+ {"type":"NameOther","value":"print"},
+ {"type":"Punctuation","value":"("},
+ {"type":"Name","value":"p.x"},
+ {"type":"Punctuation","value":","},
+ {"type":"TextWhitespace","value":" "},
+ {"type":"Name","value":"p.y"},
+ {"type":"Punctuation","value":")"},
+ {"type":"TextWhitespace","value":"\n\n"},
+ {"type":"CommentSingle","value":"-- and we can see that accessing an invalid field from a table raises a type error!"},
+ {"type":"TextWhitespace","value":"\n"},
+ {"type":"NameOther","value":"print"},
+ {"type":"Punctuation","value":"("},
+ {"type":"Name","value":"p.z"},
+ {"type":"Punctuation","value":")"},
+ {"type":"TextWhitespace","value":"\n"}
+]
diff --git a/tokentype_enumer.go b/tokentype_enumer.go
index c3b15f03c..e40386aa8 100644
--- a/tokentype_enumer.go
+++ b/tokentype_enumer.go
@@ -7,8 +7,8 @@ import (
"strings"
)
-const _TokenTypeName = "IgnoreNoneOtherErrorCodeLineLineLinkLineTableTDLineTableLineHighlightLineNumbersTableLineNumbersLinePreWrapperBackgroundEOFTypeKeywordKeywordConstantKeywordDeclarationKeywordNamespaceKeywordPseudoKeywordReservedKeywordTypeNameNameAttributeNameClassNameConstantNameDecoratorNameEntityNameExceptionNameKeywordNameLabelNameNamespaceNameOperatorNameOtherNamePseudoNamePropertyNameTagNameBuiltinNameBuiltinPseudoNameVariableNameVariableAnonymousNameVariableClassNameVariableGlobalNameVariableInstanceNameVariableMagicNameFunctionNameFunctionMagicLiteralLiteralDateLiteralOtherLiteralStringLiteralStringAffixLiteralStringAtomLiteralStringBacktickLiteralStringBooleanLiteralStringCharLiteralStringDelimiterLiteralStringDocLiteralStringDoubleLiteralStringEscapeLiteralStringHeredocLiteralStringInterpolLiteralStringNameLiteralStringOtherLiteralStringRegexLiteralStringSingleLiteralStringSymbolLiteralNumberLiteralNumberBinLiteralNumberFloatLiteralNumberHexLiteralNumberIntegerLiteralNumberIntegerLongLiteralNumberOctLiteralNumberByteOperatorOperatorWordPunctuationCommentCommentHashbangCommentMultilineCommentSingleCommentSpecialCommentPreprocCommentPreprocFileGenericGenericDeletedGenericEmphGenericErrorGenericHeadingGenericInsertedGenericOutputGenericPromptGenericStrongGenericSubheadingGenericTracebackGenericUnderlineTextTextWhitespaceTextSymbolTextPunctuation"
-const _TokenTypeLowerName = "ignorenoneothererrorcodelinelinelinklinetabletdlinetablelinehighlightlinenumberstablelinenumberslineprewrapperbackgroundeoftypekeywordkeywordconstantkeyworddeclarationkeywordnamespacekeywordpseudokeywordreservedkeywordtypenamenameattributenameclassnameconstantnamedecoratornameentitynameexceptionnamekeywordnamelabelnamenamespacenameoperatornameothernamepseudonamepropertynametagnamebuiltinnamebuiltinpseudonamevariablenamevariableanonymousnamevariableclassnamevariableglobalnamevariableinstancenamevariablemagicnamefunctionnamefunctionmagicliteralliteraldateliteralotherliteralstringliteralstringaffixliteralstringatomliteralstringbacktickliteralstringbooleanliteralstringcharliteralstringdelimiterliteralstringdocliteralstringdoubleliteralstringescapeliteralstringheredocliteralstringinterpolliteralstringnameliteralstringotherliteralstringregexliteralstringsingleliteralstringsymbolliteralnumberliteralnumberbinliteralnumberfloatliteralnumberhexliteralnumberintegerliteralnumberintegerlongliteralnumberoctliteralnumberbyteoperatoroperatorwordpunctuationcommentcommenthashbangcommentmultilinecommentsinglecommentspecialcommentpreproccommentpreprocfilegenericgenericdeletedgenericemphgenericerrorgenericheadinggenericinsertedgenericoutputgenericpromptgenericstronggenericsubheadinggenerictracebackgenericunderlinetexttextwhitespacetextsymboltextpunctuation"
+const _TokenTypeName = "IgnoreNoneOtherErrorCodeLineLineLinkLineTableTDLineTableLineHighlightLineNumbersTableLineNumbersLinePreWrapperBackgroundEOFTypeKeywordKeywordConstantKeywordDeclarationKeywordNamespaceKeywordPseudoKeywordReservedKeywordTypeNameNameAttributeNameClassNameConstantNameDecoratorNameEntityNameExceptionNameKeywordNameLabelNameNamespaceNameOperatorNameOtherNamePseudoNamePropertyNameTagNameBuiltinNameBuiltinPseudoNameVariableNameVariableAnonymousNameVariableClassNameVariableGlobalNameVariableInstanceNameVariableMagicNameFunctionNameFunctionMagicLiteralLiteralDateLiteralOtherLiteralStringLiteralStringAffixLiteralStringAtomLiteralStringBacktickLiteralStringBooleanLiteralStringCharLiteralStringDelimiterLiteralStringDocLiteralStringDoubleLiteralStringEscapeLiteralStringHeredocLiteralStringInterpolLiteralStringNameLiteralStringOtherLiteralStringRegexLiteralStringSingleLiteralStringSymbolLiteralNumberLiteralNumberBinLiteralNumberFloatLiteralNumberHexLiteralNumberIntegerLiteralNumberIntegerLongLiteralNumberOctLiteralNumberByteOperatorOperatorWordOperatorReservedPunctuationCommentCommentHashbangCommentMultilineCommentSingleCommentSpecialCommentPreprocCommentPreprocFileGenericGenericDeletedGenericEmphGenericErrorGenericHeadingGenericInsertedGenericOutputGenericPromptGenericStrongGenericSubheadingGenericTracebackGenericUnderlineTextTextWhitespaceTextSymbolTextPunctuation"
+const _TokenTypeLowerName = "ignorenoneothererrorcodelinelinelinklinetabletdlinetablelinehighlightlinenumberstablelinenumberslineprewrapperbackgroundeoftypekeywordkeywordconstantkeyworddeclarationkeywordnamespacekeywordpseudokeywordreservedkeywordtypenamenameattributenameclassnameconstantnamedecoratornameentitynameexceptionnamekeywordnamelabelnamenamespacenameoperatornameothernamepseudonamepropertynametagnamebuiltinnamebuiltinpseudonamevariablenamevariableanonymousnamevariableclassnamevariableglobalnamevariableinstancenamevariablemagicnamefunctionnamefunctionmagicliteralliteraldateliteralotherliteralstringliteralstringaffixliteralstringatomliteralstringbacktickliteralstringbooleanliteralstringcharliteralstringdelimiterliteralstringdocliteralstringdoubleliteralstringescapeliteralstringheredocliteralstringinterpolliteralstringnameliteralstringotherliteralstringregexliteralstringsingleliteralstringsymbolliteralnumberliteralnumberbinliteralnumberfloatliteralnumberhexliteralnumberintegerliteralnumberintegerlongliteralnumberoctliteralnumberbyteoperatoroperatorwordoperatorreservedpunctuationcommentcommenthashbangcommentmultilinecommentsinglecommentspecialcommentpreproccommentpreprocfilegenericgenericdeletedgenericemphgenericerrorgenericheadinggenericinsertedgenericoutputgenericpromptgenericstronggenericsubheadinggenerictracebackgenericunderlinetexttextwhitespacetextsymboltextpunctuation"
var _TokenTypeMap = map[TokenType]string{
-14: _TokenTypeName[0:6],
@@ -88,30 +88,31 @@ var _TokenTypeMap = map[TokenType]string{
3207: _TokenTypeName[1008:1025],
4000: _TokenTypeName[1025:1033],
4001: _TokenTypeName[1033:1045],
- 5000: _TokenTypeName[1045:1056],
- 6000: _TokenTypeName[1056:1063],
- 6001: _TokenTypeName[1063:1078],
- 6002: _TokenTypeName[1078:1094],
- 6003: _TokenTypeName[1094:1107],
- 6004: _TokenTypeName[1107:1121],
- 6100: _TokenTypeName[1121:1135],
- 6101: _TokenTypeName[1135:1153],
- 7000: _TokenTypeName[1153:1160],
- 7001: _TokenTypeName[1160:1174],
- 7002: _TokenTypeName[1174:1185],
- 7003: _TokenTypeName[1185:1197],
- 7004: _TokenTypeName[1197:1211],
- 7005: _TokenTypeName[1211:1226],
- 7006: _TokenTypeName[1226:1239],
- 7007: _TokenTypeName[1239:1252],
- 7008: _TokenTypeName[1252:1265],
- 7009: _TokenTypeName[1265:1282],
- 7010: _TokenTypeName[1282:1298],
- 7011: _TokenTypeName[1298:1314],
- 8000: _TokenTypeName[1314:1318],
- 8001: _TokenTypeName[1318:1332],
- 8002: _TokenTypeName[1332:1342],
- 8003: _TokenTypeName[1342:1357],
+ 4002: _TokenTypeName[1045:1061],
+ 5000: _TokenTypeName[1061:1072],
+ 6000: _TokenTypeName[1072:1079],
+ 6001: _TokenTypeName[1079:1094],
+ 6002: _TokenTypeName[1094:1110],
+ 6003: _TokenTypeName[1110:1123],
+ 6004: _TokenTypeName[1123:1137],
+ 6100: _TokenTypeName[1137:1151],
+ 6101: _TokenTypeName[1151:1169],
+ 7000: _TokenTypeName[1169:1176],
+ 7001: _TokenTypeName[1176:1190],
+ 7002: _TokenTypeName[1190:1201],
+ 7003: _TokenTypeName[1201:1213],
+ 7004: _TokenTypeName[1213:1227],
+ 7005: _TokenTypeName[1227:1242],
+ 7006: _TokenTypeName[1242:1255],
+ 7007: _TokenTypeName[1255:1268],
+ 7008: _TokenTypeName[1268:1281],
+ 7009: _TokenTypeName[1281:1298],
+ 7010: _TokenTypeName[1298:1314],
+ 7011: _TokenTypeName[1314:1330],
+ 8000: _TokenTypeName[1330:1334],
+ 8001: _TokenTypeName[1334:1348],
+ 8002: _TokenTypeName[1348:1358],
+ 8003: _TokenTypeName[1358:1373],
}
func (i TokenType) String() string {
@@ -202,6 +203,7 @@ func _TokenTypeNoOp() {
_ = x[LiteralNumberByte-(3207)]
_ = x[Operator-(4000)]
_ = x[OperatorWord-(4001)]
+ _ = x[OperatorReserved-(4002)]
_ = x[Punctuation-(5000)]
_ = x[Comment-(6000)]
_ = x[CommentHashbang-(6001)]
@@ -228,7 +230,7 @@ func _TokenTypeNoOp() {
_ = x[TextPunctuation-(8003)]
}
-var _TokenTypeValues = []TokenType{Ignore, None, Other, Error, CodeLine, LineLink, LineTableTD, LineTable, LineHighlight, LineNumbersTable, LineNumbers, Line, PreWrapper, Background, EOFType, Keyword, KeywordConstant, KeywordDeclaration, KeywordNamespace, KeywordPseudo, KeywordReserved, KeywordType, Name, NameAttribute, NameClass, NameConstant, NameDecorator, NameEntity, NameException, NameKeyword, NameLabel, NameNamespace, NameOperator, NameOther, NamePseudo, NameProperty, NameTag, NameBuiltin, NameBuiltinPseudo, NameVariable, NameVariableAnonymous, NameVariableClass, NameVariableGlobal, NameVariableInstance, NameVariableMagic, NameFunction, NameFunctionMagic, Literal, LiteralDate, LiteralOther, LiteralString, LiteralStringAffix, LiteralStringAtom, LiteralStringBacktick, LiteralStringBoolean, LiteralStringChar, LiteralStringDelimiter, LiteralStringDoc, LiteralStringDouble, LiteralStringEscape, LiteralStringHeredoc, LiteralStringInterpol, LiteralStringName, LiteralStringOther, LiteralStringRegex, LiteralStringSingle, LiteralStringSymbol, LiteralNumber, LiteralNumberBin, LiteralNumberFloat, LiteralNumberHex, LiteralNumberInteger, LiteralNumberIntegerLong, LiteralNumberOct, LiteralNumberByte, Operator, OperatorWord, Punctuation, Comment, CommentHashbang, CommentMultiline, CommentSingle, CommentSpecial, CommentPreproc, CommentPreprocFile, Generic, GenericDeleted, GenericEmph, GenericError, GenericHeading, GenericInserted, GenericOutput, GenericPrompt, GenericStrong, GenericSubheading, GenericTraceback, GenericUnderline, Text, TextWhitespace, TextSymbol, TextPunctuation}
+var _TokenTypeValues = []TokenType{Ignore, None, Other, Error, CodeLine, LineLink, LineTableTD, LineTable, LineHighlight, LineNumbersTable, LineNumbers, Line, PreWrapper, Background, EOFType, Keyword, KeywordConstant, KeywordDeclaration, KeywordNamespace, KeywordPseudo, KeywordReserved, KeywordType, Name, NameAttribute, NameClass, NameConstant, NameDecorator, NameEntity, NameException, NameKeyword, NameLabel, NameNamespace, NameOperator, NameOther, NamePseudo, NameProperty, NameTag, NameBuiltin, NameBuiltinPseudo, NameVariable, NameVariableAnonymous, NameVariableClass, NameVariableGlobal, NameVariableInstance, NameVariableMagic, NameFunction, NameFunctionMagic, Literal, LiteralDate, LiteralOther, LiteralString, LiteralStringAffix, LiteralStringAtom, LiteralStringBacktick, LiteralStringBoolean, LiteralStringChar, LiteralStringDelimiter, LiteralStringDoc, LiteralStringDouble, LiteralStringEscape, LiteralStringHeredoc, LiteralStringInterpol, LiteralStringName, LiteralStringOther, LiteralStringRegex, LiteralStringSingle, LiteralStringSymbol, LiteralNumber, LiteralNumberBin, LiteralNumberFloat, LiteralNumberHex, LiteralNumberInteger, LiteralNumberIntegerLong, LiteralNumberOct, LiteralNumberByte, Operator, OperatorWord, OperatorReserved, Punctuation, Comment, CommentHashbang, CommentMultiline, CommentSingle, CommentSpecial, CommentPreproc, CommentPreprocFile, Generic, GenericDeleted, GenericEmph, GenericError, GenericHeading, GenericInserted, GenericOutput, GenericPrompt, GenericStrong, GenericSubheading, GenericTraceback, GenericUnderline, Text, TextWhitespace, TextSymbol, TextPunctuation}
var _TokenTypeNameToValueMap = map[string]TokenType{
_TokenTypeName[0:6]: Ignore,
@@ -385,54 +387,56 @@ var _TokenTypeNameToValueMap = map[string]TokenType{
_TokenTypeLowerName[1025:1033]: Operator,
_TokenTypeName[1033:1045]: OperatorWord,
_TokenTypeLowerName[1033:1045]: OperatorWord,
- _TokenTypeName[1045:1056]: Punctuation,
- _TokenTypeLowerName[1045:1056]: Punctuation,
- _TokenTypeName[1056:1063]: Comment,
- _TokenTypeLowerName[1056:1063]: Comment,
- _TokenTypeName[1063:1078]: CommentHashbang,
- _TokenTypeLowerName[1063:1078]: CommentHashbang,
- _TokenTypeName[1078:1094]: CommentMultiline,
- _TokenTypeLowerName[1078:1094]: CommentMultiline,
- _TokenTypeName[1094:1107]: CommentSingle,
- _TokenTypeLowerName[1094:1107]: CommentSingle,
- _TokenTypeName[1107:1121]: CommentSpecial,
- _TokenTypeLowerName[1107:1121]: CommentSpecial,
- _TokenTypeName[1121:1135]: CommentPreproc,
- _TokenTypeLowerName[1121:1135]: CommentPreproc,
- _TokenTypeName[1135:1153]: CommentPreprocFile,
- _TokenTypeLowerName[1135:1153]: CommentPreprocFile,
- _TokenTypeName[1153:1160]: Generic,
- _TokenTypeLowerName[1153:1160]: Generic,
- _TokenTypeName[1160:1174]: GenericDeleted,
- _TokenTypeLowerName[1160:1174]: GenericDeleted,
- _TokenTypeName[1174:1185]: GenericEmph,
- _TokenTypeLowerName[1174:1185]: GenericEmph,
- _TokenTypeName[1185:1197]: GenericError,
- _TokenTypeLowerName[1185:1197]: GenericError,
- _TokenTypeName[1197:1211]: GenericHeading,
- _TokenTypeLowerName[1197:1211]: GenericHeading,
- _TokenTypeName[1211:1226]: GenericInserted,
- _TokenTypeLowerName[1211:1226]: GenericInserted,
- _TokenTypeName[1226:1239]: GenericOutput,
- _TokenTypeLowerName[1226:1239]: GenericOutput,
- _TokenTypeName[1239:1252]: GenericPrompt,
- _TokenTypeLowerName[1239:1252]: GenericPrompt,
- _TokenTypeName[1252:1265]: GenericStrong,
- _TokenTypeLowerName[1252:1265]: GenericStrong,
- _TokenTypeName[1265:1282]: GenericSubheading,
- _TokenTypeLowerName[1265:1282]: GenericSubheading,
- _TokenTypeName[1282:1298]: GenericTraceback,
- _TokenTypeLowerName[1282:1298]: GenericTraceback,
- _TokenTypeName[1298:1314]: GenericUnderline,
- _TokenTypeLowerName[1298:1314]: GenericUnderline,
- _TokenTypeName[1314:1318]: Text,
- _TokenTypeLowerName[1314:1318]: Text,
- _TokenTypeName[1318:1332]: TextWhitespace,
- _TokenTypeLowerName[1318:1332]: TextWhitespace,
- _TokenTypeName[1332:1342]: TextSymbol,
- _TokenTypeLowerName[1332:1342]: TextSymbol,
- _TokenTypeName[1342:1357]: TextPunctuation,
- _TokenTypeLowerName[1342:1357]: TextPunctuation,
+ _TokenTypeName[1045:1061]: OperatorReserved,
+ _TokenTypeLowerName[1045:1061]: OperatorReserved,
+ _TokenTypeName[1061:1072]: Punctuation,
+ _TokenTypeLowerName[1061:1072]: Punctuation,
+ _TokenTypeName[1072:1079]: Comment,
+ _TokenTypeLowerName[1072:1079]: Comment,
+ _TokenTypeName[1079:1094]: CommentHashbang,
+ _TokenTypeLowerName[1079:1094]: CommentHashbang,
+ _TokenTypeName[1094:1110]: CommentMultiline,
+ _TokenTypeLowerName[1094:1110]: CommentMultiline,
+ _TokenTypeName[1110:1123]: CommentSingle,
+ _TokenTypeLowerName[1110:1123]: CommentSingle,
+ _TokenTypeName[1123:1137]: CommentSpecial,
+ _TokenTypeLowerName[1123:1137]: CommentSpecial,
+ _TokenTypeName[1137:1151]: CommentPreproc,
+ _TokenTypeLowerName[1137:1151]: CommentPreproc,
+ _TokenTypeName[1151:1169]: CommentPreprocFile,
+ _TokenTypeLowerName[1151:1169]: CommentPreprocFile,
+ _TokenTypeName[1169:1176]: Generic,
+ _TokenTypeLowerName[1169:1176]: Generic,
+ _TokenTypeName[1176:1190]: GenericDeleted,
+ _TokenTypeLowerName[1176:1190]: GenericDeleted,
+ _TokenTypeName[1190:1201]: GenericEmph,
+ _TokenTypeLowerName[1190:1201]: GenericEmph,
+ _TokenTypeName[1201:1213]: GenericError,
+ _TokenTypeLowerName[1201:1213]: GenericError,
+ _TokenTypeName[1213:1227]: GenericHeading,
+ _TokenTypeLowerName[1213:1227]: GenericHeading,
+ _TokenTypeName[1227:1242]: GenericInserted,
+ _TokenTypeLowerName[1227:1242]: GenericInserted,
+ _TokenTypeName[1242:1255]: GenericOutput,
+ _TokenTypeLowerName[1242:1255]: GenericOutput,
+ _TokenTypeName[1255:1268]: GenericPrompt,
+ _TokenTypeLowerName[1255:1268]: GenericPrompt,
+ _TokenTypeName[1268:1281]: GenericStrong,
+ _TokenTypeLowerName[1268:1281]: GenericStrong,
+ _TokenTypeName[1281:1298]: GenericSubheading,
+ _TokenTypeLowerName[1281:1298]: GenericSubheading,
+ _TokenTypeName[1298:1314]: GenericTraceback,
+ _TokenTypeLowerName[1298:1314]: GenericTraceback,
+ _TokenTypeName[1314:1330]: GenericUnderline,
+ _TokenTypeLowerName[1314:1330]: GenericUnderline,
+ _TokenTypeName[1330:1334]: Text,
+ _TokenTypeLowerName[1330:1334]: Text,
+ _TokenTypeName[1334:1348]: TextWhitespace,
+ _TokenTypeLowerName[1334:1348]: TextWhitespace,
+ _TokenTypeName[1348:1358]: TextSymbol,
+ _TokenTypeLowerName[1348:1358]: TextSymbol,
+ _TokenTypeName[1358:1373]: TextPunctuation,
+ _TokenTypeLowerName[1358:1373]: TextPunctuation,
}
var _TokenTypeNames = []string{
@@ -513,30 +517,31 @@ var _TokenTypeNames = []string{
_TokenTypeName[1008:1025],
_TokenTypeName[1025:1033],
_TokenTypeName[1033:1045],
- _TokenTypeName[1045:1056],
- _TokenTypeName[1056:1063],
- _TokenTypeName[1063:1078],
- _TokenTypeName[1078:1094],
- _TokenTypeName[1094:1107],
- _TokenTypeName[1107:1121],
- _TokenTypeName[1121:1135],
- _TokenTypeName[1135:1153],
- _TokenTypeName[1153:1160],
- _TokenTypeName[1160:1174],
- _TokenTypeName[1174:1185],
- _TokenTypeName[1185:1197],
- _TokenTypeName[1197:1211],
- _TokenTypeName[1211:1226],
- _TokenTypeName[1226:1239],
- _TokenTypeName[1239:1252],
- _TokenTypeName[1252:1265],
- _TokenTypeName[1265:1282],
- _TokenTypeName[1282:1298],
+ _TokenTypeName[1045:1061],
+ _TokenTypeName[1061:1072],
+ _TokenTypeName[1072:1079],
+ _TokenTypeName[1079:1094],
+ _TokenTypeName[1094:1110],
+ _TokenTypeName[1110:1123],
+ _TokenTypeName[1123:1137],
+ _TokenTypeName[1137:1151],
+ _TokenTypeName[1151:1169],
+ _TokenTypeName[1169:1176],
+ _TokenTypeName[1176:1190],
+ _TokenTypeName[1190:1201],
+ _TokenTypeName[1201:1213],
+ _TokenTypeName[1213:1227],
+ _TokenTypeName[1227:1242],
+ _TokenTypeName[1242:1255],
+ _TokenTypeName[1255:1268],
+ _TokenTypeName[1268:1281],
+ _TokenTypeName[1281:1298],
_TokenTypeName[1298:1314],
- _TokenTypeName[1314:1318],
- _TokenTypeName[1318:1332],
- _TokenTypeName[1332:1342],
- _TokenTypeName[1342:1357],
+ _TokenTypeName[1314:1330],
+ _TokenTypeName[1330:1334],
+ _TokenTypeName[1334:1348],
+ _TokenTypeName[1348:1358],
+ _TokenTypeName[1358:1373],
}
// TokenTypeString retrieves an enum value from the enum constants string name.
diff --git a/types.go b/types.go
index 3009f9809..96c0603be 100644
--- a/types.go
+++ b/types.go
@@ -143,6 +143,7 @@ const (
const (
Operator TokenType = 4000 + iota
OperatorWord
+ OperatorReserved
)
// Punctuation.
@@ -294,8 +295,9 @@ var (
NumberIntegerLong: "il",
NumberOct: "mo",
- Operator: "o",
- OperatorWord: "ow",
+ Operator: "o",
+ OperatorWord: "ow",
+ OperatorReserved: "or",
Punctuation: "p",