2018-07-30 21:58:49 +03:00
{
2020-01-08 17:21:18 +01:00
"name" : "rust-analyzer" ,
"displayName" : "rust-analyzer" ,
2018-12-08 20:56:31 +00:00
"description" : "An alternative rust language server to the RLS" ,
"preview" : true ,
"private" : true ,
2020-01-08 17:21:18 +01:00
"icon" : "icon.png" ,
2020-03-19 09:32:57 +01:00
"version" : "0.4.0-dev" ,
2020-03-20 12:50:50 +01:00
"releaseTag" : null ,
2018-08-27 22:52:43 +03:00
"publisher" : "matklad" ,
"repository" : {
2020-02-02 12:16:41 +02:00
"url" : "https://github.com/rust-analyzer/rust-analyzer.git" ,
"type" : "git"
2018-08-27 22:52:43 +03:00
} ,
2020-03-02 14:27:26 +01:00
"homepage" : "https://rust-analyzer.github.io/" ,
"license" : "MIT OR Apache-2.0" ,
"keywords" : [
"rust"
] ,
2018-08-27 22:52:43 +03:00
"categories" : [
2020-03-02 14:27:26 +01:00
"Programming Languages"
2018-08-11 01:04:09 +03:00
] ,
2018-08-27 22:52:43 +03:00
"engines" : {
2020-03-10 13:31:13 -04:00
"vscode" : "^1.43.0"
2018-08-27 22:52:43 +03:00
} ,
2020-02-26 08:42:26 -05:00
"enableProposedApi" : true ,
2018-08-27 22:52:43 +03:00
"scripts" : {
2020-02-03 18:03:36 +01:00
"vscode:prepublish" : "tsc && rollup -c" ,
2020-02-17 15:33:31 +01:00
"package" : "vsce package -o rust-analyzer.vsix" ,
2020-02-03 18:03:36 +01:00
"watch" : "tsc --watch" ,
2020-02-27 10:40:53 +01:00
"lint" : "tsfmt --verify && eslint -c .eslintrc.js --ext ts ./src" ,
2020-02-27 11:09:48 +01:00
"fix" : " tsfmt -r && eslint -c .eslintrc.js --ext ts ./src --fix"
2018-08-27 22:52:43 +03:00
} ,
"dependencies" : {
2020-03-03 08:05:59 -05:00
"jsonc-parser" : "^2.2.1" ,
2020-02-07 03:11:24 +02:00
"node-fetch" : "^2.6.0" ,
2020-03-20 13:07:43 +01:00
"vscode-languageclient" : "6.1.3"
2018-08-27 22:52:43 +03:00
} ,
"devDependencies" : {
2020-02-03 16:49:25 +01:00
"@rollup/plugin-commonjs" : "^11.0.2" ,
"@rollup/plugin-node-resolve" : "^7.1.1" ,
2020-03-16 14:57:32 +01:00
"@types/node" : "^12.12.30" ,
2020-03-03 08:05:59 -05:00
"@types/node-fetch" : "^2.5.5" ,
2020-03-10 13:31:13 -04:00
"@types/vscode" : "^1.43.0" ,
2020-03-18 10:24:39 -06:00
"@typescript-eslint/eslint-plugin" : "^2.24.0" ,
"@typescript-eslint/parser" : "^2.24.0" ,
2020-02-17 23:42:25 +01:00
"eslint" : "^6.8.0" ,
2020-03-18 10:24:39 -06:00
"rollup" : "^2.1.0" ,
2020-03-03 08:05:59 -05:00
"tslib" : "^1.11.1" ,
"typescript" : "^3.8.3" ,
2020-02-07 03:11:24 +02:00
"typescript-formatter" : "^7.2.2" ,
2020-03-03 08:05:59 -05:00
"vsce" : "^1.74.0"
2019-12-30 15:08:38 +01:00
} ,
2018-08-27 22:52:43 +03:00
"activationEvents" : [
2019-01-29 17:08:02 +00:00
"onLanguage:rust" ,
"onCommand:rust-analyzer.analyzerStatus" ,
2019-03-13 16:14:30 +03:00
"onCommand:rust-analyzer.collectGarbage" ,
"workspaceContains:**/Cargo.toml"
2018-08-13 13:46:05 +03:00
] ,
2019-12-30 12:19:58 +01:00
"main" : "./out/main" ,
2018-08-27 22:52:43 +03:00
"contributes" : {
"taskDefinitions" : [
{
"type" : "cargo" ,
"required" : [
"command"
] ,
"properties" : {
"label" : {
"type" : "string"
} ,
"command" : {
"type" : "string"
} ,
"args" : {
"type" : "array"
} ,
"env" : {
"type" : "object"
}
}
}
] ,
"commands" : [
{
2019-01-28 14:43:07 +03:00
"command" : "rust-analyzer.syntaxTree" ,
2019-03-03 21:21:40 +02:00
"title" : "Show Syntax Tree" ,
2019-01-29 17:16:14 +00:00
"category" : "Rust Analyzer"
2018-08-27 22:52:43 +03:00
} ,
2019-11-20 01:06:10 +08:00
{
"command" : "rust-analyzer.expandMacro" ,
"title" : "Expand macro recursively" ,
"category" : "Rust Analyzer"
} ,
2018-08-27 22:52:43 +03:00
{
2019-01-28 14:43:07 +03:00
"command" : "rust-analyzer.matchingBrace" ,
2019-01-29 17:16:14 +00:00
"title" : "Find matching brace" ,
"category" : "Rust Analyzer"
2018-08-27 22:52:43 +03:00
} ,
{
2019-01-28 14:43:07 +03:00
"command" : "rust-analyzer.parentModule" ,
2019-01-29 17:16:14 +00:00
"title" : "Locate parent module" ,
"category" : "Rust Analyzer"
2018-08-27 22:52:43 +03:00
} ,
{
2019-01-28 14:43:07 +03:00
"command" : "rust-analyzer.joinLines" ,
2019-01-29 17:16:14 +00:00
"title" : "Join lines" ,
"category" : "Rust Analyzer"
2018-08-27 22:52:43 +03:00
} ,
{
2019-01-28 14:43:07 +03:00
"command" : "rust-analyzer.run" ,
2019-01-29 17:16:14 +00:00
"title" : "Run" ,
"category" : "Rust Analyzer"
2019-01-23 00:15:03 +03:00
} ,
{
2019-01-28 14:43:07 +03:00
"command" : "rust-analyzer.analyzerStatus" ,
2019-01-29 17:16:14 +00:00
"title" : "Status" ,
"category" : "Rust Analyzer"
2019-01-25 19:11:58 +03:00
} ,
{
2019-01-28 14:43:07 +03:00
"command" : "rust-analyzer.collectGarbage" ,
2019-01-29 17:16:14 +00:00
"title" : "Run garbage collection" ,
"category" : "Rust Analyzer"
2019-04-15 21:41:27 +02:00
} ,
{
"command" : "rust-analyzer.reload" ,
"title" : "Restart server" ,
"category" : "Rust Analyzer"
2020-02-02 02:21:04 +01:00
} ,
{
"command" : "rust-analyzer.onEnter" ,
"title" : "Enhanced enter key" ,
"category" : "Rust Analyzer"
2020-02-10 22:45:38 +00:00
} ,
{
"command" : "rust-analyzer.ssr" ,
"title" : "Structural Search Replace" ,
"category" : "Rust Analyzer"
2020-02-21 10:04:03 +08:00
} ,
{
"command" : "rust-analyzer.serverVersion" ,
"title" : "Show RA Version" ,
"category" : "Rust Analyzer"
2018-08-27 22:52:43 +03:00
}
] ,
"keybindings" : [
{
2019-01-28 14:43:07 +03:00
"command" : "rust-analyzer.parentModule" ,
2018-08-27 22:52:43 +03:00
"key" : "ctrl+u" ,
"when" : "editorTextFocus && editorLangId == rust"
} ,
{
2019-01-28 14:43:07 +03:00
"command" : "rust-analyzer.matchingBrace" ,
2018-08-27 22:52:43 +03:00
"key" : "ctrl+shift+m" ,
"when" : "editorTextFocus && editorLangId == rust"
} ,
{
2019-01-28 14:43:07 +03:00
"command" : "rust-analyzer.joinLines" ,
2018-08-27 22:52:43 +03:00
"key" : "ctrl+shift+j" ,
"when" : "editorTextFocus && editorLangId == rust"
} ,
2020-02-02 15:58:53 +01:00
{
"command" : "rust-analyzer.onEnter" ,
"key" : "enter" ,
2020-02-25 23:20:07 +02:00
"when" : "editorTextFocus && !suggestWidgetVisible && editorLangId == rust && !vim.active || vim.mode == 'Insert' && editorTextFocus && !suggestWidgetVisible && editorLangId == rust"
2018-08-27 22:52:43 +03:00
}
2018-08-13 13:46:05 +03:00
] ,
2018-09-29 21:27:41 +02:00
"configuration" : {
"type" : "object" ,
2018-10-06 22:53:12 +02:00
"title" : "Rust Analyzer" ,
2018-09-29 21:27:41 +02:00
"properties" : {
2020-02-26 16:03:30 +01:00
"rust-analyzer.highlighting.semanticTokens" : {
"type" : "boolean" ,
"default" : false ,
"description" : "Use proposed semantic tokens API for syntax highlighting"
} ,
2019-01-28 14:43:07 +03:00
"rust-analyzer.highlightingOn" : {
2018-09-29 21:27:41 +02:00
"type" : "boolean" ,
2019-02-26 08:56:11 +02:00
"default" : false ,
2018-09-29 21:27:41 +02:00
"description" : "Highlight Rust code (overrides built-in syntax highlighting)"
2018-12-20 12:05:41 +00:00
} ,
2019-05-27 11:26:15 +02:00
"rust-analyzer.rainbowHighlightingOn" : {
"type" : "boolean" ,
"default" : false ,
"description" : "When highlighting Rust code, use a unique color per identifier"
} ,
2019-08-22 14:44:16 +03:00
"rust-analyzer.featureFlags" : {
"type" : "object" ,
"default" : { } ,
2020-02-27 22:04:57 +02:00
"description" : "Fine grained feature flags to disable annoying features" ,
"properties" : {
"lsp.diagnostics" : {
"type" : "boolean" ,
2020-03-08 22:46:42 +01:00
"markdownDescription" : "Whether to show diagnostics from `cargo check`"
2020-02-27 22:04:57 +02:00
} ,
"completion.insertion.add-call-parenthesis" : {
"type" : "boolean" ,
"description" : "Whether to add parenthesis when completing functions"
} ,
2020-03-06 18:38:56 +01:00
"completion.insertion.add-argument-snippets" : {
2020-03-06 17:51:10 +01:00
"type" : "boolean" ,
"description" : "Whether to add argument snippets when completing functions"
} ,
2020-02-27 22:04:57 +02:00
"completion.enable-postfix" : {
"type" : "boolean" ,
2020-03-08 22:46:42 +01:00
"markdownDescription" : "Whether to show postfix snippets like `dbg`, `if`, `not`, etc."
2020-02-27 22:04:57 +02:00
} ,
2020-03-06 18:32:40 +01:00
"call-info.full" : {
"type" : "boolean" ,
"description" : "Show function name and docs in parameter hints"
} ,
2020-02-27 22:04:57 +02:00
"notifications.workspace-loaded" : {
"type" : "boolean" ,
2020-03-08 22:46:42 +01:00
"markdownDescription" : "Whether to show `workspace loaded` message"
2020-02-27 22:04:57 +02:00
} ,
"notifications.cargo-toml-not-found" : {
"type" : "boolean" ,
2020-03-08 22:46:42 +01:00
"markdownDescription" : "Whether to show `can't find Cargo.toml` error message"
2020-02-27 22:04:57 +02:00
}
}
2019-03-06 11:34:38 +02:00
} ,
2020-03-09 19:56:51 +02:00
"rust-analyzer.updates.channel" : {
"type" : "string" ,
"enum" : [
"stable" ,
"nightly"
] ,
"default" : "stable" ,
"markdownEnumDescriptions" : [
"`\"stable\"` updates are shipped weekly, they don't contain cutting-edge features from VSCode proposed APIs but have less bugs in general" ,
2020-03-17 12:44:31 +01:00
"`\"nightly\"` updates are shipped daily (extension updates automatically by downloading artifacts directly from GitHub), they contain cutting-edge features and latest bug fixes. These releases help us get your feedback very quickly and speed up rust-analyzer development **drastically**"
2020-03-09 19:56:51 +02:00
] ,
"markdownDescription" : "Choose `\"nightly\"` updates to get the latest features and bug fixes every day. While `\"stable\"` releases occur weekly and don't contain cutting-edge features from VSCode proposed APIs"
} ,
2020-03-09 10:59:36 +02:00
"rust-analyzer.updates.askBeforeDownload" : {
2020-03-07 23:59:33 +02:00
"type" : "boolean" ,
2020-03-08 18:58:02 +02:00
"default" : true ,
"description" : "Whether to ask for permission before downloading any files from the Internet"
2020-03-07 23:59:33 +02:00
} ,
2020-02-18 12:35:44 +01:00
"rust-analyzer.serverPath" : {
2019-01-05 17:28:41 +02:00
"type" : [
2020-02-08 04:22:44 +02:00
"null" ,
2019-01-05 17:28:41 +02:00
"string"
] ,
2020-02-08 04:22:44 +02:00
"default" : null ,
2020-03-09 19:56:51 +02:00
"description" : "Path to rust-analyzer executable (points to bundled binary by default). If this is set, then \"rust-analyzer.updates.channel\" setting is not used"
2019-01-05 17:28:41 +02:00
} ,
2019-08-06 13:34:28 +02:00
"rust-analyzer.excludeGlobs" : {
"type" : "array" ,
2020-02-13 22:47:31 +02:00
"items" : {
"type" : "string"
} ,
2019-08-21 17:30:58 +03:00
"default" : [ ] ,
2019-08-06 13:34:28 +02:00
"description" : "Paths to exclude from analysis"
} ,
2020-02-17 11:44:58 +03:00
"rust-analyzer.rustfmtArgs" : {
"type" : "array" ,
"items" : {
"type" : "string"
} ,
"default" : [ ] ,
"description" : "Additional arguments to rustfmt"
} ,
2019-09-06 16:25:24 +03:00
"rust-analyzer.useClientWatching" : {
"type" : "boolean" ,
2019-12-17 12:41:44 +01:00
"default" : true ,
2019-09-06 16:25:24 +03:00
"description" : "client provided file watching instead of notify watching."
} ,
2019-12-25 20:23:44 +01:00
"rust-analyzer.cargo-watch.enable" : {
"type" : "boolean" ,
"default" : true ,
2020-03-11 12:32:24 +01:00
"markdownDescription" : "Run specified `cargo-watch` command for diagnostics on save"
2019-12-25 20:23:44 +01:00
} ,
"rust-analyzer.cargo-watch.arguments" : {
2019-10-17 15:22:39 +02:00
"type" : "array" ,
2020-02-13 22:47:31 +02:00
"items" : {
"type" : "string"
} ,
2020-03-08 22:46:42 +01:00
"markdownDescription" : "`cargo-watch` arguments. (e.g: `--features=\"shumway,pdf\"` will run as `cargo watch -x \"check --features=\"shumway,pdf\"\"` )" ,
2019-10-17 15:22:39 +02:00
"default" : [ ]
} ,
2019-12-25 20:23:44 +01:00
"rust-analyzer.cargo-watch.command" : {
2019-12-25 16:50:38 +01:00
"type" : "string" ,
2020-03-08 22:46:42 +01:00
"markdownDescription" : "`cargo-watch` command. (e.g: `clippy` will run as `cargo watch -x clippy` )" ,
2019-12-25 16:50:38 +01:00
"default" : "check"
2019-12-15 23:02:13 +05:30
} ,
2019-12-25 20:23:44 +01:00
"rust-analyzer.cargo-watch.allTargets" : {
"type" : "boolean" ,
2020-03-08 22:46:42 +01:00
"markdownDescription" : "Check all targets and tests (will be passed as `--all-targets`)" ,
2019-12-25 20:23:44 +01:00
"default" : true
} ,
2019-01-28 14:43:07 +03:00
"rust-analyzer.trace.server" : {
2018-12-20 12:05:41 +00:00
"type" : "string" ,
"scope" : "window" ,
"enum" : [
"off" ,
"messages" ,
"verbose"
] ,
2019-04-02 14:43:02 +08:00
"enumDescriptions" : [
"No traces" ,
"Error only" ,
"Full log"
] ,
2018-12-20 12:05:41 +00:00
"default" : "off" ,
2020-02-18 12:33:16 +01:00
"description" : "Trace requests to the rust-analyzer"
2019-04-02 13:07:40 +08:00
} ,
2020-02-21 15:59:46 +01:00
"rust-analyzer.trace.extension" : {
"description" : "Enable logging of VS Code extensions itself" ,
"type" : "boolean" ,
"default" : false
} ,
2019-06-07 20:49:29 +03:00
"rust-analyzer.lruCapacity" : {
2020-02-17 11:44:58 +03:00
"type" : [
"null" ,
"integer"
] ,
2019-06-07 20:49:29 +03:00
"default" : null ,
2020-02-16 18:00:49 +02:00
"minimum" : 0 ,
"exclusiveMinimum" : true ,
2019-06-07 20:49:29 +03:00
"description" : "Number of syntax trees rust-analyzer keeps in memory"
2019-07-23 16:38:21 +03:00
} ,
2020-03-11 20:14:39 -07:00
"rust-analyzer.inlayHints.typeHints" : {
2019-07-23 16:38:21 +03:00
"type" : "boolean" ,
"default" : true ,
2020-03-11 20:14:39 -07:00
"description" : "Whether to show inlay type hints"
2019-10-18 13:40:03 +02:00
} ,
2020-03-11 20:14:39 -07:00
"rust-analyzer.inlayHints.parameterHints" : {
"type" : "boolean" ,
"default" : true ,
"description" : "Whether to show function parameter name inlay hints at the call site"
} ,
"rust-analyzer.inlayHints.maxLength" : {
2020-02-17 11:44:58 +03:00
"type" : [
"null" ,
"integer"
] ,
2019-10-18 13:40:03 +02:00
"default" : 20 ,
2020-02-16 16:48:17 +02:00
"minimum" : 0 ,
"exclusiveMinimum" : true ,
2019-10-18 13:40:03 +02:00
"description" : "Maximum length for inlay hints"
2019-12-13 18:16:34 +08:00
} ,
"rust-analyzer.cargoFeatures.noDefaultFeatures" : {
"type" : "boolean" ,
"default" : false ,
2020-03-08 22:46:42 +01:00
"markdownDescription" : "Do not activate the `default` feature"
2019-12-13 18:16:34 +08:00
} ,
"rust-analyzer.cargoFeatures.allFeatures" : {
"type" : "boolean" ,
2019-12-14 00:48:47 +08:00
"default" : true ,
2019-12-13 18:16:34 +08:00
"description" : "Activate all available features"
} ,
"rust-analyzer.cargoFeatures.features" : {
"type" : "array" ,
2020-02-13 22:47:31 +02:00
"items" : {
"type" : "string"
} ,
2019-12-13 18:16:34 +08:00
"default" : [ ] ,
"description" : "List of features to activate"
2020-03-16 13:43:29 +01:00
} ,
"rust-analyzer.cargoFeatures.loadOutDirsFromCheck" : {
"type" : "boolean" ,
"default" : false ,
"markdownDescription" : "Run `cargo check` on startup to get the correct value for package OUT_DIRs"
2018-09-29 21:27:41 +02:00
}
}
} ,
2018-12-30 18:24:07 +01:00
"problemPatterns" : [
2018-08-27 22:52:43 +03:00
{
"name" : "rustc" ,
2018-12-30 18:24:07 +01:00
"patterns" : [
2018-08-27 22:52:43 +03:00
{
2018-12-30 18:24:07 +01:00
"regexp" : "^(warning|warn|error)(?:\\[(.*?)\\])?: (.*)$" ,
2018-08-27 22:52:43 +03:00
"severity" : 1 ,
2018-12-30 18:24:07 +01:00
"code" : 2 ,
"message" : 3
2018-08-27 22:52:43 +03:00
} ,
{
2018-12-30 18:24:07 +01:00
"regexp" : "^[\\s->=]*(.*?):(\\d*):(\\d*)\\s*$" ,
"file" : 1 ,
"line" : 2 ,
"column" : 3
2018-08-27 22:52:43 +03:00
}
]
2019-12-15 17:12:52 +01:00
} ,
{
"name" : "rustc-json" ,
2019-12-15 17:19:41 +01:00
"patterns" : [
{
"regexp" : "^.*\"message\":{\"message\":\"([^\"]*).*?\"file_name\":\"([^\"]+).*?\"line_start\":(\\d+).*?\"line_end\":(\\d+).*?\"column_start\":(\\d+).*?\"column_end\":(\\d+).*}$" ,
"message" : 1 ,
"file" : 2 ,
"line" : 3 ,
"endLine" : 4 ,
"column" : 5 ,
"endColumn" : 6
}
]
2018-08-27 22:52:43 +03:00
}
2018-12-30 18:24:07 +01:00
] ,
"problemMatchers" : [
{
"name" : "rustc" ,
"fileLocation" : [
"relative" ,
"${workspaceRoot}"
] ,
2019-02-18 13:12:54 -05:00
"pattern" : "$rustc"
2019-04-14 12:45:36 +02:00
} ,
2019-12-15 17:12:52 +01:00
{
"name" : "rustc-json" ,
"fileLocation" : [
"relative" ,
"${workspaceRoot}"
] ,
"pattern" : "$rustc-json"
} ,
2019-04-14 12:45:36 +02:00
{
"name" : "rustc-watch" ,
"fileLocation" : [
"relative" ,
"${workspaceRoot}"
] ,
"background" : {
"beginsPattern" : "^\\[Running\\b" ,
"endsPattern" : "^\\[Finished running\\b"
} ,
"pattern" : "$rustc"
2018-12-30 18:24:07 +01:00
}
2019-05-21 14:04:54 +03:00
] ,
"colors" : [
{
2019-12-31 15:42:05 +01:00
"id" : "rust_analyzer.inlayHint" ,
2019-07-23 16:38:21 +03:00
"description" : "Color for inlay hints" ,
"defaults" : {
"dark" : "#A0A0A0F0" ,
"light" : "#747474" ,
"highContrast" : "#BEBEBE"
}
2019-05-21 14:04:54 +03:00
}
2020-02-26 18:20:38 +01:00
] ,
2020-02-26 19:39:32 +01:00
"semanticTokenTypes" : [
{
2020-02-28 12:06:54 +01:00
"id" : "attribute" ,
"description" : "Style for attributes"
2020-02-26 23:16:57 +01:00
} ,
{
2020-02-28 12:06:54 +01:00
"id" : "builtinType" ,
"description" : "Style for builtin types"
} ,
{
"id" : "lifetime" ,
"description" : "Style for lifetimes"
} ,
{
"id" : "typeAlias" ,
"description" : "Style for type aliases"
} ,
{
"id" : "union" ,
"description" : "Style for C-style untagged unions"
2020-02-26 19:39:32 +01:00
}
] ,
"semanticTokenModifiers" : [
{
2020-02-28 12:06:54 +01:00
"id" : "constant" ,
"description" : "Style for compile-time constants"
2020-02-26 19:39:32 +01:00
} ,
{
2020-02-28 12:06:54 +01:00
"id" : "control" ,
"description" : "Style for control flow keywords"
2020-02-26 19:39:32 +01:00
} ,
{
2020-02-28 12:06:54 +01:00
"id" : "mutable" ,
"description" : "Style for mutable bindings"
2020-02-26 19:39:32 +01:00
} ,
{
2020-02-28 12:06:54 +01:00
"id" : "unsafe" ,
"description" : "Style for unsafe operations"
2020-02-26 19:39:32 +01:00
}
] ,
2020-02-26 18:20:38 +01:00
"semanticTokenStyleDefaults" : [
2020-02-27 18:31:54 +01:00
{
"selector" : "attribute" ,
"scope" : [
"meta.attribute"
]
} ,
2020-02-26 18:20:38 +01:00
{
2020-02-28 12:06:54 +01:00
"selector" : "builtinType" ,
"scope" : [
"support.type.primitive"
]
2020-02-26 23:16:57 +01:00
} ,
{
2020-02-28 12:06:54 +01:00
"selector" : "lifetime" ,
2020-02-26 23:16:57 +01:00
"scope" : [
2020-02-28 12:06:54 +01:00
"entity.name.lifetime.rust"
]
} ,
{
"selector" : "typeAlias" ,
"scope" : [
"entity.name.typeAlias"
]
} ,
{
"selector" : "union" ,
"scope" : [
"entity.name.union"
2020-02-26 23:16:57 +01:00
]
2020-02-27 17:28:59 +01:00
} ,
{
"selector" : "keyword.unsafe" ,
"scope" : [
"keyword.other.unsafe"
]
2020-02-27 18:37:25 +01:00
} ,
{
2020-02-28 12:06:54 +01:00
"selector" : "keyword.control" ,
2020-02-27 18:37:25 +01:00
"scope" : [
2020-02-28 12:06:54 +01:00
"keyword.control"
2020-02-27 18:37:25 +01:00
]
2020-02-28 12:06:54 +01:00
} ,
{
"selector" : "variable.constant" ,
"scope" : [
"entity.name.constant"
]
} ,
{
"selector" : "*.mutable" ,
"light" : {
"fontStyle" : "underline"
} ,
"dark" : {
"fontStyle" : "underline"
} ,
"highContrast" : {
"fontStyle" : "underline"
}
2020-02-26 18:20:38 +01:00
}
2018-08-13 13:46:05 +03:00
]
2018-08-27 22:52:43 +03:00
}
2019-04-19 18:28:14 +02:00
}