/usr/share/highlight/langDefs/pas.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 | Description="Pascal"
Digits=[[ (?:0x|0X|\$)[0-9a-fA-F]+|\d*[\.\_]?\d+(?:[eE][\-\+]\d+)?[lLuUbfdm]* ]]
Keywords={
{ Id=1,
List={"absolute", "abstract", "and", "array", "as", "asm", "assembler", "automated",
"begin", "case", "cdecl", "class", "const", "constructor", "destructor", "dispid",
"dispinterface", "div", "dynamic", "end", "except", "export", "exports", "external",
"far", "file", "finalization", "finally", "forward", "function", "goto",
"implementation", "in", "initialization", "inherited", "inline", "interface",
"is", "label", "library", "message", "mod", "near", "nil", "not", "object",
"of", "or", "out", "override", "packed", "pascal", "private", "procedure",
"program", "property", "protected", "public", "published", "raise", "record",
"register", "resourcestring", "safecall", "set", "shl", "shr", "stdcall",
"threadvar", "try", "type", "unit", "uses", "var", "virtual", "xor",
"if", "else", "then", "downto", "do", "for", "repeat", "while", "to", "until", "with"},
},
{ Id=2,
List={"boolean", "char", "integer", "pointer", "real", "text", "true", "false", "cardinal",
"longint", "byte", "word", "single", "double", "int64","string"},
},
{ Id=4,
Regex=[[(\w+)\s*\(]],
},
}
Strings={
Delimiter=[["|']],
Escape="#[[:digit:]]+"
}
IgnoreCase=true
Comments={
{ Block=false,
Delimiter= { [[//]] },
},
{ Block=true,
Nested=false,
Delimiter= { [[\{(?!\$)]],[[\}]] }
},
{ Block=true,
Nested=false,
Delimiter= { [[\(\*]],[[\*\)]] }
}
}
PreProcessor = {
Prefix=[[{]],
Continuation="\x13",
}
NestedSections = {
{
Lang="assembler",
Delimiter= { [[asm]], [[end;]] }
}
}
Operators=[[\(|\)|\[|\]|,|;|:|&|<|>|\!|\=|\/|\*|\%|\+|\-|\@|\.|\^]]
function OnStateChange(oldState, newState, token)
if token=="}" and oldState==HL_PREPROC then
return HL_PREPROC_END
end
return newState
end
|