/usr/share/highlight/langDefs/nbc.lang is in highlight-common 3.41-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 | Description="NeXT Byte Codes"
Digits=[[ (?:x|X)[-a-fA-F]+|\d*[\.]?\d+(?:[eE][\-\+]\\d+)?[lLuU]* ]]
Keywords={
{ Id=1,
List={"add", "sub", "neg", "mul", "div", "mod", "and", "or", "xor", "not",
"cmp", "tst", "index", "replace", "arrsize", "arrbuild", "arrsubset", "arrinit",
"mov", "set", "flatten", "unflatten", "numtostr", "strtonum", "strcat",
"strsubset", "strtoarr", "arrtostr", "jmp", "brcmp", "brtst", "syscall", "stop",
"exit", "exitto", "acquire", "release", "subcall", "subret", "setin", "setout",
"getin", "getout", "wait", "gettick", "thread", "endt", "subroutine", "follows",
"precedes", "segment", "ends", "typedef", "struct", "dd", "void", "waitv",
"call", "return", "abs", "sign", "strindex", "strreplace", "strlen", "shl",
"shr", "sizeof", "compchk", "compif", "compelse", "compend", "valueof",
"isconst", "asl", "asr", "lsl", "lsr", "rotl", "rotr", "start", "stopthread",
"priority", "cmnt", "fmtnum", "compchktype"},
},
{ Id=2,
List={"byte", "ubyte", "db", "sbyte", "word", "uword", "dw", "sword",
"dword", "udword", "dd", "sdword", "long", "ulong", "slong", "mutex"},
},
{ Id=3,
List={"tan", "sin", "cos", "sinh", "cosh", "arctan", "cotan", "arg", "exp",
"ln", "log", "log", "logn", "sqr", "sqrt", "trunc", "int", "ceil", "floor",
"heav", "abs", "sign", "zero", "ph", "rnd", "random", "max", "min", "power",
"intpower", "InputIOType", "InputIOInputMode", "InputIORawValue",
"InputIONormalizedValue", "InputIOScaledValue", "InputIOInvalidData",
"OutputIOUpdateFlags", "OutputIOOutputMode", "OutputIOPower",
"OutputIOActualSpeed", "OutputIOTachoCount", "OutputIOTachoLimit",
"OutputIORunState", "OutputIOTurnRatio", "OutputIORegMode", "OutputIOOverload",
"OutputIORegPValue", "OutputIORegIValue", "OutputIORegDValue",
"OutputIOBlockTachoCount", "OutputIORotationCount", "FileOpenRead",
"FileOpenWrite", "FileOpenAppend", "FileRead", "FileWrite", "FileClose",
"FileResolveHandle", "FileRename", "FileDelete", "SoundPlayFile",
"SoundPlayTone", "SoundGetState", "SoundSetState", "DrawText", "DrawPoint",
"DrawLine", "DrawCircle", "DrawRect", "DrawGraphic", "SetScreenMode",
"ReadButton", "CommLSWrite", "CommLSRead", "CommLSCheckStatus", "RandomNumber",
"GetStartTick", "MessageWrite", "MessageRead", "CommBTCheckStatus",
"CommBTWrite", "KeepAlive", "IOMapRead", "IOMapWrite", "IOMapReadByID",
"IOMapWriteByID", "DisplayExecuteFunction", "CommExecuteFunction",
"LoaderExecuteFunction", "Type", "InputMode", "RawValue", "NormalizedValue",
"ScaledValue", "InvalidData", "UpdateFlags", "OutputMode", "Power",
"ActualSpeed", "TachoCount", "TachoLimit", "RunState", "TurnRatio", "RegMode",
"Overload", "RegPValue", "RegIValue", "RegDValue", "BlockTachoCount",
"RotationCount"},
},
{ Id=4,
Regex=[[(\w+)\s*\(]],
},
{ Id=4,
Regex=[[^(\w+)\:]],
}
}
Strings={
Delimiter=[["|']],
}
IgnoreCase=false
Comments={
{ Block=false,
Delimiter= { [[\/\/|\;]] },
},
{ Block=true,
Nested=false,
Delimiter= { [[\/\*]],[[\*\/]],}
}
}
PreProcessor={
Prefix=[[#]],
Continuation="\\",
}
Operators=[[\(|\)|\[|\]|\{|\}|\,|\;|\.|\:|\&|<|>|\!|\=|\/|\*|\%|\+|\-|\~]]
--EnableIndentation=true
--FIXME no default escchar param: regex(\\\d{}|\\x[[:xdigit:]]{}|\\[ntvbrfa\\\?'"])
|