]> git.lizzy.rs Git - rust.git/commitdiff
Fix: transform the asciidoc form link to markdown style when generating the package...
authorDezhi Wu <wu543065657@163.com>
Thu, 28 Oct 2021 02:13:43 +0000 (10:13 +0800)
committerDezhi Wu <wu543065657@163.com>
Thu, 28 Oct 2021 02:13:43 +0000 (10:13 +0800)
crates/rust-analyzer/src/config.rs
editors/code/package.json

index 0d6b1bcbfb022ef082ce57f56a71ce087acf6653..ee6ab698fa4c8ac696b03f234990c94fff7ff61b 100644 (file)
@@ -1289,6 +1289,21 @@ fn generate_package_json_config() {
             .to_string();
         schema.push_str(",\n");
 
+        let mut new_schema = schema.clone();
+        let url_matches = schema.match_indices("https://");
+        let mut cnt = 0;
+        for (idx, _) in url_matches {
+            let link = &schema[idx..];
+            // matching on whitespace to ignore normal links
+            if let Some(link_end) = link.find(|c| c == ' ' || c == '[') {
+                if link.chars().nth(link_end) == Some('[') {
+                    new_schema.insert(idx + cnt, '(');
+                    new_schema.insert(idx + link_end + cnt + 1, ')');
+                    cnt = cnt + 2;
+                }
+            }
+        }
+
         let package_json_path = project_root().join("editors/code/package.json");
         let mut package_json = fs::read_to_string(&package_json_path).unwrap();
 
@@ -1299,9 +1314,9 @@ fn generate_package_json_config() {
         let end = package_json.find(end_marker).unwrap();
 
         let p = remove_ws(&package_json[start..end]);
-        let s = remove_ws(&schema);
+        let s = remove_ws(&new_schema);
         if !p.contains(&s) {
-            package_json.replace_range(start..end, &schema);
+            package_json.replace_range(start..end, &new_schema);
             ensure_file_contents(&package_json_path, &package_json)
         }
     }
index ab69a44c9ab8a1e4dfda2b773e1c49fc2dd158a6..fffaf6c9b8617a691199009a599a25a9d69aef39 100644 (file)
                     ]
                 },
                 "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 (https://rust-analyzer.github.io/manual.html#auto-import)[following order]. Groups are separated by newlines.",
                     "default": true,
                     "type": "boolean"
                 },