name: Pascal fileTypes:
-
pas
-
p
scopeName: source.pascal uuid: F42FA544-6B1C-11D9-9517-000D93589AF6 foldingStartMarker: b(?i:(function|package|procedure|try|type))b patterns:
-
name: keyword.control.pascal match: b(?i:(absolute|abstract|all|and|and_then|array|as|asm|attribute|begin|bindable|case|class|const|constructor|destructor|div|do|do|else|end|except|export|exports|external|far|file|finalization|finally|for|forward|goto|if|implementation|import|in|inherited|initialization|interface|interrupt|is|label|library|mod|module|name|near|nil|not|object|of|only|operator|or|or_else|otherwise|packed|pow|private|program|property|protected|public|published|qualified|record|repeat|resident|restricted|segment|set|shl|shr|then|to|try|type|unit|until|uses|value|var|view|virtual|while|with|xor))b
-
name: meta.function.prototype.pascal captures:
"1": name: storage.type.prototype.pascal "2": name: entity.name.function.prototype.pascal
match: b(?i:(function|procedure))bs+(w+(.w+)?)((.*?))?;s*(?=(?i:attribute|forward|external))
-
name: meta.function.pascal captures:
"1": name: storage.type.function.pascal "2": name: entity.name.function.pascal
match: b(?i:(function|procedure))bs+(w+(.w+)?)
-
name: constant.numeric.pascal match: b((0(x|X)[0-9a-fA-F]*)|(([0-9]+.?*)|(.[0-9]+))((e|E)(+|-)?+)?)(L|l|UL|ul|u|U|F|f|ll|LL|ull|ULL)?b
-
name: comment.line.double-dash.pascal.one captures:
"1": name: punctuation.definition.comment.pascal
match: (–).*$n?
-
name: comment.line.double-slash.pascal.two captures:
"1": name: punctuation.definition.comment.pascal
match: (//).*$n?
-
name: comment.block.pascal.one captures:
"0": name: punctuation.definition.comment.pascal
begin: (* end: *)
-
name: comment.block.pascal.two captures:
"0": name: punctuation.definition.comment.pascal
begin: { end: }
-
name: string.quoted.double.pascal endCaptures:
"0": name: punctuation.definition.string.end.pascal
begin: “"” beginCaptures:
"0": name: punctuation.definition.string.begin.pascal
end: “"” patterns:
-
name: constant.character.escape.pascal match: \.
comment: Double quoted strings are an extension and (generally) support C-style escape sequences.
-
-
name: string.quoted.single.pascal endCaptures:
"0": name: punctuation.definition.string.end.pascal
begin: “'” applyEndPatternLast: 1 beginCaptures:
"0": name: punctuation.definition.string.begin.pascal
end: “'” patterns:
-
name: constant.character.escape.apostrophe.pascal match: “''”
-
foldingStopMarker: b(?i:(end))b keyEquivalent: ^~P