From 133a32d446c90ebcf1fc6591ca41928d911fe2af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lauren=C8=9Biu=20Nicola?= Date: Mon, 21 Dec 2020 18:58:33 +0200 Subject: Remove TextMate grammar It's now included upstream in VS Code --- editors/code/.vscodeignore | 1 - editors/code/package.json | 5 - editors/code/rust.tmGrammar.json | 1140 -------------------------------------- 3 files changed, 1146 deletions(-) delete mode 100644 editors/code/rust.tmGrammar.json diff --git a/editors/code/.vscodeignore b/editors/code/.vscodeignore index 5096ce4da..c1cf00fa0 100644 --- a/editors/code/.vscodeignore +++ b/editors/code/.vscodeignore @@ -4,6 +4,5 @@ !package.json !package-lock.json !ra_syntax_tree.tmGrammar.json -!rust.tmGrammar.json !icon.png !README.md diff --git a/editors/code/package.json b/editors/code/package.json index ad01fea7b..abcc84eda 100644 --- a/editors/code/package.json +++ b/editors/code/package.json @@ -748,11 +748,6 @@ } ], "grammars": [ - { - "language": "rust", - "scopeName": "source.rust", - "path": "rust.tmGrammar.json" - }, { "language": "ra_syntax_tree", "scopeName": "source.ra_syntax_tree", diff --git a/editors/code/rust.tmGrammar.json b/editors/code/rust.tmGrammar.json deleted file mode 100644 index 4759bb116..000000000 --- a/editors/code/rust.tmGrammar.json +++ /dev/null @@ -1,1140 +0,0 @@ -{ - "$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json", - "name": "Rust", - "fileTypes": [ - "rs" - ], - "scopeName": "source.rust", - "patterns": [ - { - "comment": "boxed slice literal", - "begin": "(<)(\\[)", - "beginCaptures": { - "1": { - "name": "punctuation.brackets.angle.rust" - }, - "2": { - "name": "punctuation.brackets.square.rust" - } - }, - "end": ">", - "endCaptures": { - "0": { - "name": "punctuation.brackets.angle.rust" - } - }, - "patterns": [ - { - "include": "#block-comments" - }, - { - "include": "#comments" - }, - { - "include": "#gtypes" - }, - { - "include": "#lvariables" - }, - { - "include": "#lifetimes" - }, - { - "include": "#punctuation" - }, - { - "include": "#types" - } - ] - }, - { - "comment": "macro type metavariables", - "name": "meta.macro.metavariable.type.rust", - "match": "(\\$)((crate)|([A-Z][A-Za-z0-9_]*))((:)(block|expr|ident|item|lifetime|literal|meta|path?|stmt|tt|ty|vis))?", - "captures": { - "1": { - "name": "keyword.operator.macro.dollar.rust" - }, - "3": { - "name": "keyword.other.crate.rust" - }, - "4": { - "name": "entity.name.type.metavariable.rust" - }, - "6": { - "name": "keyword.operator.key-value.rust" - }, - "7": { - "name": "variable.other.metavariable.specifier.rust" - } - }, - "patterns": [ - { - "include": "#keywords" - } - ] - }, - { - "comment": "macro metavariables", - "name": "meta.macro.metavariable.rust", - "match": "(\\$)([a-z][A-Za-z0-9_]*)((:)(block|expr|ident|item|lifetime|literal|meta|path?|stmt|tt|ty|vis))?", - "captures": { - "1": { - "name": "keyword.operator.macro.dollar.rust" - }, - "2": { - "name": "variable.other.metavariable.name.rust" - }, - "4": { - "name": "keyword.operator.key-value.rust" - }, - "5": { - "name": "variable.other.metavariable.specifier.rust" - } - }, - "patterns": [ - { - "include": "#keywords" - } - ] - }, - { - "comment": "macro rules", - "name": "meta.macro.rules.rust", - "match": "\\b(macro_rules!)\\s+(([a-z0-9_]+)|([A-Z][a-z0-9_]*))\\s+(\\{)", - "captures": { - "1": { - "name": "entity.name.function.macro.rules.rust" - }, - "3": { - "name": "entity.name.function.macro.rust" - }, - "4": { - "name": "entity.name.type.macro.rust" - }, - "5": { - "name": "punctuation.brackets.curly.rust" - } - } - }, - { - "comment": "attributes", - "name": "meta.attribute.rust", - "begin": "(#)(\\!?)(\\[)", - "beginCaptures": { - "1": { - "name": "punctuation.definition.attribute.rust" - }, - "2": { - "name": "keyword.operator.attribute.inner.rust" - }, - "3": { - "name": "punctuation.brackets.attribute.rust" - } - }, - "end": "\\]", - "endCaptures": { - "0": { - "name": "punctuation.brackets.attribute.rust" - } - }, - "patterns": [ - { - "include": "#block-comments" - }, - { - "include": "#comments" - }, - { - "include": "#keywords" - }, - { - "include": "#punctuation" - }, - { - "include": "#strings" - }, - { - "include": "#gtypes" - }, - { - "include": "#types" - } - ] - }, - { - "comment": "modules", - "match": "(mod)\\s+((?:r#(?!crate|[Ss]elf|super))?[a-z][A-Za-z0-9_]*)", - "captures": { - "1": { - "name": "storage.type.rust" - }, - "2": { - "name": "entity.name.module.rust" - } - } - }, - { - "comment": "external crate imports", - "name": "meta.import.rust", - "begin": "\\b(extern)\\s+(crate)", - "beginCaptures": { - "1": { - "name": "storage.type.rust" - }, - "2": { - "name": "keyword.other.crate.rust" - } - }, - "end": ";", - "endCaptures": { - "0": { - "name": "punctuation.semi.rust" - } - }, - "patterns": [ - { - "include": "#block-comments" - }, - { - "include": "#comments" - }, - { - "include": "#keywords" - }, - { - "include": "#punctuation" - } - ] - }, - { - "comment": "use statements", - "name": "meta.use.rust", - "begin": "\\b(use)\\s", - "beginCaptures": { - "1": { - "name": "keyword.other.rust" - } - }, - "end": ";", - "endCaptures": { - "0": { - "name": "punctuation.semi.rust" - } - }, - "patterns": [ - { - "include": "#block-comments" - }, - { - "include": "#comments" - }, - { - "include": "#keywords" - }, - { - "include": "#namespaces" - }, - { - "include": "#punctuation" - }, - { - "include": "#types" - }, - { - "include": "#lvariables" - } - ] - }, - { - "include": "#block-comments" - }, - { - "include": "#comments" - }, - { - "include": "#lvariables" - }, - { - "include": "#constants" - }, - { - "include": "#gtypes" - }, - { - "include": "#functions" - }, - { - "include": "#types" - }, - { - "include": "#keywords" - }, - { - "include": "#lifetimes" - }, - { - "include": "#macros" - }, - { - "include": "#namespaces" - }, - { - "include": "#punctuation" - }, - { - "include": "#strings" - }, - { - "include": "#variables" - } - ], - "repository": { - "comments": { - "patterns": [ - { - "comment": "documentation comments", - "name": "comment.line.documentation.rust", - "match": "^\\s*///.*" - }, - { - "comment": "line comments", - "name": "comment.line.double-slash.rust", - "match": "\\s*//.*" - } - ] - }, - "block-comments": { - "patterns": [ - { - "comment": "empty block comments", - "name": "comment.block.rust", - "match": "/\\*\\*/" - }, - { - "comment": "block documentation comments", - "name": "comment.block.documentation.rust", - "begin": "/\\*\\*", - "end": "\\*/", - "patterns": [ - { - "include": "#block-comments" - } - ] - }, - { - "comment": "block comments", - "name": "comment.block.rust", - "begin": "/\\*(?!\\*)", - "end": "\\*/", - "patterns": [ - { - "include": "#block-comments" - } - ] - } - ] - }, - "constants": { - "patterns": [ - { - "comment": "ALL CAPS constants", - "name": "constant.other.caps.rust", - "match": "\\b[A-Z]{2}[A-Z0-9_]*\\b" - }, - { - "comment": "constant declarations", - "match": "\\b(const)\\s+([A-Z][A-Za-z0-9_]*)\\b", - "captures": { - "1": { - "name": "storage.type.rust" - }, - "2": { - "name": "constant.other.caps.rust" - } - } - }, - { - "comment": "decimal integers and floats", - "name": "constant.numeric.decimal.rust", - "match": "\\b\\d[\\d_]*(\\.?)[\\d_]*(?:(E)([+-])([\\d_]+))?(f32|f64|i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\b", - "captures": { - "1": { - "name": "punctuation.separator.dot.decimal.rust" - }, - "2": { - "name": "keyword.operator.exponent.rust" - }, - "3": { - "name": "keyword.operator.exponent.sign.rust" - }, - "4": { - "name": "constant.numeric.decimal.exponent.mantissa.rust" - }, - "5": { - "name": "entity.name.type.numeric.rust" - } - } - }, - { - "comment": "hexadecimal integers", - "name": "constant.numeric.hex.rust", - "match": "\\b0x[\\da-fA-F_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\b", - "captures": { - "1": { - "name": "entity.name.type.numeric.rust" - } - } - }, - { - "comment": "octal integers", - "name": "constant.numeric.oct.rust", - "match": "\\b0o[0-7_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\b", - "captures": { - "1": { - "name": "entity.name.type.numeric.rust" - } - } - }, - { - "comment": "binary integers", - "name": "constant.numeric.bin.rust", - "match": "\\b0b[01_]+(i128|i16|i32|i64|i8|isize|u128|u16|u32|u64|u8|usize)?\\b", - "captures": { - "1": { - "name": "entity.name.type.numeric.rust" - } - } - }, - { - "comment": "booleans", - "name": "constant.language.bool.rust", - "match": "\\b(true|false)\\b" - } - ] - }, - "escapes": { - "comment": "escapes: ASCII, byte, Unicode, quote, regex", - "name": "constant.character.escape.rust", - "match": "(\\\\)(?:(?:(x[0-7][0-7a-fA-F])|(u(\\{)[\\da-fA-F]{4,6}(\\}))|.))", - "captures": { - "1": { - "name": "constant.character.escape.backslash.rust" - }, - "2": { - "name": "constant.character.escape.bit.rust" - }, - "3": { - "name": "constant.character.escape.unicode.rust" - }, - "4": { - "name": "constant.character.escape.unicode.punctuation.rust" - }, - "5": { - "name": "constant.character.escape.unicode.punctuation.rust" - } - } - }, - "functions": { - "patterns": [ - { - "comment": "pub as a function", - "match": "\\b(pub)(\\()", - "captures": { - "1": { - "name": "keyword.other.rust" - }, - "2": { - "name": "punctuation.brackets.round.rust" - } - } - }, - { - "comment": "function definition", - "name": "meta.function.definition.rust", - "begin": "\\b(fn)\\s+((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)((\\()|(<))", - "beginCaptures": { - "1": { - "name": "keyword.other.fn.rust" - }, - "2": { - "name": "entity.name.function.rust" - }, - "4": { - "name": "punctuation.brackets.round.rust" - }, - "5": { - "name": "punctuation.brackets.angle.rust" - } - }, - "end": "\\{|;", - "endCaptures": { - "0": { - "name": "punctuation.brackets.curly.rust" - } - }, - "patterns": [ - { - "include": "#block-comments" - }, - { - "include": "#comments" - }, - { - "include": "#keywords" - }, - { - "include": "#lvariables" - }, - { - "include": "#constants" - }, - { - "include": "#gtypes" - }, - { - "include": "#functions" - }, - { - "include": "#lifetimes" - }, - { - "include": "#macros" - }, - { - "include": "#namespaces" - }, - { - "include": "#punctuation" - }, - { - "include": "#strings" - }, - { - "include": "#types" - }, - { - "include": "#variables" - } - ] - }, - { - "comment": "function/method calls, chaining", - "name": "meta.function.call.rust", - "begin": "((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)(\\()", - "beginCaptures": { - "1": { - "name": "entity.name.function.rust" - }, - "2": { - "name": "punctuation.brackets.round.rust" - } - }, - "end": "\\)", - "endCaptures": { - "0": { - "name": "punctuation.brackets.round.rust" - } - }, - "patterns": [ - { - "include": "#block-comments" - }, - { - "include": "#comments" - }, - { - "include": "#keywords" - }, - { - "include": "#lvariables" - }, - { - "include": "#constants" - }, - { - "include": "#gtypes" - }, - { - "include": "#functions" - }, - { - "include": "#lifetimes" - }, - { - "include": "#macros" - }, - { - "include": "#namespaces" - }, - { - "include": "#punctuation" - }, - { - "include": "#strings" - }, - { - "include": "#types" - }, - { - "include": "#variables" - } - ] - }, - { - "comment": "function/method calls with turbofish", - "name": "meta.function.call.rust", - "begin": "((?:r#(?!crate|[Ss]elf|super))?[A-Za-z0-9_]+)(?=::<.*>\\()", - "beginCaptures": { - "1": { - "name": "entity.name.function.rust" - } - }, - "end": "\\)", - "endCaptures": { - "0": { - "name": "punctuation.brackets.round.rust" - } - }, - "patterns": [ - { - "include": "#block-comments" - }, - { - "include": "#comments" - }, - { - "include": "#keywords" - }, - { - "include": "#lvariables" - }, - { - "include": "#constants" - }, - { - "include": "#gtypes" - }, - { - "include": "#functions" - }, - { - "include": "#lifetimes" - }, - { - "include": "#macros" - }, - { - "include": "#namespaces" - }, - { - "include": "#punctuation" - }, - { - "include": "#strings" - }, - { - "include": "#types" - }, - { - "include": "#variables" - } - ] - } - ] - }, - "keywords": { - "patterns": [ - { - "comment": "control flow keywords", - "name": "keyword.control.rust", - "match": "\\b(await|break|continue|do|else|for|if|loop|match|return|try|while|yield)\\b" - }, - { - "comment": "storage keywords", - "name": "storage.type.rust", - "match": "\\b(const|enum|extern|let|macro|mod|struct|trait|type)\\b" - }, - { - "comment": "storage modifiers", - "name": "storage.modifier.rust", - "match": "\\b(abstract|static)\\b" - }, - { - "comment": "other keywords", - "name": "keyword.other.rust", - "match": "\\b(as|async|become|box|dyn|move|final|impl|in|override|priv|pub|ref|typeof|union|unsafe|unsized|use|virtual|where)\\b" - }, - { - "comment": "fn", - "name": "keyword.other.fn.rust", - "match": "\\bfn\\b" - }, - { - "comment": "crate", - "name": "keyword.other.crate.rust", - "match": "\\bcrate\\b" - }, - { - "comment": "mut", - "name": "storage.modifier.mut.rust", - "match": "\\bmut\\b" - }, - { - "comment": "logical operators", - "name": "keyword.operator.logical.rust", - "match": "(\\^|\\||\\|\\||&&|<<|>>|!)(?!=)" - }, - { - "comment": "logical AND, borrow references", - "name": "keyword.operator.borrow.and.rust", - "match": "&(?![&=])" - }, - { - "comment": "assignment operators", - "name": "keyword.operator.assignment.rust", - "match": "(\\+=|-=|\\*=|/=|%=|\\^=|&=|\\|=|<<=|>>=)" - }, - { - "comment": "single equal", - "name": "keyword.operator.assignment.equal.rust", - "match": "(?])=(?!=|>)" - }, - { - "comment": "comparison operators", - "name": "keyword.operator.comparison.rust", - "match": "(=(=)?(?!>)|!=|<=|(?=)" - }, - { - "comment": "math operators", - "name": "keyword.operator.math.rust", - "match": "(([+%]|(\\*(?!\\w)))(?!=))|(-(?!>))|(/(?!/))" - }, - { - "comment": "less than, greater than (special case)", - "match": "(?:\\b|(?:(\\))|(\\])|(\\})))[ \\t]+([<>])[ \\t]+(?:\\b|(?:(\\()|(\\[)|(\\{)))", - "captures": { - "1": { - "name": "punctuation.brackets.round.rust" - }, - "2": { - "name": "punctuation.brackets.square.rust" - }, - "3": { - "name": "punctuation.brackets.curly.rust" - }, - "4": { - "name": "keyword.operator.comparison.rust" - }, - "5": { - "name": "punctuation.brackets.round.rust" - }, - "6": { - "name": "punctuation.brackets.square.rust" - }, - "7": { - "name": "punctuation.brackets.curly.rust" - } - } - }, - { - "comment": "namespace operator", - "name": "keyword.operator.namespace.rust", - "match": "::" - }, - { - "comment": "dereference asterisk", - "match": "(\\*)(?=\\w+)", - "captures": { - "1": { - "name": "keyword.operator.dereference.rust" - } - } - }, - { - "comment": "subpattern binding", - "name": "keyword.operator.subpattern.rust", - "match": "@" - }, - { - "comment": "dot access", - "name": "keyword.operator.access.dot.rust", - "match": "\\.(?!\\.)" - }, - { - "comment": "ranges, range patterns", - "name": "keyword.operator.range.rust", - "match": "\\.{2}(=|\\.)?" - }, - { - "comment": "colon", - "name": "keyword.operator.key-value.rust", - "match": ":(?!:)" - }, - { - "comment": "dashrocket, skinny arrow", - "name": "keyword.operator.arrow.skinny.rust", - "match": "->" - }, - { - "comment": "hashrocket, fat arrow", - "name": "keyword.operator.arrow.fat.rust", - "match": "=>" - }, - { - "comment": "dollar macros", - "name": "keyword.operator.macro.dollar.rust", - "match": "\\$" - }, - { - "comment": "question mark operator, questionably sized, macro kleene matcher", - "name": "keyword.operator.question.rust", - "match": "\\?" - } - ] - }, - "interpolations": { - "comment": "curly brace interpolations", - "name": "meta.interpolation.rust", - "match": "({)[^\"{}]*(})", - "captures": { - "1": { - "name": "punctuation.definition.interpolation.rust" - }, - "2": { - "name": "punctuation.definition.interpolation.rust" - } - } - }, - "lifetimes": { - "patterns": [ - { - "comment": "named lifetime parameters", - "match": "(['])([a-zA-Z_][0-9a-zA-Z_]*)(?!['])\\b", - "captures": { - "1": { - "name": "punctuation.definition.lifetime.rust" - }, - "2": { - "name": "entity.name.type.lifetime.rust" - } - } - }, - { - "comment": "borrowing references to named lifetimes", - "match": "(\\&)(['])([a-zA-Z_][0-9a-zA-Z_]*)(?!['])\\b", - "captures": { - "1": { - "name": "keyword.operator.borrow.rust" - }, - "2": { - "name": "punctuation.definition.lifetime.rust" - }, - "3": { - "name": "entity.name.type.lifetime.rust" - } - } - } - ] - }, - "macros": { - "patterns": [ - { - "comment": "macros", - "name": "meta.macro.rust", - "match": "(([a-z_][A-Za-z0-9_]*!)|([A-Z_][A-Za-z0-9_]*!))", - "captures": { - "2": { - "name": "entity.name.function.macro.rust" - }, - "3": { - "name": "entity.name.type.macro.rust" - } - } - } - ] - }, - "namespaces": { - "patterns": [ - { - "comment": "namespace (non-type, non-function path segment)", - "match": "(?", - "endCaptures": { - "0": { - "name": "punctuation.brackets.angle.rust" - } - }, - "patterns": [ - { - "include": "#block-comments" - }, - { - "include": "#comments" - }, - { - "include": "#keywords" - }, - { - "include": "#lvariables" - }, - { - "include": "#lifetimes" - }, - { - "include": "#punctuation" - }, - { - "include": "#types" - }, - { - "include": "#variables" - } - ] - }, - { - "comment": "primitive types", - "name": "entity.name.type.primitive.rust", - "match": "\\b(bool|char|str)\\b" - }, - { - "comment": "trait declarations", - "match": "\\b(trait)\\s+([A-Z][A-Za-z0-9]*)\\b", - "captures": { - "1": { - "name": "storage.type.rust" - }, - "2": { - "name": "entity.name.type.trait.rust" - } - } - }, - { - "comment": "struct declarations", - "match": "\\b(struct)\\s+([A-Z][A-Za-z0-9]*)\\b", - "captures": { - "1": { - "name": "storage.type.rust" - }, - "2": { - "name": "entity.name.type.struct.rust" - } - } - }, - { - "comment": "enum declarations", - "match": "\\b(enum)\\s+([A-Z][A-Za-z0-9_]*)\\b", - "captures": { - "1": { - "name": "storage.type.rust" - }, - "2": { - "name": "entity.name.type.enum.rust" - } - } - }, - { - "comment": "type declarations", - "match": "\\b(type)\\s+([A-Z][A-Za-z0-9_]*)\\b", - "captures": { - "1": { - "name": "storage.type.rust" - }, - "2": { - "name": "entity.name.type.declaration.rust" - } - } - }, - { - "comment": "types", - "name": "entity.name.type.rust", - "match": "\\b[A-Z][A-Za-z0-9]*\\b(?!!)" - } - ] - }, - "gtypes": { - "patterns": [ - { - "comment": "option types", - "name": "entity.name.type.option.rust", - "match": "\\b(Some|None)\\b" - }, - { - "comment": "result types", - "name": "entity.name.type.result.rust", - "match": "\\b(Ok|Err)\\b" - } - ] - }, - "punctuation": { - "patterns": [ - { - "comment": "comma", - "name": "punctuation.comma.rust", - "match": "," - }, - { - "comment": "curly braces", - "name": "punctuation.brackets.curly.rust", - "match": "[{}]" - }, - { - "comment": "parentheses, round brackets", - "name": "punctuation.brackets.round.rust", - "match": "[()]" - }, - { - "comment": "semicolon", - "name": "punctuation.semi.rust", - "match": ";" - }, - { - "comment": "square brackets", - "name": "punctuation.brackets.square.rust", - "match": "[\\[\\]]" - }, - { - "comment": "angle brackets", - "name": "punctuation.brackets.angle.rust", - "match": "(?]" - } - ] - }, - "strings": { - "patterns": [ - { - "comment": "double-quoted strings and byte strings", - "name": "string.quoted.double.rust", - "begin": "(b?)(\")", - "beginCaptures": { - "1": { - "name": "string.quoted.byte.raw.rust" - }, - "2": { - "name": "punctuation.definition.string.rust" - } - }, - "end": "\"", - "endCaptures": { - "0": { - "name": "punctuation.definition.string.rust" - } - }, - "patterns": [ - { - "include": "#escapes" - }, - { - "include": "#interpolations" - } - ] - }, - { - "comment": "double-quoted raw strings and raw byte strings", - "name": "string.quoted.double.rust", - "begin": "(b?r)(#*)(\")", - "beginCaptures": { - "1": { - "name": "string.quoted.byte.raw.rust" - }, - "2": { - "name": "punctuation.definition.string.raw.rust" - }, - "3": { - "name": "punctuation.definition.string.rust" - } - }, - "end": "(\")(\\2)", - "endCaptures": { - "1": { - "name": "punctuation.definition.string.rust" - }, - "2": { - "name": "punctuation.definition.string.raw.rust" - } - } - }, - { - "comment": "characters and bytes", - "name": "string.quoted.single.char.rust", - "begin": "(b)?(')", - "beginCaptures": { - "1": { - "name": "string.quoted.byte.raw.rust" - }, - "2": { - "name": "punctuation.definition.char.rust" - } - }, - "end": "'", - "endCaptures": { - "0": { - "name": "punctuation.definition.char.rust" - } - }, - "patterns": [ - { - "include": "#escapes" - } - ] - } - ] - }, - "lvariables": { - "patterns": [ - { - "comment": "self", - "name": "variable.language.self.rust", - "match": "\\b[Ss]elf\\b" - }, - { - "comment": "super", - "name": "variable.language.super.rust", - "match": "\\bsuper\\b" - } - ] - }, - "variables": { - "patterns": [ - { - "comment": "variables", - "name": "variable.other.rust", - "match": "\\b(?