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",