diff options
| author | Christian Clason <c.clason@uni-graz.at> | 2023-06-12 09:54:30 -0600 |
|---|---|---|
| committer | Christian Clason <c.clason@uni-graz.at> | 2025-05-12 18:43:40 +0200 |
| commit | 692b051b09935653befdb8f7ba8afdb640adf17b (patch) | |
| tree | 167162b6b129ae04f68c5735078521a72917c742 /queries/pascal | |
| parent | feat(c-family): inherit injections (diff) | |
| download | nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.gz nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.bz2 nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.lz nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.xz nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.tar.zst nvim-treesitter-692b051b09935653befdb8f7ba8afdb640adf17b.zip | |
feat!: drop modules, general refactor and cleanup
Diffstat (limited to 'queries/pascal')
| -rw-r--r-- | queries/pascal/folds.scm | 31 | ||||
| -rw-r--r-- | queries/pascal/highlights.scm | 524 | ||||
| -rw-r--r-- | queries/pascal/indents.scm | 33 | ||||
| -rw-r--r-- | queries/pascal/injections.scm | 5 | ||||
| -rw-r--r-- | queries/pascal/locals.scm | 54 |
5 files changed, 0 insertions, 647 deletions
diff --git a/queries/pascal/folds.scm b/queries/pascal/folds.scm deleted file mode 100644 index 8fcde3ac0..000000000 --- a/queries/pascal/folds.scm +++ /dev/null @@ -1,31 +0,0 @@ -[ - (interface) - (implementation) - (initialization) - (finalization) - (if) - (ifElse) - (while) - (repeat) - (for) - (foreach) - (try) - (case) - (caseCase) - (asm) - (with) - (declVar) - (declConst) - (declEnum) - (declProcRef) - (declExports) - (declProcRef) - (declType) - (defProc) - (declField) - (declProp) - (comment) -] @fold - -(interface - (declProc) @fold) diff --git a/queries/pascal/highlights.scm b/queries/pascal/highlights.scm deleted file mode 100644 index d6014ee1d..000000000 --- a/queries/pascal/highlights.scm +++ /dev/null @@ -1,524 +0,0 @@ -; -- Keywords -[ - (kProgram) - (kLibrary) - (kUnit) - (kBegin) - (kEnd) - (kAsm) - (kVar) - (kThreadvar) - (kConst) - (kConstref) - (kResourcestring) - (kOut) - (kType) - (kLabel) - (kExports) - (kProperty) - (kRead) - (kWrite) - (kImplements) - (kClass) - (kInterface) - (kObject) - (kRecord) - (kObjcclass) - (kObjccategory) - (kObjcprotocol) - (kArray) - (kFile) - (kString) - (kSet) - (kOf) - (kHelper) - (kInherited) - (kGeneric) - (kSpecialize) - (kFunction) - (kProcedure) - (kConstructor) - (kDestructor) - (kOperator) - (kReference) - (kInterface) - (kImplementation) - (kInitialization) - (kFinalization) - (kTry) - (kExcept) - (kFinally) - (kRaise) - (kOn) - (kCase) - (kWith) - (kGoto) -] @keyword - -[ - (kFor) - (kTo) - (kDownto) - (kDo) - (kWhile) - (kRepeat) - (kUntil) -] @keyword.repeat - -[ - (kIf) - (kThen) - (kElse) -] @keyword.conditional - -[ - (kPublished) - (kPublic) - (kProtected) - (kPrivate) - (kStrict) - (kRequired) - (kOptional) -] @keyword.modifier - -[ - (kPacked) - (kAbsolute) -] @keyword.modifier - -(kUses) @keyword.import - -; -- Attributes -[ - (kDefault) - (kIndex) - (kNodefault) - (kStored) - (kStatic) - (kVirtual) - (kAbstract) - (kSealed) - (kDynamic) - (kOverride) - (kOverload) - (kReintroduce) - (kInline) - (kForward) - (kStdcall) - (kCdecl) - (kCppdecl) - (kPascal) - (kRegister) - (kMwpascal) - (kExternal) - (kName) - (kMessage) - (kDeprecated) - (kExperimental) - (kPlatform) - (kUnimplemented) - (kCvar) - (kExport) - (kFar) - (kNear) - (kSafecall) - (kAssembler) - (kNostackframe) - (kInterrupt) - (kNoreturn) - (kIocheck) - (kLocal) - (kHardfloat) - (kSoftfloat) - (kMs_abi_default) - (kMs_abi_cdecl) - (kSaveregisters) - (kSysv_abi_default) - (kSysv_abi_cdecl) - (kVectorcall) - (kVarargs) - (kWinapi) - (kAlias) - (kDelayed) - (rttiAttributes) - (procAttribute) -] @attribute - -(procAttribute - (kPublic) @attribute) - -; -- Punctuation & operators -[ - "(" - ")" - "[" - "]" -] @punctuation.bracket - -[ - ";" - "," - ":" - (kEndDot) -] @punctuation.delimiter - -".." @punctuation.special - -[ - (kDot) - (kAdd) - (kSub) - (kMul) - (kFdiv) - (kAssign) - (kAssignAdd) - (kAssignSub) - (kAssignMul) - (kAssignDiv) - (kEq) - (kLt) - (kLte) - (kGt) - (kGte) - (kNeq) - (kAt) - (kHat) -] @operator - -[ - (kOr) - (kXor) - (kDiv) - (kMod) - (kAnd) - (kShl) - (kShr) - (kNot) - (kIs) - (kAs) - (kIn) -] @keyword.operator - -; -- Builtin constants -[ - (kTrue) - (kFalse) -] @boolean - -(kNil) @constant.builtin - -; -- Literals -(literalNumber) @number - -(literalString) @string - -; -- Variables -(exprBinary - (identifier) @variable) - -(exprUnary - (identifier) @variable) - -(assignment - (identifier) @variable) - -(exprBrackets - (identifier) @variable) - -(exprParens - (identifier) @variable) - -(exprDot - (identifier) @variable) - -(exprTpl - (identifier) @variable) - -(exprArgs - (identifier) @variable) - -(defaultValue - (identifier) @variable) - -; -- Comments -(comment) @comment @spell - -((comment) @comment.documentation - (#lua-match? @comment.documentation "^///[^/]")) - -((comment) @comment.documentation - (#lua-match? @comment.documentation "^///$")) - -((comment) @comment.documentation - . - [ - (unit) - (declProc) - ]) - -(declTypes - (comment) @comment.documentation - . - (declType)) - -(declSection - (comment) @comment.documentation - . - [ - (declField) - (declProc) - ]) - -(declEnum - (comment) @comment.documentation - . - (declEnumValue)) - -(declConsts - (comment) @comment.documentation - . - (declConst)) - -(declVars - (comment) @comment.documentation - . - (declVar)) - -(pp) @keyword.directive - -; -- Type declaration -(declType - name: (identifier) @type) - -(declType - name: (genericTpl - entity: (identifier) @type)) - -; -- Procedure & function declarations -; foobar -(declProc - name: (identifier) @function) - -; foobar<t> -(declProc - name: (genericTpl - entity: (identifier) @function)) - -; foo.bar -(declProc - name: (genericDot - rhs: (identifier) @function)) - -; foo.bar<t> -(declProc - name: (genericDot - rhs: (genericTpl - entity: (identifier) @function))) - -; Treat property declarations like functions -(declProp - name: (identifier) @function) - -(declProp - getter: (identifier) @variable.member) - -(declProp - setter: (identifier) @variable.member) - -; -- Function parameters -(declArg - name: (identifier) @variable.parameter) - -; -- Template parameters -(genericArg - name: (identifier) @variable.parameter) - -(genericArg - type: (typeref) @type) - -(declProc - name: (genericDot - lhs: (identifier) @type)) - -(declType - (genericDot - (identifier) @type)) - -(genericDot - (genericTpl - (identifier) @type)) - -(genericDot - (genericDot - (identifier) @type)) - -(genericTpl - entity: (identifier) @type) - -(genericTpl - entity: (genericDot - (identifier) @type)) - -; -- Exception parameters -(exceptionHandler - variable: (identifier) @variable.parameter) - -; -- Type usage -(typeref) @type - -; -- Constant usage -[ - (caseLabel) - (label) -] @constant - -(procAttribute - (identifier) @constant) - -(procExternal - (identifier) @constant) - -; -- Variable & constant declarations -; (This is only questionable because we cannot detect types of identifiers -; declared in other units, so the results will be inconsistent) -(declVar - name: (identifier) @variable) - -(declConst - name: (identifier) @constant) - -(declEnumValue - name: (identifier) @constant) - -; -- Fields -(exprDot - rhs: (identifier) @variable.member) - -(exprDot - rhs: (exprDot) @variable.member) - -(declClass - (declField - name: (identifier) @variable.member)) - -(declSection - (declField - name: (identifier) @variable.member)) - -(declSection - (declVars - (declVar - name: (identifier) @variable.member))) - -(recInitializerField - name: (identifier) @variable.member) - -; ---------------------------------------------- ;;; -; EVERYTHING BELOW THIS IS OF QUESTIONABLE VALUE ;;; -; ---------------------------------------------- ;;; -; -- Procedure name in calls with parentheses -; (Pascal doesn't require parentheses for procedure calls, so this will not -; detect all calls) -; foobar -(exprCall - entity: (identifier) @function) - -; foobar<t> -(exprCall - entity: (exprTpl - entity: (identifier) @function)) - -; foo.bar -(exprCall - entity: (exprDot - rhs: (identifier) @function)) - -; foo.bar<t> -(exprCall - entity: (exprDot - rhs: (exprTpl - entity: (identifier) @function))) - -(inherited) @function - -; -- Heuristic for procedure/function calls without parentheses -; (If a statement consists only of an identifier, assume it's a procedure) -; (This will still not match all procedure calls, and also may produce false -; positives in rare cases, but only for nonsensical code) -(statement - (identifier) @function) - -(statement - (exprDot - rhs: (identifier) @function)) - -(statement - (exprTpl - entity: (identifier) @function)) - -(statement - (exprDot - rhs: (exprTpl - entity: (identifier) @function))) - -; -- Break, Continue & Exit -; (Not ideal: ideally, there would be a way to check if these special -; identifiers are shadowed by a local variable) -(statement - ((identifier) @keyword.return - (#lua-match? @keyword.return "^[eE][xX][iI][tT]$"))) - -(statement - (exprCall - entity: ((identifier) @keyword.return - (#lua-match? @keyword.return "^[eE][xX][iI][tT]$")))) - -(statement - ((identifier) @keyword.repeat - (#lua-match? @keyword.repeat "^[bB][rR][eE][aA][kK]$"))) - -(statement - ((identifier) @keyword.repeat - (#lua-match? @keyword.repeat "^[cC][oO][nN][tT][iI][nN][uU][eE]$"))) - -; -- Identifier type inference -; VERY QUESTIONABLE: Highlighting of identifiers based on spelling -(exprBinary - ((identifier) @constant - (#match? @constant "^[A-Z][A-Z0-9_]+$|^[a-z]{2,3}[A-Z].+$"))) - -(exprUnary - ((identifier) @constant - (#match? @constant "^[A-Z][A-Z0-9_]+$|^[a-z]{2,3}[A-Z].+$"))) - -(assignment - rhs: ((identifier) @constant - (#match? @constant "^[A-Z][A-Z0-9_]+$|^[a-z]{2,3}[A-Z].+$"))) - -(exprBrackets - ((identifier) @constant - (#match? @constant "^[A-Z][A-Z0-9_]+$|^[a-z]{2,3}[A-Z].+$"))) - -(exprParens - ((identifier) @constant - (#match? @constant "^[A-Z][A-Z0-9_]+$|^[a-z]{2,3}[A-Z].+$"))) - -(exprDot - rhs: ((identifier) @constant - (#match? @constant "^[A-Z][A-Z0-9_]+$|^[a-z]{2,3}[A-Z].+$"))) - -(exprTpl - args: ((identifier) @constant - (#match? @constant "^[A-Z][A-Z0-9_]+$|^[a-z]{2,3}[A-Z].+$"))) - -(exprArgs - ((identifier) @constant - (#match? @constant "^[A-Z][A-Z0-9_]+$|^[a-z]{2,3}[A-Z].+$"))) - -(declEnumValue - ((identifier) @constant - (#match? @constant "^[A-Z][A-Z0-9_]+$|^[a-z]{2,3}[A-Z].+$"))) - -(defaultValue - ((identifier) @constant - (#match? @constant "^[A-Z][A-Z0-9_]+$|^[a-z]{2,3}[A-Z].+$"))) diff --git a/queries/pascal/indents.scm b/queries/pascal/indents.scm deleted file mode 100644 index 879e7b86f..000000000 --- a/queries/pascal/indents.scm +++ /dev/null @@ -1,33 +0,0 @@ -[ - (statement) - (declVars) - (declConsts) - (declTypes) - (declProc) - (declArgs) - (declUses) - (declClass) - (exprArgs) - (exprSubscript) - (exprBrackets) - (exprParens) - (recInitializer) - (arrInitializer) - (defaultValue) -] @indent.begin - -(defProc - (block) @indent.begin) - -[ - (kEnd) - (kFinally) - (kDo) - (kUntil) - (kExcept) - (kElse) - (kThen) - (declSection) - "]" - ")" -] @indent.branch diff --git a/queries/pascal/injections.scm b/queries/pascal/injections.scm deleted file mode 100644 index 1f6e475c8..000000000 --- a/queries/pascal/injections.scm +++ /dev/null @@ -1,5 +0,0 @@ -((comment) @injection.content - (#set! injection.language "comment")) - -((asmBody) @injection.content - (#set! injection.language "asm")) diff --git a/queries/pascal/locals.scm b/queries/pascal/locals.scm deleted file mode 100644 index d74d54ad4..000000000 --- a/queries/pascal/locals.scm +++ /dev/null @@ -1,54 +0,0 @@ -(root) @local.scope - -(defProc) @local.scope - -(lambda) @local.scope - -(interface - (declProc) @local.scope) - -(declSection - (declProc) @local.scope) - -(declClass - (declProc) @local.scope) - -(declHelper - (declProc) @local.scope) - -(declProcRef) @local.scope - -(exceptionHandler) @local.scope - -(exceptionHandler - variable: (identifier) @local.definition) - -(declArg - name: (identifier) @local.definition) - -(declVar - name: (identifier) @local.definition) - -(declConst - name: (identifier) @local.definition) - -(declLabel - name: (identifier) @local.definition) - -(genericArg - name: (identifier) @local.definition) - -(declEnumValue - name: (identifier) @local.definition) - -(declType - name: (identifier) @local.definition) - -(declType - name: (genericTpl - entity: (identifier) @local.definition)) - -(declProc - name: (identifier) @local.definition) - -(identifier) @local.reference |
