From 74396d27c0b94b9143519aa0075afe6c51fd6822 Mon Sep 17 00:00:00 2001 From: Dezhi Wu Date: Fri, 29 Oct 2021 18:25:32 +0800 Subject: [PATCH] Fix: correct markdown link form. --- crates/rust-analyzer/src/config.rs | 12 ++++++++++-- editors/code/package.json | 2 +- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/crates/rust-analyzer/src/config.rs b/crates/rust-analyzer/src/config.rs index 32e4e8ebeeb..81f4ccd365c 100644 --- a/crates/rust-analyzer/src/config.rs +++ b/crates/rust-analyzer/src/config.rs @@ -1290,6 +1290,8 @@ fn generate_package_json_config() { schema.push_str(",\n"); // Transform the asciidoc form link to markdown style. + // + // https://link[text] => [text](https://link) let url_matches = schema.match_indices("https://"); let mut url_offsets = url_matches.map(|(idx, _)| idx).collect::>(); url_offsets.reverse(); @@ -1298,8 +1300,14 @@ fn generate_package_json_config() { // matching on whitespace to ignore normal links if let Some(link_end) = link.find(|c| c == ' ' || c == '[') { if link.chars().nth(link_end) == Some('[') { - schema.insert(idx, '('); - schema.insert(idx + link_end + 1, ')'); + if let Some(link_text_end) = link.find(']') { + let link_text = link[link_end..(link_text_end + 1)].to_string(); + + schema.replace_range((idx + link_end)..(idx + link_text_end + 1), ""); + schema.insert(idx, '('); + schema.insert(idx + link_end + 1, ')'); + schema.insert_str(idx, &link_text); + } } } } diff --git a/editors/code/package.json b/editors/code/package.json index fffaf6c9b86..336081e88c5 100644 --- a/editors/code/package.json +++ b/editors/code/package.json @@ -436,7 +436,7 @@ ] }, "rust-analyzer.assist.importGroup": { - "markdownDescription": "Group inserted imports by the (https://rust-analyzer.github.io/manual.html#auto-import)[following order]. Groups are separated by newlines.", + "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" }, -- 2.44.0