mirror of
https://github.com/sourcegit-scm/sourcegit.git
synced 2024-10-31 13:03:20 -07:00
Merge pull request #496 from Gama11/feature/haxe-syntax-highlighting
Add syntax highlighting for Haxe
This commit is contained in:
commit
0a4d5b8429
3 changed files with 2559 additions and 1 deletions
|
@ -24,7 +24,7 @@ namespace SourceGit.Models
|
||||||
_backend = new RegistryOptions(defaultTheme);
|
_backend = new RegistryOptions(defaultTheme);
|
||||||
_extraGrammars = new List<IRawGrammar>();
|
_extraGrammars = new List<IRawGrammar>();
|
||||||
|
|
||||||
string[] extraGrammarFiles = ["toml.json", "kotlin.json"];
|
string[] extraGrammarFiles = ["toml.json", "kotlin.json", "haxe.json", "hxml.json"];
|
||||||
foreach (var file in extraGrammarFiles)
|
foreach (var file in extraGrammarFiles)
|
||||||
{
|
{
|
||||||
var asset = AssetLoader.Open(new Uri($"avares://SourceGit/Resources/Grammars/{file}",
|
var asset = AssetLoader.Open(new Uri($"avares://SourceGit/Resources/Grammars/{file}",
|
||||||
|
|
2488
src/Resources/Grammars/haxe.json
Normal file
2488
src/Resources/Grammars/haxe.json
Normal file
File diff suppressed because it is too large
Load diff
70
src/Resources/Grammars/hxml.json
Normal file
70
src/Resources/Grammars/hxml.json
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
{
|
||||||
|
"information_for_contributors": [
|
||||||
|
"This file has been copied from https://github.com/vshaxe/haxe-TmLanguage/blob/ddad8b4c6d0781ac20be0481174ec1be772c5da5/hxml.tmLanguage",
|
||||||
|
"and converted to JSON using https://marketplace.visualstudio.com/items?itemName=pedro-w.tmlanguage"
|
||||||
|
],
|
||||||
|
"fileTypes": [
|
||||||
|
"hxml"
|
||||||
|
],
|
||||||
|
"foldingStartMarker": "--next",
|
||||||
|
"foldingStopMarker": "\\n\\n",
|
||||||
|
"keyEquivalent": "^@H",
|
||||||
|
"name": "Hxml",
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"captures": {
|
||||||
|
"1": {
|
||||||
|
"name": "punctuation.definition.comment.hxml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"match": "(#).*$\\n?",
|
||||||
|
"name": "comment.line.number-sign.hxml"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"begin": "(?<!\\w)(--macro)\\b",
|
||||||
|
"beginCaptures": {
|
||||||
|
"1": {
|
||||||
|
"name": "keyword.other.hxml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"end": "\\n",
|
||||||
|
"patterns": [
|
||||||
|
{
|
||||||
|
"include": "source.hx#block-contents"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"match": "(?<!\\w)(-m|-main|--main|--run)\\b\\s*\\b(?:(([a-z][a-zA-Z0-9]*\\.)*)(_*[A-Z]\\w*))?\\b",
|
||||||
|
"captures": {
|
||||||
|
"1": {
|
||||||
|
"name": "keyword.other.hxml"
|
||||||
|
},
|
||||||
|
"2": {
|
||||||
|
"name": "support.package.hx"
|
||||||
|
},
|
||||||
|
"4": {
|
||||||
|
"name": "entity.name.type.hx"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"match": "(?<!\\w)(-cppia|-cpp?|-js|-as3|-swf-(header|version|lib(-extern)?)|-swf9?|-neko|-python|-php|-cs|-java-lib|-java|-xml|-lua|-hl|-x|-lib|-D|-resource|-exclude|-version|-v|-debug|-prompt|-cmd|-dce\\s+(std|full|no)?|--flash-strict|--no-traces|--flash-use-stage|--neko-source|--gen-hx-classes|-net-lib|-net-std|-c-arg|--each|--next|--display|--no-output|--times|--no-inline|--no-opt|--php-front|--php-lib|--php-prefix|--remap|--help-defines|--help-metas|-help|--help|-java|-cs|--js-modern|--interp|--eval|--dce|--wait|--connect|--cwd|--run).*$",
|
||||||
|
"captures": {
|
||||||
|
"1": {
|
||||||
|
"name": "keyword.other.hxml"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"match": "(?<!\\w)(--js(on)?|--lua|--swf-(header|version|lib(-extern)?)|--swf|--as3|--neko|--php|--cppia|--cpp|--cppia|--cs|--java-lib(-extern)?|--java|--jvm|--python|--hl|-p|--class-path|-L|--library|--define|-r|--resource|--cmd|-C|--verbose|--debug|--prompt|--xml|--json|--net-lib|--net-std|--c-arg|--version|--haxelib-global|-h|--main|--server-connect|--server-listen).*$",
|
||||||
|
"captures": {
|
||||||
|
"1": {
|
||||||
|
"name": "keyword.other.hxml"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"scopeName": "source.hxml",
|
||||||
|
"uuid": "CB1B853A-C4C8-42C3-BA70-1B1605BE51C1"
|
||||||
|
}
|
Loading…
Reference in a new issue