You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
271 lines
11 KiB
JSON
271 lines
11 KiB
JSON
{
|
|
"aliases": [
|
|
"ps",
|
|
"ps1"
|
|
],
|
|
"lexemes": "-?[A-z\\.\\-]+",
|
|
"case_insensitive": true,
|
|
"keywords": {
|
|
"keyword": "if else foreach return do while until elseif begin for trap data dynamicparam end break throw param continue finally in switch exit filter try process catch hidden static parameter"
|
|
},
|
|
"contains": [
|
|
{
|
|
"className": "function",
|
|
"begin": "\\[.*\\]\\s*[\\w]+[ ]??\\(",
|
|
"end": "$",
|
|
"returnBegin": true,
|
|
"relevance": 0,
|
|
"contains": [
|
|
{
|
|
"begin": "\\[",
|
|
"end": "\\]",
|
|
"excludeBegin": true,
|
|
"excludeEnd": true,
|
|
"relevance": 0,
|
|
"contains": [
|
|
"self",
|
|
{
|
|
"$ref": "#contains.0"
|
|
},
|
|
{
|
|
"className": "comment",
|
|
"begin": null,
|
|
"end": null,
|
|
"contains": [
|
|
{
|
|
"className": "doctag",
|
|
"variants": [
|
|
{
|
|
"begin": "\\.(synopsis|description|example|inputs|outputs|notes|link|component|role|functionality)"
|
|
},
|
|
{
|
|
"begin": "\\.(parameter|forwardhelptargetname|forwardhelpcategory|remotehelprunspace|externalhelp)\\s+\\S+"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"variants": [
|
|
{
|
|
"begin": "#",
|
|
"end": "$"
|
|
},
|
|
{
|
|
"begin": "<#",
|
|
"end": "#>"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "`[\\s\\S]",
|
|
"relevance": 0
|
|
},
|
|
{
|
|
"className": "number",
|
|
"begin": "\\b\\d+(\\.\\d+)?",
|
|
"relevance": 0
|
|
},
|
|
{
|
|
"className": "string",
|
|
"variants": [
|
|
{
|
|
"begin": "\"",
|
|
"end": "\""
|
|
},
|
|
{
|
|
"begin": "@\"",
|
|
"end": "^\"@"
|
|
}
|
|
],
|
|
"contains": [
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.3"
|
|
},
|
|
{
|
|
"className": "variable",
|
|
"variants": [
|
|
{
|
|
"begin": "\\$\\B"
|
|
},
|
|
{
|
|
"className": "keyword",
|
|
"begin": "\\$this"
|
|
},
|
|
{
|
|
"begin": "\\$[\\w\\d][\\w\\d_:]*"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"className": "variable",
|
|
"begin": "\\$[A-z]",
|
|
"end": "[^A-z]"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"className": "string",
|
|
"variants": [
|
|
{
|
|
"begin": "'",
|
|
"end": "'"
|
|
},
|
|
{
|
|
"begin": "@'",
|
|
"end": "^'@"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"className": "built_in",
|
|
"variants": [
|
|
{
|
|
"begin": "(Add|Clear|Close|Copy|Enter|Exit|Find|Format|Get|Hide|Join|Lock|Move|New|Open|Optimize|Pop|Push|Redo|Remove|Rename|Reset|Resize|Search|Select|Set|Show|Skip|Split|Step|Switch|Undo|Unlock|Watch|Backup|Checkpoint|Compare|Compress|Convert|ConvertFrom|ConvertTo|Dismount|Edit|Expand|Export|Group|Import|Initialize|Limit|Merge|New|Out|Publish|Restore|Save|Sync|Unpublish|Update|Approve|Assert|Complete|Confirm|Deny|Disable|Enable|Install|Invoke|Register|Request|Restart|Resume|Start|Stop|Submit|Suspend|Uninstall|Unregister|Wait|Debug|Measure|Ping|Repair|Resolve|Test|Trace|Connect|Disconnect|Read|Receive|Send|Write|Block|Grant|Protect|Revoke|Unblock|Unprotect|Use|ForEach|Sort|Tee|Where)+(-)[\\w\\d]+"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.5.contains.1"
|
|
},
|
|
{
|
|
"className": "literal",
|
|
"begin": "\\$(null|true|false)\\b"
|
|
},
|
|
{
|
|
"className": "selector-tag",
|
|
"begin": "\\@\\B",
|
|
"relevance": 0
|
|
},
|
|
{
|
|
"begin": "(string|char|byte|int|long|bool|decimal|single|double|DateTime|xml|array|hashtable|void)",
|
|
"className": "built_in",
|
|
"relevance": 0
|
|
},
|
|
{
|
|
"className": "type",
|
|
"begin": "[\\.\\w\\d]+",
|
|
"relevance": 0
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"className": "keyword",
|
|
"begin": "(if|else|foreach|return|do|while|until|elseif|begin|for|trap|data|dynamicparam|end|break|throw|param|continue|finally|in|switch|exit|filter|try|process|catch|hidden|static|parameter)\\b",
|
|
"endsParent": true,
|
|
"relevance": 0
|
|
},
|
|
{
|
|
"className": "title",
|
|
"begin": "[a-zA-Z]\\w*",
|
|
"relevance": 0,
|
|
"endsParent": true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.2"
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.3"
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.4"
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.5"
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.6"
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.7"
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.5.contains.1"
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.9"
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.10"
|
|
},
|
|
{
|
|
"className": "class",
|
|
"beginKeywords": "class enum",
|
|
"end": "\\s*[{]",
|
|
"excludeEnd": true,
|
|
"relevance": 0,
|
|
"contains": [
|
|
{
|
|
"className": "title",
|
|
"begin": "[a-zA-Z]\\w*",
|
|
"relevance": 0
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"className": "function",
|
|
"begin": "function\\s+",
|
|
"end": "\\s*\\{|$",
|
|
"excludeEnd": true,
|
|
"returnBegin": true,
|
|
"relevance": 0,
|
|
"contains": [
|
|
{
|
|
"begin": "function",
|
|
"relevance": 0,
|
|
"className": "keyword"
|
|
},
|
|
{
|
|
"className": "title",
|
|
"begin": "\\w[\\w\\d]*((-)[\\w\\d]+)*",
|
|
"relevance": 0
|
|
},
|
|
{
|
|
"begin": "\\(",
|
|
"end": "\\)",
|
|
"className": "params",
|
|
"relevance": 0,
|
|
"contains": [
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.5.contains.1"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"begin": "using\\s",
|
|
"end": "$",
|
|
"returnBegin": true,
|
|
"contains": [
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.5"
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0.contains.6"
|
|
},
|
|
{
|
|
"className": "keyword",
|
|
"begin": "(using|assembly|command|module|namespace|type)"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"variants": [
|
|
{
|
|
"className": "operator",
|
|
"begin": "(-and|-as|-band|-bnot|-bor|-bxor|-casesensitive|-ccontains|-ceq|-cge|-cgt|-cle|-clike|-clt|-cmatch|-cne|-cnotcontains|-cnotlike|-cnotmatch|-contains|-creplace|-csplit|-eq|-exact|-f|-file|-ge|-gt|-icontains|-ieq|-ige|-igt|-ile|-ilike|-ilt|-imatch|-in|-ine|-inotcontains|-inotlike|-inotmatch|-ireplace|-is|-isnot|-isplit|-join|-le|-like|-lt|-match|-ne|-not|-notcontains|-notin|-notlike|-notmatch|-or|-regex|-replace|-shl|-shr|-split|-wildcard|-xor)\\b"
|
|
},
|
|
{
|
|
"className": "literal",
|
|
"begin": "(-)[\\w\\d]+",
|
|
"relevance": 0
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"$ref": "#contains.0.contains.0"
|
|
}
|
|
]
|
|
}
|