/usr/share/highlight/langDefs/ocaml.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 | Description="Objective Caml"
Digits=[[ (?:0x|0X|0b|0B)[0-9a-fA-F]+|\d*[\.\_]?\d+(?:[eE][\-\+]\d+)?[lLuUbfdm]* ]]
Keywords={
{ Id=1, List={"and", "as", "assert", "asr", "begin", "", "class",
"constraint", "do", "done", "downto", "else", "end", "exception", "external",
"false", "for", "fun", "function", "functor", "if", "in", "include", "inherit",
"initializer", "land", "lazy", "let", "lor", "lsl", "lsr", "lxor", "match",
"method", "mod", "module", "mutable", "new", "object", "of", "open", "or",
"private", "rec", "sig", "struct", "then", "to", "true", "try", "type", "val",
"virtual", "when", "while", "with", "value"}, },
{ Id=2,
List={"bool", "string", "int", "real", "word", "float", "unit", "option", "ref"},
},
{ Id=3,
Regex=[[\b[A-Z][a-zA-Z0-9_]*(?=\.)]],
},
{ Id=4,
Regex=[[ let\s+(rec\s+)?(\w+)]], Group=2
},
}
function OnStateChange(oldState, newState, token, kwgroup)
if newState==HL_KEYWORD and kwgroup==4 then
AddKeyword(token, 4)
end
return newState
end
Strings={
Delimiter=[["]],
Interpolation=[[ %\w ]],
}
Comments={
{ Block=true,
Nested=false,
Delimiter= { [[\(\*]],[[\*\)]],}
}
}
IgnoreCase=false
Operators=[[\(|\)|\[|\]|\{|\}|\,|\;|\:|\&|<|>|\!|\=|\/|\*|\%|\+|\-|\.|\||@]]
|