mirror of
https://github.com/rust-lang/rust-analyzer
synced 2024-12-27 05:23:24 +00:00
internal: Make VSCode config more GUI edit friendly
This commit is contained in:
parent
8496633c87
commit
622defb373
3 changed files with 106 additions and 121 deletions
|
@ -109,7 +109,8 @@ config_data! {
|
||||||
///
|
///
|
||||||
/// Set to `"all"` to pass `--all-features` to cargo.
|
/// Set to `"all"` to pass `--all-features` to cargo.
|
||||||
checkOnSave_features: Option<CargoFeatures> = "null",
|
checkOnSave_features: Option<CargoFeatures> = "null",
|
||||||
/// Do not activate the `default` feature.
|
/// Whether to pass `--no-default-features` to cargo. Defaults to
|
||||||
|
/// `#rust-analyzer.cargo.noDefaultFeatures#`.
|
||||||
checkOnSave_noDefaultFeatures: Option<bool> = "null",
|
checkOnSave_noDefaultFeatures: Option<bool> = "null",
|
||||||
/// Override the command rust-analyzer uses to run build scripts and
|
/// Override the command rust-analyzer uses to run build scripts and
|
||||||
/// build procedural macros. The command is required to output json
|
/// build procedural macros. The command is required to output json
|
||||||
|
@ -134,7 +135,7 @@ config_data! {
|
||||||
/// with `self` prefixed to them when inside a method.
|
/// with `self` prefixed to them when inside a method.
|
||||||
completion_autoself_enable: bool = "true",
|
completion_autoself_enable: bool = "true",
|
||||||
/// Whether to add parenthesis and argument snippets when completing function.
|
/// Whether to add parenthesis and argument snippets when completing function.
|
||||||
completion_callable_snippets: Option<CallableCompletionDef> = "\"fill_arguments\"",
|
completion_callable_snippets: CallableCompletionDef = "\"fill_arguments\"",
|
||||||
/// Whether to show postfix snippets like `dbg`, `if`, `not`, etc.
|
/// Whether to show postfix snippets like `dbg`, `if`, `not`, etc.
|
||||||
completion_postfix_enable: bool = "true",
|
completion_postfix_enable: bool = "true",
|
||||||
/// Enables completions of private items and fields that are defined in the current workspace even if they are not visible at the current position.
|
/// Enables completions of private items and fields that are defined in the current workspace even if they are not visible at the current position.
|
||||||
|
@ -1030,10 +1031,11 @@ impl Config {
|
||||||
&& completion_item_edit_resolve(&self.caps),
|
&& completion_item_edit_resolve(&self.caps),
|
||||||
enable_self_on_the_fly: self.data.completion_autoself_enable,
|
enable_self_on_the_fly: self.data.completion_autoself_enable,
|
||||||
enable_private_editable: self.data.completion_privateEditable_enable,
|
enable_private_editable: self.data.completion_privateEditable_enable,
|
||||||
callable: self.data.completion_callable_snippets.map(|it| match it {
|
callable: match self.data.completion_callable_snippets {
|
||||||
CallableCompletionDef::FillArguments => CallableSnippets::FillArguments,
|
CallableCompletionDef::FillArguments => Some(CallableSnippets::FillArguments),
|
||||||
CallableCompletionDef::AddParentheses => CallableSnippets::AddParentheses,
|
CallableCompletionDef::AddParentheses => Some(CallableSnippets::AddParentheses),
|
||||||
}),
|
CallableCompletionDef::None => None,
|
||||||
|
},
|
||||||
insert_use: self.insert_use_config(),
|
insert_use: self.insert_use_config(),
|
||||||
snippet_cap: SnippetCap::new(try_or_def!(
|
snippet_cap: SnippetCap::new(try_or_def!(
|
||||||
self.caps
|
self.caps
|
||||||
|
@ -1385,6 +1387,7 @@ enum ImportGranularityDef {
|
||||||
enum CallableCompletionDef {
|
enum CallableCompletionDef {
|
||||||
FillArguments,
|
FillArguments,
|
||||||
AddParentheses,
|
AddParentheses,
|
||||||
|
None,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Deserialize, Debug, Clone)]
|
#[derive(Deserialize, Debug, Clone)]
|
||||||
|
@ -1662,16 +1665,16 @@ fn field_props(field: &str, ty: &str, doc: &[&str], default: &str) -> serde_json
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": ["workspace", "workspace_and_dependencies"],
|
"enum": ["workspace", "workspace_and_dependencies"],
|
||||||
"enumDescriptions": [
|
"enumDescriptions": [
|
||||||
"Search in current workspace only",
|
"Search in current workspace only.",
|
||||||
"Search in current workspace and dependencies"
|
"Search in current workspace and dependencies."
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
"WorkspaceSymbolSearchKindDef" => set! {
|
"WorkspaceSymbolSearchKindDef" => set! {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": ["only_types", "all_symbols"],
|
"enum": ["only_types", "all_symbols"],
|
||||||
"enumDescriptions": [
|
"enumDescriptions": [
|
||||||
"Search for types only",
|
"Search for types only.",
|
||||||
"Search for all symbols kinds"
|
"Search for all symbols kinds."
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
"ParallelCachePrimingNumThreads" => set! {
|
"ParallelCachePrimingNumThreads" => set! {
|
||||||
|
@ -1680,8 +1683,6 @@ fn field_props(field: &str, ty: &str, doc: &[&str], default: &str) -> serde_json
|
||||||
"maximum": 255
|
"maximum": 255
|
||||||
},
|
},
|
||||||
"LifetimeElisionDef" => set! {
|
"LifetimeElisionDef" => set! {
|
||||||
"anyOf": [
|
|
||||||
{
|
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": [
|
"enum": [
|
||||||
"always",
|
"always",
|
||||||
|
@ -1694,12 +1695,7 @@ fn field_props(field: &str, ty: &str, doc: &[&str], default: &str) -> serde_json
|
||||||
"Only show lifetime elision hints if a return type is involved."
|
"Only show lifetime elision hints if a return type is involved."
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{ "type": "boolean" }
|
|
||||||
],
|
|
||||||
},
|
|
||||||
"ReborrowHintsDef" => set! {
|
"ReborrowHintsDef" => set! {
|
||||||
"anyOf": [
|
|
||||||
{
|
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": [
|
"enum": [
|
||||||
"always",
|
"always",
|
||||||
|
@ -1712,15 +1708,21 @@ fn field_props(field: &str, ty: &str, doc: &[&str], default: &str) -> serde_json
|
||||||
"Only show mutable reborrow hints."
|
"Only show mutable reborrow hints."
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{ "type": "boolean" }
|
|
||||||
],
|
|
||||||
},
|
|
||||||
"CargoFeatures" => set! {
|
"CargoFeatures" => set! {
|
||||||
"type": ["string", "array"],
|
"anyOf": [
|
||||||
"items": { "type": "string" },
|
{
|
||||||
"enum": ["all"],
|
"type": "string",
|
||||||
|
"enum": [
|
||||||
|
"all"
|
||||||
|
],
|
||||||
"enumDescriptions": [
|
"enumDescriptions": [
|
||||||
"Pass `--all-features` to cargo",
|
"Pass `--all-features` to cargo",
|
||||||
|
]
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "array",
|
||||||
|
"items": { "type": "string" }
|
||||||
|
}
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
"Option<CargoFeatures>" => set! {
|
"Option<CargoFeatures>" => set! {
|
||||||
|
@ -1741,22 +1743,19 @@ fn field_props(field: &str, ty: &str, doc: &[&str], default: &str) -> serde_json
|
||||||
{ "type": "null" }
|
{ "type": "null" }
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
"Option<CallableCompletionDef>" => set! {
|
"CallableCompletionDef" => set! {
|
||||||
"anyOf": [
|
|
||||||
{
|
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": [
|
"enum": [
|
||||||
"fill_arguments",
|
"fill_arguments",
|
||||||
"add_parentheses"
|
"add_parentheses",
|
||||||
|
"none",
|
||||||
],
|
],
|
||||||
"enumDescriptions": [
|
"enumDescriptions": [
|
||||||
"Add call parentheses and pre-fill arguments",
|
"Add call parentheses and pre-fill arguments.",
|
||||||
"Add call parentheses"
|
"Add call parentheses.",
|
||||||
|
"Do no snippet completions for callables."
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{ "type": "null" }
|
|
||||||
],
|
|
||||||
},
|
|
||||||
"SignatureDetail" => set! {
|
"SignatureDetail" => set! {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": ["full", "parameters"],
|
"enum": ["full", "parameters"],
|
||||||
|
|
|
@ -104,7 +104,8 @@ Set to `"all"` to pass `--all-features` to cargo.
|
||||||
[[rust-analyzer.checkOnSave.noDefaultFeatures]]rust-analyzer.checkOnSave.noDefaultFeatures (default: `null`)::
|
[[rust-analyzer.checkOnSave.noDefaultFeatures]]rust-analyzer.checkOnSave.noDefaultFeatures (default: `null`)::
|
||||||
+
|
+
|
||||||
--
|
--
|
||||||
Do not activate the `default` feature.
|
Whether to pass `--no-default-features` to cargo. Defaults to
|
||||||
|
`#rust-analyzer.cargo.noDefaultFeatures#`.
|
||||||
--
|
--
|
||||||
[[rust-analyzer.checkOnSave.overrideCommand]]rust-analyzer.checkOnSave.overrideCommand (default: `null`)::
|
[[rust-analyzer.checkOnSave.overrideCommand]]rust-analyzer.checkOnSave.overrideCommand (default: `null`)::
|
||||||
+
|
+
|
||||||
|
|
|
@ -423,13 +423,9 @@
|
||||||
"rust-analyzer.cargo.features": {
|
"rust-analyzer.cargo.features": {
|
||||||
"markdownDescription": "List of features to activate.\n\nSet this to `\"all\"` to pass `--all-features` to cargo.",
|
"markdownDescription": "List of features to activate.\n\nSet this to `\"all\"` to pass `--all-features` to cargo.",
|
||||||
"default": [],
|
"default": [],
|
||||||
"type": [
|
"anyOf": [
|
||||||
"string",
|
{
|
||||||
"array"
|
"type": "string",
|
||||||
],
|
|
||||||
"items": {
|
|
||||||
"type": "string"
|
|
||||||
},
|
|
||||||
"enum": [
|
"enum": [
|
||||||
"all"
|
"all"
|
||||||
],
|
],
|
||||||
|
@ -437,6 +433,14 @@
|
||||||
"Pass `--all-features` to cargo"
|
"Pass `--all-features` to cargo"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
"rust-analyzer.cargo.noDefaultFeatures": {
|
"rust-analyzer.cargo.noDefaultFeatures": {
|
||||||
"markdownDescription": "Whether to pass `--no-default-features` to cargo.",
|
"markdownDescription": "Whether to pass `--no-default-features` to cargo.",
|
||||||
"default": false,
|
"default": false,
|
||||||
|
@ -513,7 +517,7 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"rust-analyzer.checkOnSave.noDefaultFeatures": {
|
"rust-analyzer.checkOnSave.noDefaultFeatures": {
|
||||||
"markdownDescription": "Do not activate the `default` feature.",
|
"markdownDescription": "Whether to pass `--no-default-features` to cargo. Defaults to\n`#rust-analyzer.cargo.noDefaultFeatures#`.",
|
||||||
"default": null,
|
"default": null,
|
||||||
"type": [
|
"type": [
|
||||||
"null",
|
"null",
|
||||||
|
@ -552,21 +556,16 @@
|
||||||
"rust-analyzer.completion.callable.snippets": {
|
"rust-analyzer.completion.callable.snippets": {
|
||||||
"markdownDescription": "Whether to add parenthesis and argument snippets when completing function.",
|
"markdownDescription": "Whether to add parenthesis and argument snippets when completing function.",
|
||||||
"default": "fill_arguments",
|
"default": "fill_arguments",
|
||||||
"anyOf": [
|
|
||||||
{
|
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": [
|
"enum": [
|
||||||
"fill_arguments",
|
"fill_arguments",
|
||||||
"add_parentheses"
|
"add_parentheses",
|
||||||
|
"none"
|
||||||
],
|
],
|
||||||
"enumDescriptions": [
|
"enumDescriptions": [
|
||||||
"Add call parentheses and pre-fill arguments",
|
"Add call parentheses and pre-fill arguments.",
|
||||||
"Add call parentheses"
|
"Add call parentheses.",
|
||||||
]
|
"Do no snippet completions for callables."
|
||||||
},
|
|
||||||
{
|
|
||||||
"type": "null"
|
|
||||||
}
|
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"rust-analyzer.completion.postfix.enable": {
|
"rust-analyzer.completion.postfix.enable": {
|
||||||
|
@ -797,8 +796,6 @@
|
||||||
"rust-analyzer.inlayHints.lifetimeElisionHints.enable": {
|
"rust-analyzer.inlayHints.lifetimeElisionHints.enable": {
|
||||||
"markdownDescription": "Whether to show inlay type hints for elided lifetimes in function signatures.",
|
"markdownDescription": "Whether to show inlay type hints for elided lifetimes in function signatures.",
|
||||||
"default": "never",
|
"default": "never",
|
||||||
"anyOf": [
|
|
||||||
{
|
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": [
|
"enum": [
|
||||||
"always",
|
"always",
|
||||||
|
@ -811,11 +808,6 @@
|
||||||
"Only show lifetime elision hints if a return type is involved."
|
"Only show lifetime elision hints if a return type is involved."
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"type": "boolean"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"rust-analyzer.inlayHints.lifetimeElisionHints.useParameterNames": {
|
"rust-analyzer.inlayHints.lifetimeElisionHints.useParameterNames": {
|
||||||
"markdownDescription": "Whether to prefer using parameter names as the name for elided lifetime hints if possible.",
|
"markdownDescription": "Whether to prefer using parameter names as the name for elided lifetime hints if possible.",
|
||||||
"default": false,
|
"default": false,
|
||||||
|
@ -838,8 +830,6 @@
|
||||||
"rust-analyzer.inlayHints.reborrowHints.enable": {
|
"rust-analyzer.inlayHints.reborrowHints.enable": {
|
||||||
"markdownDescription": "Whether to show inlay type hints for compiler inserted reborrows.",
|
"markdownDescription": "Whether to show inlay type hints for compiler inserted reborrows.",
|
||||||
"default": "never",
|
"default": "never",
|
||||||
"anyOf": [
|
|
||||||
{
|
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": [
|
"enum": [
|
||||||
"always",
|
"always",
|
||||||
|
@ -852,11 +842,6 @@
|
||||||
"Only show mutable reborrow hints."
|
"Only show mutable reborrow hints."
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"type": "boolean"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"rust-analyzer.inlayHints.renderColons": {
|
"rust-analyzer.inlayHints.renderColons": {
|
||||||
"markdownDescription": "Whether to render leading colons for type hints, and trailing colons for parameter hints.",
|
"markdownDescription": "Whether to render leading colons for type hints, and trailing colons for parameter hints.",
|
||||||
"default": true,
|
"default": true,
|
||||||
|
@ -1065,8 +1050,8 @@
|
||||||
"all_symbols"
|
"all_symbols"
|
||||||
],
|
],
|
||||||
"enumDescriptions": [
|
"enumDescriptions": [
|
||||||
"Search for types only",
|
"Search for types only.",
|
||||||
"Search for all symbols kinds"
|
"Search for all symbols kinds."
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"rust-analyzer.workspace.symbol.search.limit": {
|
"rust-analyzer.workspace.symbol.search.limit": {
|
||||||
|
@ -1084,8 +1069,8 @@
|
||||||
"workspace_and_dependencies"
|
"workspace_and_dependencies"
|
||||||
],
|
],
|
||||||
"enumDescriptions": [
|
"enumDescriptions": [
|
||||||
"Search in current workspace only",
|
"Search in current workspace only.",
|
||||||
"Search in current workspace and dependencies"
|
"Search in current workspace and dependencies."
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"$generated-end": {}
|
"$generated-end": {}
|
||||||
|
|
Loading…
Reference in a new issue