diff options
| author | ChosenName <69129796+ChosenName@users.noreply.github.com> | 2024-06-04 21:09:21 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-06-04 21:09:21 -0600 |
| commit | dc1074862bdf778c334cea525cb4a9a10d347f32 (patch) | |
| tree | 49281a7f40e61a83af8d75c8473091d8ba5aa118 | |
| parent | b885cea9893627bb52de5db611b150996815d632 (diff) | |
| download | rust-dc1074862bdf778c334cea525cb4a9a10d347f32.tar.gz rust-dc1074862bdf778c334cea525cb4a9a10d347f32.zip | |
Update config.rs
| -rw-r--r-- | src/tools/rust-analyzer/crates/rust-analyzer/src/config.rs | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/tools/rust-analyzer/crates/rust-analyzer/src/config.rs b/src/tools/rust-analyzer/crates/rust-analyzer/src/config.rs index a8d1e72aed9..df8cba0ae3c 100644 --- a/src/tools/rust-analyzer/crates/rust-analyzer/src/config.rs +++ b/src/tools/rust-analyzer/crates/rust-analyzer/src/config.rs @@ -2634,11 +2634,19 @@ fn schema(fields: &[SchemaField]) -> serde_json::Value { .iter() .map(|(field, ty, doc, default)| { let name = field.replace('_', "."); + let catagory = name.find('.').map(|end| { + String::from(&name[..end]) + }).unwrap_or("general".into()); let name = format!("rust-analyzer.{name}"); let props = field_props(field, ty, doc, default); - (name, props) + serde_json::json!({ + "title": catagory, + "properties": { + name: props + } + }) }) - .collect::<serde_json::Map<_, _>>(); + .collect::<Vec<_>>(); map.into() } @@ -3037,8 +3045,8 @@ mod tests { let s = Config::json_schema(); let schema = format!("{s:#}"); let mut schema = schema - .trim_start_matches('{') - .trim_end_matches('}') + .trim_start_matches('[') + .trim_end_matches(']') .replace(" ", " ") .replace('\n', "\n ") .trim_start_matches('\n') @@ -3072,8 +3080,8 @@ mod tests { let package_json_path = project_root().join("editors/code/package.json"); let mut package_json = fs::read_to_string(&package_json_path).unwrap(); - let start_marker = " \"$generated-start\": {},\n"; - let end_marker = " \"$generated-end\": {}\n"; + let start_marker = " { \"title\": \"$generated-start\" },\n"; + let end_marker = " { \"title\": \"$generated-end\" }\n"; let start = package_json.find(start_marker).unwrap() + start_marker.len(); let end = package_json.find(end_marker).unwrap(); |
