Unnamed repository; edit this file 'description' to name the repository.
Update docs and config
Lukas Wirth 2022-05-02
parent 9f27eb5 · commit b84f3cc
-rw-r--r--docs/user/generated_config.adoc376
-rw-r--r--editors/code/package.json526
2 files changed, 459 insertions, 443 deletions
diff --git a/docs/user/generated_config.adoc b/docs/user/generated_config.adoc
index ace74f8e08..c70bf206ff 100644
--- a/docs/user/generated_config.adoc
+++ b/docs/user/generated_config.adoc
@@ -1,107 +1,56 @@
-[[rust-analyzer.assist.exprFillDefault]]rust-analyzer.assist.exprFillDefault (default: `"todo"`)::
+[[rust-analyzer.assist.expressionFillDefault]]rust-analyzer.assist.expressionFillDefault (default: `"todo"`)::
+
--
Placeholder for missing expressions in assists.
--
-[[rust-analyzer.assist.importGranularity]]rust-analyzer.assist.importGranularity (default: `"crate"`)::
-+
---
-How imports should be grouped into use statements.
---
-[[rust-analyzer.assist.importEnforceGranularity]]rust-analyzer.assist.importEnforceGranularity (default: `false`)::
-+
---
-Whether to enforce the import granularity setting for all files. If set to false rust-analyzer will try to keep import styles consistent per file.
---
-[[rust-analyzer.assist.importPrefix]]rust-analyzer.assist.importPrefix (default: `"plain"`)::
-+
---
-The path structure for newly inserted paths to use.
---
-[[rust-analyzer.assist.importGroup]]rust-analyzer.assist.importGroup (default: `true`)::
-+
---
-Group inserted imports by the https://rust-analyzer.github.io/manual.html#auto-import[following order]. Groups are separated by newlines.
---
-[[rust-analyzer.assist.allowMergingIntoGlobImports]]rust-analyzer.assist.allowMergingIntoGlobImports (default: `true`)::
-+
---
-Whether to allow import insertion to merge new imports into single path glob imports like `use std::fmt::*;`.
---
-[[rust-analyzer.cache.warmup]]rust-analyzer.cache.warmup (default: `true`)::
-+
---
-Warm up caches on project load.
---
-[[rust-analyzer.callInfo.full]]rust-analyzer.callInfo.full (default: `true`)::
-+
---
-Show function name and docs in parameter hints.
---
[[rust-analyzer.cargo.autoreload]]rust-analyzer.cargo.autoreload (default: `true`)::
+
--
Automatically refresh project info via `cargo metadata` on
`Cargo.toml` changes.
--
-[[rust-analyzer.cargo.allFeatures]]rust-analyzer.cargo.allFeatures (default: `false`)::
-+
---
-Activate all available features (`--all-features`).
---
-[[rust-analyzer.cargo.unsetTest]]rust-analyzer.cargo.unsetTest (default: `["core"]`)::
-+
---
-Unsets `#[cfg(test)]` for the specified crates.
---
-[[rust-analyzer.cargo.features]]rust-analyzer.cargo.features (default: `[]`)::
-+
---
-List of features to activate.
---
-[[rust-analyzer.cargo.runBuildScripts]]rust-analyzer.cargo.runBuildScripts (default: `true`)::
+[[rust-analyzer.cargo.buildScripts.enable]]rust-analyzer.cargo.buildScripts.enable (default: `true`)::
+
--
Run build scripts (`build.rs`) for more precise code analysis.
--
-[[rust-analyzer.cargo.runBuildScriptsCommand]]rust-analyzer.cargo.runBuildScriptsCommand (default: `null`)::
+[[rust-analyzer.cargo.buildScripts.overrideCommand]]rust-analyzer.cargo.buildScripts.overrideCommand (default: `null`)::
+
--
Advanced option, fully override the command rust-analyzer uses to
run build scripts and build procedural macros. The command should
include `--message-format=json` or a similar option.
--
-[[rust-analyzer.cargo.useRustcWrapperForBuildScripts]]rust-analyzer.cargo.useRustcWrapperForBuildScripts (default: `true`)::
+[[rust-analyzer.cargo.buildScripts.useRustcWrapper]]rust-analyzer.cargo.buildScripts.useRustcWrapper (default: `true`)::
+
--
Use `RUSTC_WRAPPER=rust-analyzer` when running build scripts to
avoid compiling unnecessary things.
--
-[[rust-analyzer.cargo.noDefaultFeatures]]rust-analyzer.cargo.noDefaultFeatures (default: `false`)::
+[[rust-analyzer.cargo.features]]rust-analyzer.cargo.features (default: `[]`)::
+
--
-Do not activate the `default` feature.
+List of features to activate. Set to `"all"` to pass `--all-features` to cargo.
--
-[[rust-analyzer.cargo.target]]rust-analyzer.cargo.target (default: `null`)::
+[[rust-analyzer.cargo.noDefaultFeatures]]rust-analyzer.cargo.noDefaultFeatures (default: `false`)::
+
--
-Compilation target (target triple).
+Do not activate the `default` feature.
--
[[rust-analyzer.cargo.noSysroot]]rust-analyzer.cargo.noSysroot (default: `false`)::
+
--
Internal config for debugging, disables loading of sysroot crates.
--
-[[rust-analyzer.checkOnSave.enable]]rust-analyzer.checkOnSave.enable (default: `true`)::
+[[rust-analyzer.cargo.target]]rust-analyzer.cargo.target (default: `null`)::
+
--
-Run specified `cargo check` command for diagnostics on save.
+Compilation target override (target triple).
--
-[[rust-analyzer.checkOnSave.allFeatures]]rust-analyzer.checkOnSave.allFeatures (default: `null`)::
+[[rust-analyzer.cargo.unsetTest]]rust-analyzer.cargo.unsetTest (default: `["core"]`)::
+
--
-Check with all features (`--all-features`).
-Defaults to `#rust-analyzer.cargo.allFeatures#`.
+Unsets `#[cfg(test)]` for the specified crates.
--
[[rust-analyzer.checkOnSave.allTargets]]rust-analyzer.checkOnSave.allTargets (default: `true`)::
+
@@ -113,16 +62,10 @@ Check all targets and tests (`--all-targets`).
--
Cargo command to use for `cargo check`.
--
-[[rust-analyzer.checkOnSave.noDefaultFeatures]]rust-analyzer.checkOnSave.noDefaultFeatures (default: `null`)::
-+
---
-Do not activate the `default` feature.
---
-[[rust-analyzer.checkOnSave.target]]rust-analyzer.checkOnSave.target (default: `null`)::
+[[rust-analyzer.checkOnSave.enable]]rust-analyzer.checkOnSave.enable (default: `true`)::
+
--
-Check for a specific target. Defaults to
-`#rust-analyzer.cargo.target#`.
+Run specified `cargo check` command for diagnostics on save.
--
[[rust-analyzer.checkOnSave.extraArgs]]rust-analyzer.checkOnSave.extraArgs (default: `[]`)::
+
@@ -133,7 +76,12 @@ Extra arguments for `cargo check`.
+
--
List of features to activate. Defaults to
-`#rust-analyzer.cargo.features#`.
+`#rust-analyzer.cargo.features#`. Set to `"all"` to pass `--all-features` to cargo.
+--
+[[rust-analyzer.checkOnSave.noDefaultFeatures]]rust-analyzer.checkOnSave.noDefaultFeatures (default: `null`)::
++
+--
+Do not activate the `default` feature.
--
[[rust-analyzer.checkOnSave.overrideCommand]]rust-analyzer.checkOnSave.overrideCommand (default: `null`)::
+
@@ -142,18 +90,40 @@ Advanced option, fully override the command rust-analyzer uses for
checking. The command should include `--message-format=json` or
similar option.
--
-[[rust-analyzer.completion.addCallArgumentSnippets]]rust-analyzer.completion.addCallArgumentSnippets (default: `true`)::
+[[rust-analyzer.checkOnSave.target]]rust-analyzer.checkOnSave.target (default: `null`)::
+
--
-Whether to add argument snippets when completing functions.
-Only applies when `#rust-analyzer.completion.addCallParenthesis#` is set.
+Check for a specific target. Defaults to
+`#rust-analyzer.cargo.target#`.
--
-[[rust-analyzer.completion.addCallParenthesis]]rust-analyzer.completion.addCallParenthesis (default: `true`)::
+[[rust-analyzer.completion.autoimport.enable]]rust-analyzer.completion.autoimport.enable (default: `true`)::
+
--
-Whether to add parenthesis when completing functions.
+Toggles the additional completions that automatically add imports when completed.
+Note that your client must specify the `additionalTextEdits` LSP client capability to truly have this feature enabled.
--
-[[rust-analyzer.completion.snippets]]rust-analyzer.completion.snippets::
+[[rust-analyzer.completion.autoself.enable]]rust-analyzer.completion.autoself.enable (default: `true`)::
++
+--
+Toggles the additional completions that automatically show method calls and field accesses
+with `self` prefixed to them when inside a method.
+--
+[[rust-analyzer.completion.callable.snippets]]rust-analyzer.completion.callable.snippets (default: `"fill_arguments"`)::
++
+--
+Whether to add parenthesis and argument snippets when completing function.
+--
+[[rust-analyzer.completion.postfix.enable]]rust-analyzer.completion.postfix.enable (default: `true`)::
++
+--
+Whether to show postfix snippets like `dbg`, `if`, `not`, etc.
+--
+[[rust-analyzer.completion.privateEditable.enable]]rust-analyzer.completion.privateEditable.enable (default: `false`)::
++
+--
+Enables completions of private items and fields that are defined in the current workspace even if they are not visible at the current position.
+--
+[[rust-analyzer.completion.snippets.custom]]rust-analyzer.completion.snippets.custom::
+
--
Default:
@@ -203,44 +173,22 @@ Default:
Custom completion snippets.
--
-[[rust-analyzer.completion.postfix.enable]]rust-analyzer.completion.postfix.enable (default: `true`)::
-+
---
-Whether to show postfix snippets like `dbg`, `if`, `not`, etc.
---
-[[rust-analyzer.completion.autoimport.enable]]rust-analyzer.completion.autoimport.enable (default: `true`)::
-+
---
-Toggles the additional completions that automatically add imports when completed.
-Note that your client must specify the `additionalTextEdits` LSP client capability to truly have this feature enabled.
---
-[[rust-analyzer.completion.autoself.enable]]rust-analyzer.completion.autoself.enable (default: `true`)::
-+
---
-Toggles the additional completions that automatically show method calls and field accesses
-with `self` prefixed to them when inside a method.
---
-[[rust-analyzer.completion.privateEditable.enable]]rust-analyzer.completion.privateEditable.enable (default: `false`)::
+[[rust-analyzer.diagnostics.disabled]]rust-analyzer.diagnostics.disabled (default: `[]`)::
+
--
-Enables completions of private items and fields that are defined in the current workspace even if they are not visible at the current position.
+List of rust-analyzer diagnostics to disable.
--
[[rust-analyzer.diagnostics.enable]]rust-analyzer.diagnostics.enable (default: `true`)::
+
--
Whether to show native rust-analyzer diagnostics.
--
-[[rust-analyzer.diagnostics.enableExperimental]]rust-analyzer.diagnostics.enableExperimental (default: `false`)::
+[[rust-analyzer.diagnostics.experimental.enable]]rust-analyzer.diagnostics.experimental.enable (default: `false`)::
+
--
Whether to show experimental rust-analyzer diagnostics that might
have more false positives than usual.
--
-[[rust-analyzer.diagnostics.disabled]]rust-analyzer.diagnostics.disabled (default: `[]`)::
-+
---
-List of rust-analyzer diagnostics to disable.
---
[[rust-analyzer.diagnostics.remapPrefix]]rust-analyzer.diagnostics.remapPrefix (default: `{}`)::
+
--
@@ -263,16 +211,6 @@ List of warnings that should be displayed with info severity.
The warnings will be indicated by a blue squiggly underline in code
and a blue icon in the `Problems Panel`.
--
-[[rust-analyzer.experimental.procAttrMacros]]rust-analyzer.experimental.procAttrMacros (default: `true`)::
-+
---
-Expand attribute macros.
---
-[[rust-analyzer.files.watcher]]rust-analyzer.files.watcher (default: `"client"`)::
-+
---
-Controls file watching implementation.
---
[[rust-analyzer.files.excludeDirs]]rust-analyzer.files.excludeDirs (default: `[]`)::
+
--
@@ -280,115 +218,110 @@ These directories will be ignored by rust-analyzer. They are
relative to the workspace root, and globs are not supported. You may
also need to add the folders to Code's `files.watcherExclude`.
--
-[[rust-analyzer.highlightRelated.references]]rust-analyzer.highlightRelated.references (default: `true`)::
-+
---
-Enables highlighting of related references while hovering your mouse above any identifier.
---
-[[rust-analyzer.highlightRelated.exitPoints]]rust-analyzer.highlightRelated.exitPoints (default: `true`)::
+[[rust-analyzer.files.watcher]]rust-analyzer.files.watcher (default: `"client"`)::
+
--
-Enables highlighting of all exit points while hovering your mouse above any `return`, `?`, or return type arrow (`->`).
+Controls file watching implementation.
--
-[[rust-analyzer.highlightRelated.breakPoints]]rust-analyzer.highlightRelated.breakPoints (default: `true`)::
+[[rust-analyzer.highlightRelated.breakPoints.enable]]rust-analyzer.highlightRelated.breakPoints.enable (default: `true`)::
+
--
Enables highlighting of related references while hovering your mouse `break`, `loop`, `while`, or `for` keywords.
--
-[[rust-analyzer.highlightRelated.yieldPoints]]rust-analyzer.highlightRelated.yieldPoints (default: `true`)::
-+
---
-Enables highlighting of all break points for a loop or block context while hovering your mouse above any `async` or `await` keywords.
---
-[[rust-analyzer.highlighting.strings]]rust-analyzer.highlighting.strings (default: `true`)::
+[[rust-analyzer.highlightRelated.exitPoints.enable]]rust-analyzer.highlightRelated.exitPoints.enable (default: `true`)::
+
--
-Use semantic tokens for strings.
-
-In some editors (e.g. vscode) semantic tokens override other highlighting grammars.
-By disabling semantic tokens for strings, other grammars can be used to highlight
-their contents.
+Enables highlighting of all exit points while hovering your mouse above any `return`, `?`, or return type arrow (`->`).
--
-[[rust-analyzer.hover.documentation]]rust-analyzer.hover.documentation (default: `true`)::
+[[rust-analyzer.highlightRelated.references.enable]]rust-analyzer.highlightRelated.references.enable (default: `true`)::
+
--
-Whether to show documentation on hover.
+Enables highlighting of related references while hovering your mouse above any identifier.
--
-[[rust-analyzer.hover.linksInHover]]rust-analyzer.hover.linksInHover (default: `true`)::
+[[rust-analyzer.highlightRelated.yieldPoints.enable]]rust-analyzer.highlightRelated.yieldPoints.enable (default: `true`)::
+
--
-Use markdown syntax for links in hover.
+Enables highlighting of all break points for a loop or block context while hovering your mouse above any `async` or `await` keywords.
--
-[[rust-analyzer.hoverActions.debug]]rust-analyzer.hoverActions.debug (default: `true`)::
+[[rust-analyzer.hover.actions.debug.enable]]rust-analyzer.hover.actions.debug.enable (default: `true`)::
+
--
Whether to show `Debug` action. Only applies when
`#rust-analyzer.hoverActions.enable#` is set.
--
-[[rust-analyzer.hoverActions.enable]]rust-analyzer.hoverActions.enable (default: `true`)::
+[[rust-analyzer.hover.actions.enable]]rust-analyzer.hover.actions.enable (default: `true`)::
+
--
Whether to show HoverActions in Rust files.
--
-[[rust-analyzer.hoverActions.gotoTypeDef]]rust-analyzer.hoverActions.gotoTypeDef (default: `true`)::
+[[rust-analyzer.hover.actions.gotoTypeDef.enable]]rust-analyzer.hover.actions.gotoTypeDef.enable (default: `true`)::
+
--
Whether to show `Go to Type Definition` action. Only applies when
`#rust-analyzer.hoverActions.enable#` is set.
--
-[[rust-analyzer.hoverActions.implementations]]rust-analyzer.hoverActions.implementations (default: `true`)::
+[[rust-analyzer.hover.actions.implementations.enable]]rust-analyzer.hover.actions.implementations.enable (default: `true`)::
+
--
Whether to show `Implementations` action. Only applies when
`#rust-analyzer.hoverActions.enable#` is set.
--
-[[rust-analyzer.hoverActions.references]]rust-analyzer.hoverActions.references (default: `false`)::
+[[rust-analyzer.hover.actions.references.enable]]rust-analyzer.hover.actions.references.enable (default: `false`)::
+
--
Whether to show `References` action. Only applies when
`#rust-analyzer.hoverActions.enable#` is set.
--
-[[rust-analyzer.hoverActions.run]]rust-analyzer.hoverActions.run (default: `true`)::
+[[rust-analyzer.hover.actions.run.enable]]rust-analyzer.hover.actions.run.enable (default: `true`)::
+
--
Whether to show `Run` action. Only applies when
`#rust-analyzer.hoverActions.enable#` is set.
--
-[[rust-analyzer.inlayHints.renderColons]]rust-analyzer.inlayHints.renderColons (default: `true`)::
+[[rust-analyzer.hover.documentation.enable]]rust-analyzer.hover.documentation.enable (default: `true`)::
+
--
-Whether to render trailing colons for parameter hints, and trailing colons for parameter hints.
+Whether to show documentation on hover.
--
-[[rust-analyzer.inlayHints.maxLength]]rust-analyzer.inlayHints.maxLength (default: `25`)::
+[[rust-analyzer.hover.links.enable]]rust-analyzer.hover.links.enable (default: `true`)::
+
--
-Maximum length for inlay hints. Set to null to have an unlimited length.
+Use markdown syntax for links in hover.
--
-[[rust-analyzer.inlayHints.parameterHints]]rust-analyzer.inlayHints.parameterHints (default: `true`)::
+[[rust-analyzer.imports.enforceGranularity]]rust-analyzer.imports.enforceGranularity (default: `false`)::
+
--
-Whether to show function parameter name inlay hints at the call
-site.
+Whether to enforce the import granularity setting for all files. If set to false rust-analyzer will try to keep import styles consistent per file.
--
-[[rust-analyzer.inlayHints.typeHints]]rust-analyzer.inlayHints.typeHints (default: `true`)::
+[[rust-analyzer.imports.granularity]]rust-analyzer.imports.granularity (default: `"crate"`)::
+
--
-Whether to show inlay type hints for variables.
+How imports should be grouped into use statements.
--
-[[rust-analyzer.inlayHints.chainingHints]]rust-analyzer.inlayHints.chainingHints (default: `true`)::
+[[rust-analyzer.imports.group]]rust-analyzer.imports.group (default: `true`)::
+
--
-Whether to show inlay type hints for method chains.
+Group inserted imports by the https://rust-analyzer.github.io/manual.html#auto-import[following order]. Groups are separated by newlines.
--
-[[rust-analyzer.inlayHints.closureReturnTypeHints]]rust-analyzer.inlayHints.closureReturnTypeHints (default: `false`)::
+[[rust-analyzer.imports.mergeIntoGlob]]rust-analyzer.imports.mergeIntoGlob (default: `true`)::
+
--
-Whether to show inlay type hints for return types of closures with blocks.
+Whether to allow import insertion to merge new imports into single path glob imports like `use std::fmt::*;`.
--
-[[rust-analyzer.inlayHints.reborrowHints]]rust-analyzer.inlayHints.reborrowHints (default: `false`)::
+[[rust-analyzer.imports.prefix]]rust-analyzer.imports.prefix (default: `"plain"`)::
+
--
-Whether to show inlay type hints for compiler inserted reborrows.
+The path structure for newly inserted paths to use.
+--
+[[rust-analyzer.inlayHints.chainingHints.enable]]rust-analyzer.inlayHints.chainingHints.enable (default: `true`)::
++
+--
+Whether to show inlay type hints for method chains.
+--
+[[rust-analyzer.inlayHints.closureReturnTypeHints.enable]]rust-analyzer.inlayHints.closureReturnTypeHints.enable (default: `false`)::
++
+--
+Whether to show inlay type hints for return types of closures with blocks.
--
[[rust-analyzer.inlayHints.lifetimeElisionHints.enable]]rust-analyzer.inlayHints.lifetimeElisionHints.enable (default: `"never"`)::
+
@@ -400,11 +333,42 @@ Whether to show inlay type hints for elided lifetimes in function signatures.
--
Whether to prefer using parameter names as the name for elided lifetime hints if possible.
--
-[[rust-analyzer.inlayHints.hideNamedConstructorHints]]rust-analyzer.inlayHints.hideNamedConstructorHints (default: `false`)::
+[[rust-analyzer.inlayHints.maxLength]]rust-analyzer.inlayHints.maxLength (default: `25`)::
++
+--
+Maximum length for inlay hints. Set to null to have an unlimited length.
+--
+[[rust-analyzer.inlayHints.parameterHints.enable]]rust-analyzer.inlayHints.parameterHints.enable (default: `true`)::
++
+--
+Whether to show function parameter name inlay hints at the call
+site.
+--
+[[rust-analyzer.inlayHints.reborrowHints.enable]]rust-analyzer.inlayHints.reborrowHints.enable (default: `false`)::
++
+--
+Whether to show inlay type hints for compiler inserted reborrows.
+--
+[[rust-analyzer.inlayHints.renderColons]]rust-analyzer.inlayHints.renderColons (default: `true`)::
++
+--
+Whether to render trailing colons for parameter hints, and trailing colons for parameter hints.
+--
+[[rust-analyzer.inlayHints.typeHints.enable]]rust-analyzer.inlayHints.typeHints.enable (default: `true`)::
++
+--
+Whether to show inlay type hints for variables.
+--
+[[rust-analyzer.inlayHints.typeHints.hideNamedConstructor]]rust-analyzer.inlayHints.typeHints.hideNamedConstructor (default: `false`)::
+
--
Whether to hide inlay hints for constructors.
--
+[[rust-analyzer.joinLines.joinAssignments]]rust-analyzer.joinLines.joinAssignments (default: `true`)::
++
+--
+Join lines merges consecutive declaration and initialization of an assignment.
+--
[[rust-analyzer.joinLines.joinElseIf]]rust-analyzer.joinLines.joinElseIf (default: `true`)::
+
--
@@ -420,12 +384,7 @@ Join lines removes trailing commas.
--
Join lines unwraps trivial blocks.
--
-[[rust-analyzer.joinLines.joinAssignments]]rust-analyzer.joinLines.joinAssignments (default: `true`)::
-+
---
-Join lines merges consecutive declaration and initialization of an assignment.
---
-[[rust-analyzer.lens.debug]]rust-analyzer.lens.debug (default: `true`)::
+[[rust-analyzer.lens.debug.enable]]rust-analyzer.lens.debug.enable (default: `true`)::
+
--
Whether to show `Debug` lens. Only applies when
@@ -436,41 +395,47 @@ Whether to show `Debug` lens. Only applies when
--
Whether to show CodeLens in Rust files.
--
-[[rust-analyzer.lens.implementations]]rust-analyzer.lens.implementations (default: `true`)::
+[[rust-analyzer.lens.forceCustomCommands]]rust-analyzer.lens.forceCustomCommands (default: `true`)::
+
--
-Whether to show `Implementations` lens. Only applies when
-`#rust-analyzer.lens.enable#` is set.
+Internal config: use custom client-side commands even when the
+client doesn't set the corresponding capability.
--
-[[rust-analyzer.lens.run]]rust-analyzer.lens.run (default: `true`)::
+[[rust-analyzer.lens.implementations.enable]]rust-analyzer.lens.implementations.enable (default: `true`)::
+
--
-Whether to show `Run` lens. Only applies when
+Whether to show `Implementations` lens. Only applies when
`#rust-analyzer.lens.enable#` is set.
--
-[[rust-analyzer.lens.methodReferences]]rust-analyzer.lens.methodReferences (default: `false`)::
+[[rust-analyzer.lens.references.adt.enable]]rust-analyzer.lens.references.adt.enable (default: `false`)::
+
--
-Whether to show `Method References` lens. Only applies when
-`#rust-analyzer.lens.enable#` is set.
+Whether to show `References` lens for Struct, Enum, and Union.
+Only applies when `#rust-analyzer.lens.enable#` is set.
--
-[[rust-analyzer.lens.references]]rust-analyzer.lens.references (default: `false`)::
+[[rust-analyzer.lens.references.adt.variant.enable]]rust-analyzer.lens.references.adt.variant.enable (default: `false`)::
+
--
-Whether to show `References` lens for Struct, Enum, Union and Trait.
+Whether to show `References` lens for Enum Variants.
Only applies when `#rust-analyzer.lens.enable#` is set.
--
-[[rust-analyzer.lens.enumVariantReferences]]rust-analyzer.lens.enumVariantReferences (default: `false`)::
+[[rust-analyzer.lens.references.method.enable]]rust-analyzer.lens.references.method.enable (default: `false`)::
+
--
-Whether to show `References` lens for Enum Variants.
+Whether to show `Method References` lens. Only applies when
+`#rust-analyzer.lens.enable#` is set.
+--
+[[rust-analyzer.lens.references.trait.enable]]rust-analyzer.lens.references.trait.enable (default: `false`)::
++
+--
+Whether to show `References` lens for Trait.
Only applies when `#rust-analyzer.lens.enable#` is set.
--
-[[rust-analyzer.lens.forceCustomCommands]]rust-analyzer.lens.forceCustomCommands (default: `true`)::
+[[rust-analyzer.lens.run.enable]]rust-analyzer.lens.run.enable (default: `true`)::
+
--
-Internal config: use custom client-side commands even when the
-client doesn't set the corresponding capability.
+Whether to show `Run` lens. Only applies when
+`#rust-analyzer.lens.enable#` is set.
--
[[rust-analyzer.linkedProjects]]rust-analyzer.linkedProjects (default: `[]`)::
+
@@ -481,7 +446,7 @@ of projects.
Elements must be paths pointing to `Cargo.toml`,
`rust-project.json`, or JSON objects in `rust-project.json` format.
--
-[[rust-analyzer.lruCapacity]]rust-analyzer.lruCapacity (default: `null`)::
+[[rust-analyzer.lru.capacity]]rust-analyzer.lru.capacity (default: `null`)::
+
--
Number of syntax trees rust-analyzer keeps in memory. Defaults to 128.
@@ -491,21 +456,25 @@ Number of syntax trees rust-analyzer keeps in memory. Defaults to 128.
--
Whether to show `can't find Cargo.toml` error message.
--
+[[rust-analyzer.primeCaches.enable]]rust-analyzer.primeCaches.enable (default: `true`)::
++
+--
+Warm up caches on project load.
+--
[[rust-analyzer.primeCaches.numThreads]]rust-analyzer.primeCaches.numThreads (default: `0`)::
+
--
How many worker threads to to handle priming caches. The default `0` means to pick automatically.
--
-[[rust-analyzer.procMacro.enable]]rust-analyzer.procMacro.enable (default: `true`)::
+[[rust-analyzer.procMacro.attributes.enable]]rust-analyzer.procMacro.attributes.enable (default: `true`)::
+
--
-Enable support for procedural macros, implies `#rust-analyzer.cargo.runBuildScripts#`.
+Expand attribute macros. Requires `#rust-analyzer.procMacro.enable#` to be set.
--
-[[rust-analyzer.procMacro.server]]rust-analyzer.procMacro.server (default: `null`)::
+[[rust-analyzer.procMacro.enable]]rust-analyzer.procMacro.enable (default: `true`)::
+
--
-Internal config, path to proc-macro server executable (typically,
-this is rust-analyzer itself, but we override this in tests).
+Enable support for procedural macros, implies `#rust-analyzer.cargo.runBuildScripts#`.
--
[[rust-analyzer.procMacro.ignored]]rust-analyzer.procMacro.ignored (default: `{}`)::
+
@@ -514,18 +483,24 @@ These proc-macros will be ignored when trying to expand them.
This config takes a map of crate names with the exported proc-macro names to ignore as values.
--
-[[rust-analyzer.runnables.overrideCargo]]rust-analyzer.runnables.overrideCargo (default: `null`)::
+[[rust-analyzer.procMacro.server]]rust-analyzer.procMacro.server (default: `null`)::
++
+--
+Internal config, path to proc-macro server executable (typically,
+this is rust-analyzer itself, but we override this in tests).
+--
+[[rust-analyzer.runnables.command]]rust-analyzer.runnables.command (default: `null`)::
+
--
Command to be executed instead of 'cargo' for runnables.
--
-[[rust-analyzer.runnables.cargoExtraArgs]]rust-analyzer.runnables.cargoExtraArgs (default: `[]`)::
+[[rust-analyzer.runnables.extraArgs]]rust-analyzer.runnables.extraArgs (default: `[]`)::
+
--
Additional arguments to be passed to cargo for runnables such as
tests or binaries. For example, it may be `--release`.
--
-[[rust-analyzer.rustcSource]]rust-analyzer.rustcSource (default: `null`)::
+[[rust-analyzer.rustc.source]]rust-analyzer.rustc.source (default: `null`)::
+
--
Path to the Cargo.toml of the rust compiler workspace, for usage in rustc_private
@@ -548,17 +523,31 @@ Additional arguments to `rustfmt`.
Advanced option, fully override the command rust-analyzer uses for
formatting.
--
-[[rust-analyzer.rustfmt.enableRangeFormatting]]rust-analyzer.rustfmt.enableRangeFormatting (default: `false`)::
+[[rust-analyzer.rustfmt.rangeFormatting.enable]]rust-analyzer.rustfmt.rangeFormatting.enable (default: `false`)::
+
--
Enables the use of rustfmt's unstable range formatting command for the
`textDocument/rangeFormatting` request. The rustfmt option is unstable and only
available on a nightly build.
--
-[[rust-analyzer.workspace.symbol.search.scope]]rust-analyzer.workspace.symbol.search.scope (default: `"workspace"`)::
+[[rust-analyzer.semanticHighlighting.strings.enable]]rust-analyzer.semanticHighlighting.strings.enable (default: `true`)::
+
--
-Workspace symbol search scope.
+Use semantic tokens for strings.
+
+In some editors (e.g. vscode) semantic tokens override other highlighting grammars.
+By disabling semantic tokens for strings, other grammars can be used to highlight
+their contents.
+--
+[[rust-analyzer.signatureInfo.documentation.enable]]rust-analyzer.signatureInfo.documentation.enable (default: `true`)::
++
+--
+Show documentation.
+--
+[[rust-analyzer.signatureInfo.signature.enable]]rust-analyzer.signatureInfo.signature.enable (default: `true`)::
++
+--
+Show full signature of the callable. Only shows parameters if disabled.
--
[[rust-analyzer.workspace.symbol.search.kind]]rust-analyzer.workspace.symbol.search.kind (default: `"only_types"`)::
+
@@ -572,3 +561,8 @@ Limits the number of items returned from a workspace symbol search (Defaults to
Some clients like vs-code issue new searches on result filtering and don't require all results to be returned in the initial search.
Other clients requires all results upfront and might require a higher limit.
--
+[[rust-analyzer.workspace.symbol.search.scope]]rust-analyzer.workspace.symbol.search.scope (default: `"workspace"`)::
++
+--
+Workspace symbol search scope.
+--
diff --git a/editors/code/package.json b/editors/code/package.json
index cd0ad92d9a..c4e7036a3c 100644
--- a/editors/code/package.json
+++ b/editors/code/package.json
@@ -368,7 +368,7 @@
"markdownDescription": "Optional settings passed to the debug engine. Example: `{ \"lldb\": { \"terminal\":\"external\"} }`"
},
"$generated-start": {},
- "rust-analyzer.assist.exprFillDefault": {
+ "rust-analyzer.assist.expressionFillDefault": {
"markdownDescription": "Placeholder for missing expressions in assists.",
"default": "todo",
"type": "string",
@@ -381,97 +381,17 @@
"Fill missing expressions with reasonable defaults, `new` or `default` constructors."
]
},
- "rust-analyzer.assist.importGranularity": {
- "markdownDescription": "How imports should be grouped into use statements.",
- "default": "crate",
- "type": "string",
- "enum": [
- "preserve",
- "crate",
- "module",
- "item"
- ],
- "enumDescriptions": [
- "Do not change the granularity of any imports and preserve the original structure written by the developer.",
- "Merge imports from the same crate into a single use statement. Conversely, imports from different crates are split into separate statements.",
- "Merge imports from the same module into a single use statement. Conversely, imports from different modules are split into separate statements.",
- "Flatten imports so that each has its own use statement."
- ]
- },
- "rust-analyzer.assist.importEnforceGranularity": {
- "markdownDescription": "Whether to enforce the import granularity setting for all files. If set to false rust-analyzer will try to keep import styles consistent per file.",
- "default": false,
- "type": "boolean"
- },
- "rust-analyzer.assist.importPrefix": {
- "markdownDescription": "The path structure for newly inserted paths to use.",
- "default": "plain",
- "type": "string",
- "enum": [
- "plain",
- "self",
- "crate"
- ],
- "enumDescriptions": [
- "Insert import paths relative to the current module, using up to one `super` prefix if the parent module contains the requested item.",
- "Insert import paths relative to the current module, using up to one `super` prefix if the parent module contains the requested item. Prefixes `self` in front of the path if it starts with a module.",
- "Force import paths to be absolute by always starting them with `crate` or the extern crate name they come from."
- ]
- },
- "rust-analyzer.assist.importGroup": {
- "markdownDescription": "Group inserted imports by the [following order](https://rust-analyzer.github.io/manual.html#auto-import). Groups are separated by newlines.",
- "default": true,
- "type": "boolean"
- },
- "rust-analyzer.assist.allowMergingIntoGlobImports": {
- "markdownDescription": "Whether to allow import insertion to merge new imports into single path glob imports like `use std::fmt::*;`.",
- "default": true,
- "type": "boolean"
- },
- "rust-analyzer.cache.warmup": {
- "markdownDescription": "Warm up caches on project load.",
- "default": true,
- "type": "boolean"
- },
- "rust-analyzer.callInfo.full": {
- "markdownDescription": "Show function name and docs in parameter hints.",
- "default": true,
- "type": "boolean"
- },
"rust-analyzer.cargo.autoreload": {
"markdownDescription": "Automatically refresh project info via `cargo metadata` on\n`Cargo.toml` changes.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.cargo.allFeatures": {
- "markdownDescription": "Activate all available features (`--all-features`).",
- "default": false,
- "type": "boolean"
- },
- "rust-analyzer.cargo.unsetTest": {
- "markdownDescription": "Unsets `#[cfg(test)]` for the specified crates.",
- "default": [
- "core"
- ],
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "rust-analyzer.cargo.features": {
- "markdownDescription": "List of features to activate.",
- "default": [],
- "type": "array",
- "items": {
- "type": "string"
- }
- },
- "rust-analyzer.cargo.runBuildScripts": {
+ "rust-analyzer.cargo.buildScripts.enable": {
"markdownDescription": "Run build scripts (`build.rs`) for more precise code analysis.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.cargo.runBuildScriptsCommand": {
+ "rust-analyzer.cargo.buildScripts.overrideCommand": {
"markdownDescription": "Advanced option, fully override the command rust-analyzer uses to\nrun build scripts and build procedural macros. The command should\ninclude `--message-format=json` or a similar option.",
"default": null,
"type": [
@@ -482,42 +402,56 @@
"type": "string"
}
},
- "rust-analyzer.cargo.useRustcWrapperForBuildScripts": {
+ "rust-analyzer.cargo.buildScripts.useRustcWrapper": {
"markdownDescription": "Use `RUSTC_WRAPPER=rust-analyzer` when running build scripts to\navoid compiling unnecessary things.",
"default": true,
"type": "boolean"
},
+ "rust-analyzer.cargo.features": {
+ "markdownDescription": "List of features to activate. Set to `\"all\"` to pass `--all-features` to cargo.",
+ "default": [],
+ "type": [
+ "string",
+ "array"
+ ],
+ "items": {
+ "type": "string"
+ },
+ "enum": [
+ "all"
+ ],
+ "enumDescriptions": [
+ "Pass `--all-features` to cargo"
+ ]
+ },
"rust-analyzer.cargo.noDefaultFeatures": {
"markdownDescription": "Do not activate the `default` feature.",
"default": false,
"type": "boolean"
},
- "rust-analyzer.cargo.target": {
- "markdownDescription": "Compilation target (target triple).",
- "default": null,
- "type": [
- "null",
- "string"
- ]
- },
"rust-analyzer.cargo.noSysroot": {
"markdownDescription": "Internal config for debugging, disables loading of sysroot crates.",
"default": false,
"type": "boolean"
},
- "rust-analyzer.checkOnSave.enable": {
- "markdownDescription": "Run specified `cargo check` command for diagnostics on save.",
- "default": true,
- "type": "boolean"
- },
- "rust-analyzer.checkOnSave.allFeatures": {
- "markdownDescription": "Check with all features (`--all-features`).\nDefaults to `#rust-analyzer.cargo.allFeatures#`.",
+ "rust-analyzer.cargo.target": {
+ "markdownDescription": "Compilation target override (target triple).",
"default": null,
"type": [
"null",
- "boolean"
+ "string"
]
},
+ "rust-analyzer.cargo.unsetTest": {
+ "markdownDescription": "Unsets `#[cfg(test)]` for the specified crates.",
+ "default": [
+ "core"
+ ],
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
"rust-analyzer.checkOnSave.allTargets": {
"markdownDescription": "Check all targets and tests (`--all-targets`).",
"default": true,
@@ -528,21 +462,10 @@
"default": "check",
"type": "string"
},
- "rust-analyzer.checkOnSave.noDefaultFeatures": {
- "markdownDescription": "Do not activate the `default` feature.",
- "default": null,
- "type": [
- "null",
- "boolean"
- ]
- },
- "rust-analyzer.checkOnSave.target": {
- "markdownDescription": "Check for a specific target. Defaults to\n`#rust-analyzer.cargo.target#`.",
- "default": null,
- "type": [
- "null",
- "string"
- ]
+ "rust-analyzer.checkOnSave.enable": {
+ "markdownDescription": "Run specified `cargo check` command for diagnostics on save.",
+ "default": true,
+ "type": "boolean"
},
"rust-analyzer.checkOnSave.extraArgs": {
"markdownDescription": "Extra arguments for `cargo check`.",
@@ -553,15 +476,30 @@
}
},
"rust-analyzer.checkOnSave.features": {
- "markdownDescription": "List of features to activate. Defaults to\n`#rust-analyzer.cargo.features#`.",
+ "markdownDescription": "List of features to activate. Defaults to\n`#rust-analyzer.cargo.features#`. Set to `\"all\"` to pass `--all-features` to cargo.",
"default": null,
"type": [
- "null",
- "array"
+ "string",
+ "array",
+ "null"
],
"items": {
"type": "string"
- }
+ },
+ "enum": [
+ "all"
+ ],
+ "enumDescriptions": [
+ "Pass `--all-features` to cargo"
+ ]
+ },
+ "rust-analyzer.checkOnSave.noDefaultFeatures": {
+ "markdownDescription": "Do not activate the `default` feature.",
+ "default": null,
+ "type": [
+ "null",
+ "boolean"
+ ]
},
"rust-analyzer.checkOnSave.overrideCommand": {
"markdownDescription": "Advanced option, fully override the command rust-analyzer uses for\nchecking. The command should include `--message-format=json` or\nsimilar option.",
@@ -574,17 +512,51 @@
"type": "string"
}
},
- "rust-analyzer.completion.addCallArgumentSnippets": {
- "markdownDescription": "Whether to add argument snippets when completing functions.\nOnly applies when `#rust-analyzer.completion.addCallParenthesis#` is set.",
+ "rust-analyzer.checkOnSave.target": {
+ "markdownDescription": "Check for a specific target. Defaults to\n`#rust-analyzer.cargo.target#`.",
+ "default": null,
+ "type": [
+ "null",
+ "string"
+ ]
+ },
+ "rust-analyzer.completion.autoimport.enable": {
+ "markdownDescription": "Toggles the additional completions that automatically add imports when completed.\nNote that your client must specify the `additionalTextEdits` LSP client capability to truly have this feature enabled.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.completion.addCallParenthesis": {
- "markdownDescription": "Whether to add parenthesis when completing functions.",
+ "rust-analyzer.completion.autoself.enable": {
+ "markdownDescription": "Toggles the additional completions that automatically show method calls and field accesses\nwith `self` prefixed to them when inside a method.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.completion.snippets": {
+ "rust-analyzer.completion.callable.snippets": {
+ "markdownDescription": "Whether to add parenthesis and argument snippets when completing function.",
+ "default": "fill_arguments",
+ "type": [
+ "string",
+ "null"
+ ],
+ "enum": [
+ "fill_arguments",
+ "add_parentheses"
+ ],
+ "enumDescriptions": [
+ "Add call parentheses and pre-fill arguments",
+ "Add call parentheses"
+ ]
+ },
+ "rust-analyzer.completion.postfix.enable": {
+ "markdownDescription": "Whether to show postfix snippets like `dbg`, `if`, `not`, etc.",
+ "default": true,
+ "type": "boolean"
+ },
+ "rust-analyzer.completion.privateEditable.enable": {
+ "markdownDescription": "Enables completions of private items and fields that are defined in the current workspace even if they are not visible at the current position.",
+ "default": false,
+ "type": "boolean"
+ },
+ "rust-analyzer.completion.snippets.custom": {
"markdownDescription": "Custom completion snippets.",
"default": {
"Arc::new": {
@@ -629,45 +601,25 @@
},
"type": "object"
},
- "rust-analyzer.completion.postfix.enable": {
- "markdownDescription": "Whether to show postfix snippets like `dbg`, `if`, `not`, etc.",
- "default": true,
- "type": "boolean"
- },
- "rust-analyzer.completion.autoimport.enable": {
- "markdownDescription": "Toggles the additional completions that automatically add imports when completed.\nNote that your client must specify the `additionalTextEdits` LSP client capability to truly have this feature enabled.",
- "default": true,
- "type": "boolean"
- },
- "rust-analyzer.completion.autoself.enable": {
- "markdownDescription": "Toggles the additional completions that automatically show method calls and field accesses\nwith `self` prefixed to them when inside a method.",
- "default": true,
- "type": "boolean"
- },
- "rust-analyzer.completion.privateEditable.enable": {
- "markdownDescription": "Enables completions of private items and fields that are defined in the current workspace even if they are not visible at the current position.",
- "default": false,
- "type": "boolean"
+ "rust-analyzer.diagnostics.disabled": {
+ "markdownDescription": "List of rust-analyzer diagnostics to disable.",
+ "default": [],
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "uniqueItems": true
},
"rust-analyzer.diagnostics.enable": {
"markdownDescription": "Whether to show native rust-analyzer diagnostics.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.diagnostics.enableExperimental": {
+ "rust-analyzer.diagnostics.experimental.enable": {
"markdownDescription": "Whether to show experimental rust-analyzer diagnostics that might\nhave more false positives than usual.",
"default": false,
"type": "boolean"
},
- "rust-analyzer.diagnostics.disabled": {
- "markdownDescription": "List of rust-analyzer diagnostics to disable.",
- "default": [],
- "type": "array",
- "items": {
- "type": "string"
- },
- "uniqueItems": true
- },
"rust-analyzer.diagnostics.remapPrefix": {
"markdownDescription": "Map of prefixes to be substituted when parsing diagnostic file paths.\nThis should be the reverse mapping of what is passed to `rustc` as `--remap-path-prefix`.",
"default": {},
@@ -689,16 +641,6 @@
"type": "string"
}
},
- "rust-analyzer.experimental.procAttrMacros": {
- "markdownDescription": "Expand attribute macros.",
- "default": true,
- "type": "boolean"
- },
- "rust-analyzer.files.watcher": {
- "markdownDescription": "Controls file watching implementation.",
- "default": "client",
- "type": "string"
- },
"rust-analyzer.files.excludeDirs": {
"markdownDescription": "These directories will be ignored by rust-analyzer. They are\nrelative to the workspace root, and globs are not supported. You may\nalso need to add the folders to Code's `files.watcherExclude`.",
"default": [],
@@ -707,114 +649,135 @@
"type": "string"
}
},
- "rust-analyzer.highlightRelated.references": {
- "markdownDescription": "Enables highlighting of related references while hovering your mouse above any identifier.",
- "default": true,
- "type": "boolean"
- },
- "rust-analyzer.highlightRelated.exitPoints": {
- "markdownDescription": "Enables highlighting of all exit points while hovering your mouse above any `return`, `?`, or return type arrow (`->`).",
- "default": true,
- "type": "boolean"
+ "rust-analyzer.files.watcher": {
+ "markdownDescription": "Controls file watching implementation.",
+ "default": "client",
+ "type": "string"
},
- "rust-analyzer.highlightRelated.breakPoints": {
+ "rust-analyzer.highlightRelated.breakPoints.enable": {
"markdownDescription": "Enables highlighting of related references while hovering your mouse `break`, `loop`, `while`, or `for` keywords.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.highlightRelated.yieldPoints": {
- "markdownDescription": "Enables highlighting of all break points for a loop or block context while hovering your mouse above any `async` or `await` keywords.",
- "default": true,
- "type": "boolean"
- },
- "rust-analyzer.highlighting.strings": {
- "markdownDescription": "Use semantic tokens for strings.\n\nIn some editors (e.g. vscode) semantic tokens override other highlighting grammars.\nBy disabling semantic tokens for strings, other grammars can be used to highlight\ntheir contents.",
+ "rust-analyzer.highlightRelated.exitPoints.enable": {
+ "markdownDescription": "Enables highlighting of all exit points while hovering your mouse above any `return`, `?`, or return type arrow (`->`).",
"default": true,
"type": "boolean"
},
- "rust-analyzer.hover.documentation": {
- "markdownDescription": "Whether to show documentation on hover.",
+ "rust-analyzer.highlightRelated.references.enable": {
+ "markdownDescription": "Enables highlighting of related references while hovering your mouse above any identifier.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.hover.linksInHover": {
- "markdownDescription": "Use markdown syntax for links in hover.",
+ "rust-analyzer.highlightRelated.yieldPoints.enable": {
+ "markdownDescription": "Enables highlighting of all break points for a loop or block context while hovering your mouse above any `async` or `await` keywords.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.hoverActions.debug": {
+ "rust-analyzer.hover.actions.debug.enable": {
"markdownDescription": "Whether to show `Debug` action. Only applies when\n`#rust-analyzer.hoverActions.enable#` is set.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.hoverActions.enable": {
+ "rust-analyzer.hover.actions.enable": {
"markdownDescription": "Whether to show HoverActions in Rust files.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.hoverActions.gotoTypeDef": {
+ "rust-analyzer.hover.actions.gotoTypeDef.enable": {
"markdownDescription": "Whether to show `Go to Type Definition` action. Only applies when\n`#rust-analyzer.hoverActions.enable#` is set.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.hoverActions.implementations": {
+ "rust-analyzer.hover.actions.implementations.enable": {
"markdownDescription": "Whether to show `Implementations` action. Only applies when\n`#rust-analyzer.hoverActions.enable#` is set.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.hoverActions.references": {
+ "rust-analyzer.hover.actions.references.enable": {
"markdownDescription": "Whether to show `References` action. Only applies when\n`#rust-analyzer.hoverActions.enable#` is set.",
"default": false,
"type": "boolean"
},
- "rust-analyzer.hoverActions.run": {
+ "rust-analyzer.hover.actions.run.enable": {
"markdownDescription": "Whether to show `Run` action. Only applies when\n`#rust-analyzer.hoverActions.enable#` is set.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.inlayHints.renderColons": {
- "markdownDescription": "Whether to render trailing colons for parameter hints, and trailing colons for parameter hints.",
+ "rust-analyzer.hover.documentation.enable": {
+ "markdownDescription": "Whether to show documentation on hover.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.inlayHints.maxLength": {
- "markdownDescription": "Maximum length for inlay hints. Set to null to have an unlimited length.",
- "default": 25,
- "type": [
- "null",
- "integer"
+ "rust-analyzer.hover.links.enable": {
+ "markdownDescription": "Use markdown syntax for links in hover.",
+ "default": true,
+ "type": "boolean"
+ },
+ "rust-analyzer.imports.enforceGranularity": {
+ "markdownDescription": "Whether to enforce the import granularity setting for all files. If set to false rust-analyzer will try to keep import styles consistent per file.",
+ "default": false,
+ "type": "boolean"
+ },
+ "rust-analyzer.imports.granularity": {
+ "markdownDescription": "How imports should be grouped into use statements.",
+ "default": "crate",
+ "type": "string",
+ "enum": [
+ "preserve",
+ "crate",
+ "module",
+ "item"
],
- "minimum": 0
+ "enumDescriptions": [
+ "Do not change the granularity of any imports and preserve the original structure written by the developer.",
+ "Merge imports from the same crate into a single use statement. Conversely, imports from different crates are split into separate statements.",
+ "Merge imports from the same module into a single use statement. Conversely, imports from different modules are split into separate statements.",
+ "Flatten imports so that each has its own use statement."
+ ]
},
- "rust-analyzer.inlayHints.parameterHints": {
- "markdownDescription": "Whether to show function parameter name inlay hints at the call\nsite.",
+ "rust-analyzer.imports.group": {
+ "markdownDescription": "Group inserted imports by the [following order](https://rust-analyzer.github.io/manual.html#auto-import). Groups are separated by newlines.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.inlayHints.typeHints": {
- "markdownDescription": "Whether to show inlay type hints for variables.",
+ "rust-analyzer.imports.mergeIntoGlob": {
+ "markdownDescription": "Whether to allow import insertion to merge new imports into single path glob imports like `use std::fmt::*;`.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.inlayHints.chainingHints": {
+ "rust-analyzer.imports.prefix": {
+ "markdownDescription": "The path structure for newly inserted paths to use.",
+ "default": "plain",
+ "type": "string",
+ "enum": [
+ "plain",
+ "self",
+ "crate"
+ ],
+ "enumDescriptions": [
+ "Insert import paths relative to the current module, using up to one `super` prefix if the parent module contains the requested item.",
+ "Insert import paths relative to the current module, using up to one `super` prefix if the parent module contains the requested item. Prefixes `self` in front of the path if it starts with a module.",
+ "Force import paths to be absolute by always starting them with `crate` or the extern crate name they come from."
+ ]
+ },
+ "rust-analyzer.inlayHints.chainingHints.enable": {
"markdownDescription": "Whether to show inlay type hints for method chains.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.inlayHints.closureReturnTypeHints": {
+ "rust-analyzer.inlayHints.closureReturnTypeHints.enable": {
"markdownDescription": "Whether to show inlay type hints for return types of closures with blocks.",
"default": false,
"type": "boolean"
},
- "rust-analyzer.inlayHints.reborrowHints": {
- "markdownDescription": "Whether to show inlay type hints for compiler inserted reborrows.",
- "default": false,
- "type": "boolean"
- },
"rust-analyzer.inlayHints.lifetimeElisionHints.enable": {
"markdownDescription": "Whether to show inlay type hints for elided lifetimes in function signatures.",
"default": "never",
- "type": "string",
+ "type": [
+ "string",
+ "boolean"
+ ],
"enum": [
"always",
"never",
@@ -831,11 +794,45 @@
"default": false,
"type": "boolean"
},
- "rust-analyzer.inlayHints.hideNamedConstructorHints": {
+ "rust-analyzer.inlayHints.maxLength": {
+ "markdownDescription": "Maximum length for inlay hints. Set to null to have an unlimited length.",
+ "default": 25,
+ "type": [
+ "null",
+ "integer"
+ ],
+ "minimum": 0
+ },
+ "rust-analyzer.inlayHints.parameterHints.enable": {
+ "markdownDescription": "Whether to show function parameter name inlay hints at the call\nsite.",
+ "default": true,
+ "type": "boolean"
+ },
+ "rust-analyzer.inlayHints.reborrowHints.enable": {
+ "markdownDescription": "Whether to show inlay type hints for compiler inserted reborrows.",
+ "default": false,
+ "type": "boolean"
+ },
+ "rust-analyzer.inlayHints.renderColons": {
+ "markdownDescription": "Whether to render trailing colons for parameter hints, and trailing colons for parameter hints.",
+ "default": true,
+ "type": "boolean"
+ },
+ "rust-analyzer.inlayHints.typeHints.enable": {
+ "markdownDescription": "Whether to show inlay type hints for variables.",
+ "default": true,
+ "type": "boolean"
+ },
+ "rust-analyzer.inlayHints.typeHints.hideNamedConstructor": {
"markdownDescription": "Whether to hide inlay hints for constructors.",
"default": false,
"type": "boolean"
},
+ "rust-analyzer.joinLines.joinAssignments": {
+ "markdownDescription": "Join lines merges consecutive declaration and initialization of an assignment.",
+ "default": true,
+ "type": "boolean"
+ },
"rust-analyzer.joinLines.joinElseIf": {
"markdownDescription": "Join lines inserts else between consecutive ifs.",
"default": true,
@@ -851,12 +848,7 @@
"default": true,
"type": "boolean"
},
- "rust-analyzer.joinLines.joinAssignments": {
- "markdownDescription": "Join lines merges consecutive declaration and initialization of an assignment.",
- "default": true,
- "type": "boolean"
- },
- "rust-analyzer.lens.debug": {
+ "rust-analyzer.lens.debug.enable": {
"markdownDescription": "Whether to show `Debug` lens. Only applies when\n`#rust-analyzer.lens.enable#` is set.",
"default": true,
"type": "boolean"
@@ -866,33 +858,38 @@
"default": true,
"type": "boolean"
},
- "rust-analyzer.lens.implementations": {
- "markdownDescription": "Whether to show `Implementations` lens. Only applies when\n`#rust-analyzer.lens.enable#` is set.",
+ "rust-analyzer.lens.forceCustomCommands": {
+ "markdownDescription": "Internal config: use custom client-side commands even when the\nclient doesn't set the corresponding capability.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.lens.run": {
- "markdownDescription": "Whether to show `Run` lens. Only applies when\n`#rust-analyzer.lens.enable#` is set.",
+ "rust-analyzer.lens.implementations.enable": {
+ "markdownDescription": "Whether to show `Implementations` lens. Only applies when\n`#rust-analyzer.lens.enable#` is set.",
"default": true,
"type": "boolean"
},
- "rust-analyzer.lens.methodReferences": {
- "markdownDescription": "Whether to show `Method References` lens. Only applies when\n`#rust-analyzer.lens.enable#` is set.",
+ "rust-analyzer.lens.references.adt.enable": {
+ "markdownDescription": "Whether to show `References` lens for Struct, Enum, and Union.\nOnly applies when `#rust-analyzer.lens.enable#` is set.",
"default": false,
"type": "boolean"
},
- "rust-analyzer.lens.references": {
- "markdownDescription": "Whether to show `References` lens for Struct, Enum, Union and Trait.\nOnly applies when `#rust-analyzer.lens.enable#` is set.",
+ "rust-analyzer.lens.references.adt.variant.enable": {
+ "markdownDescription": "Whether to show `References` lens for Enum Variants.\nOnly applies when `#rust-analyzer.lens.enable#` is set.",
"default": false,
"type": "boolean"
},
- "rust-analyzer.lens.enumVariantReferences": {
- "markdownDescription": "Whether to show `References` lens for Enum Variants.\nOnly applies when `#rust-analyzer.lens.enable#` is set.",
+ "rust-analyzer.lens.references.method.enable": {
+ "markdownDescription": "Whether to show `Method References` lens. Only applies when\n`#rust-analyzer.lens.enable#` is set.",
"default": false,
"type": "boolean"
},
- "rust-analyzer.lens.forceCustomCommands": {
- "markdownDescription": "Internal config: use custom client-side commands even when the\nclient doesn't set the corresponding capability.",
+ "rust-analyzer.lens.references.trait.enable": {
+ "markdownDescription": "Whether to show `References` lens for Trait.\nOnly applies when `#rust-analyzer.lens.enable#` is set.",
+ "default": false,
+ "type": "boolean"
+ },
+ "rust-analyzer.lens.run.enable": {
+ "markdownDescription": "Whether to show `Run` lens. Only applies when\n`#rust-analyzer.lens.enable#` is set.",
"default": true,
"type": "boolean"
},
@@ -907,7 +904,7 @@
]
}
},
- "rust-analyzer.lruCapacity": {
+ "rust-analyzer.lru.capacity": {
"markdownDescription": "Number of syntax trees rust-analyzer keeps in memory. Defaults to 128.",
"default": null,
"type": [
@@ -921,6 +918,11 @@
"default": true,
"type": "boolean"
},
+ "rust-analyzer.primeCaches.enable": {
+ "markdownDescription": "Warm up caches on project load.",
+ "default": true,
+ "type": "boolean"
+ },
"rust-analyzer.primeCaches.numThreads": {
"markdownDescription": "How many worker threads to to handle priming caches. The default `0` means to pick automatically.",
"default": 0,
@@ -928,11 +930,21 @@
"minimum": 0,
"maximum": 255
},
+ "rust-analyzer.procMacro.attributes.enable": {
+ "markdownDescription": "Expand attribute macros. Requires `#rust-analyzer.procMacro.enable#` to be set.",
+ "default": true,
+ "type": "boolean"
+ },
"rust-analyzer.procMacro.enable": {
"markdownDescription": "Enable support for procedural macros, implies `#rust-analyzer.cargo.runBuildScripts#`.",
"default": true,
"type": "boolean"
},
+ "rust-analyzer.procMacro.ignored": {
+ "markdownDescription": "These proc-macros will be ignored when trying to expand them.\n\nThis config takes a map of crate names with the exported proc-macro names to ignore as values.",
+ "default": {},
+ "type": "object"
+ },
"rust-analyzer.procMacro.server": {
"markdownDescription": "Internal config, path to proc-macro server executable (typically,\nthis is rust-analyzer itself, but we override this in tests).",
"default": null,
@@ -941,12 +953,7 @@
"string"
]
},
- "rust-analyzer.procMacro.ignored": {
- "markdownDescription": "These proc-macros will be ignored when trying to expand them.\n\nThis config takes a map of crate names with the exported proc-macro names to ignore as values.",
- "default": {},
- "type": "object"
- },
- "rust-analyzer.runnables.overrideCargo": {
+ "rust-analyzer.runnables.command": {
"markdownDescription": "Command to be executed instead of 'cargo' for runnables.",
"default": null,
"type": [
@@ -954,7 +961,7 @@
"string"
]
},
- "rust-analyzer.runnables.cargoExtraArgs": {
+ "rust-analyzer.runnables.extraArgs": {
"markdownDescription": "Additional arguments to be passed to cargo for runnables such as\ntests or binaries. For example, it may be `--release`.",
"default": [],
"type": "array",
@@ -962,7 +969,7 @@
"type": "string"
}
},
- "rust-analyzer.rustcSource": {
+ "rust-analyzer.rustc.source": {
"markdownDescription": "Path to the Cargo.toml of the rust compiler workspace, for usage in rustc_private\nprojects, or \"discover\" to try to automatically find it if the `rustc-dev` component\nis installed.\n\nAny project which uses rust-analyzer with the rustcPrivate\ncrates must set `[package.metadata.rust-analyzer] rustc_private=true` to use it.\n\nThis option does not take effect until rust-analyzer is restarted.",
"default": null,
"type": [
@@ -989,23 +996,25 @@
"type": "string"
}
},
- "rust-analyzer.rustfmt.enableRangeFormatting": {
+ "rust-analyzer.rustfmt.rangeFormatting.enable": {
"markdownDescription": "Enables the use of rustfmt's unstable range formatting command for the\n`textDocument/rangeFormatting` request. The rustfmt option is unstable and only\navailable on a nightly build.",
"default": false,
"type": "boolean"
},
- "rust-analyzer.workspace.symbol.search.scope": {
- "markdownDescription": "Workspace symbol search scope.",
- "default": "workspace",
- "type": "string",
- "enum": [
- "workspace",
- "workspace_and_dependencies"
- ],
- "enumDescriptions": [
- "Search in current workspace only",
- "Search in current workspace and dependencies"
- ]
+ "rust-analyzer.semanticHighlighting.strings.enable": {
+ "markdownDescription": "Use semantic tokens for strings.\n\nIn some editors (e.g. vscode) semantic tokens override other highlighting grammars.\nBy disabling semantic tokens for strings, other grammars can be used to highlight\ntheir contents.",
+ "default": true,
+ "type": "boolean"
+ },
+ "rust-analyzer.signatureInfo.documentation.enable": {
+ "markdownDescription": "Show documentation.",
+ "default": true,
+ "type": "boolean"
+ },
+ "rust-analyzer.signatureInfo.signature.enable": {
+ "markdownDescription": "Show full signature of the callable. Only shows parameters if disabled.",
+ "default": true,
+ "type": "boolean"
},
"rust-analyzer.workspace.symbol.search.kind": {
"markdownDescription": "Workspace symbol search kind.",
@@ -1026,6 +1035,19 @@
"type": "integer",
"minimum": 0
},
+ "rust-analyzer.workspace.symbol.search.scope": {
+ "markdownDescription": "Workspace symbol search scope.",
+ "default": "workspace",
+ "type": "string",
+ "enum": [
+ "workspace",
+ "workspace_and_dependencies"
+ ],
+ "enumDescriptions": [
+ "Search in current workspace only",
+ "Search in current workspace and dependencies"
+ ]
+ },
"$generated-end": {}
}
},