/usr/share/highlight/langDefs/swift.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 | Description="Swift"
Keywords={
{ Id=1,
List= {"class", "deinit", "enum", "extension", "func", "import", "init",
"internal", "let", "operator", "private", "protocol", "public", "static",
"struct", "subscript", "typealias", "var", "fileprivate", "open", "final",
"break", "case", "continue", "default", "do", "else", "fallthrough",
"for", "if", "in", "return", "switch", "where", "while", "try","throw","catch"
}
},
{ Id=2,
List= { "as", "dynamicType", "false", "is", "nil", "self", "Self", "super",
"true", "__COLUMN__", "__FILE__", "__FUNCTION__", "__LINE__"
}
},
{ Id=3,
Regex=[[ (let|var)\s+(\w+)]], Group=2
},
{ Id=4,
Regex=[[(\w+)\s*\(]]
}
}
-- add keywords to list 3
function OnStateChange(oldState, newState, token, kwgroup)
if newState==HL_KEYWORD and kwgroup==3 then
AddKeyword(token, 3)
end
return newState
end
Identifiers=[[ [a-zA-Z_]\w* ]]
Digits=[[ (?:0x|0o|0b)[0-9a-fA-F]+|\d*[\.\_]?\d+(?:[eE][\-\+]\d+)? ]]
Strings = {
Delimiter=[["]],
Interpolation = [[ \\\(.+?\)\)? ]],
RawPrefix="R",
}
Comments = {
{ Block=true,
Nested=true,
Delimiter = { [[\/\*]], [[\*\/]] }
},
{
Block=false,
Delimiter = { [[//]] }
}
}
IgnoreCase=false
PreProcessor = {
Prefix=[[#]],
Continuation="\\",
}
Operators=[[\(|\)|\[|\]|\{|\}|\,|\;|\.|\:|\&|<|>|\!|=|\/|\*|\%|\+|\-|\~|\||\^]]
EnableIndentation=false
|