diff options
author | Michael-F-Bryan <[email protected]> | 2020-07-16 13:46:54 +0100 |
---|---|---|
committer | Michael-F-Bryan <[email protected]> | 2020-07-16 13:46:54 +0100 |
commit | a0eaadee55312f693979fa5961719b889baa2815 (patch) | |
tree | d14cea8f3b8a06cb7c2844f2009ca166dcca053d /docs/user | |
parent | 468982e45a035c271c40bea9b17c2c202a7efc75 (diff) |
Mentioned problem matchers and running cargo-watch as a VS Code Task
Diffstat (limited to 'docs/user')
-rw-r--r-- | docs/user/manual.adoc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/docs/user/manual.adoc b/docs/user/manual.adoc index 7816287e4..7fa2e7da0 100644 --- a/docs/user/manual.adoc +++ b/docs/user/manual.adoc | |||
@@ -369,3 +369,22 @@ Or it is possible to specify vars more granularly: | |||
369 | ``` | 369 | ``` |
370 | 370 | ||
371 | You can use any valid RegExp as a mask. Also note that a full runnable name is something like *run bin_or_example_name*, *test some::mod::test_name* or *test-mod some::mod*, so it is possible to distinguish binaries, single tests, and test modules with this masks: `"^run"`, `"^test "` (the trailing space matters!), and `"^test-mod"` respectively. | 371 | You can use any valid RegExp as a mask. Also note that a full runnable name is something like *run bin_or_example_name*, *test some::mod::test_name* or *test-mod some::mod*, so it is possible to distinguish binaries, single tests, and test modules with this masks: `"^run"`, `"^test "` (the trailing space matters!), and `"^test-mod"` respectively. |
372 | |||
373 | ==== Compiler feedback from external commands | ||
374 | |||
375 | Instead of relying on the builtin `cargo check`, rust-analyzer can run a command in the background and use the `$rustc-watch` problem matcher to parse its output to generate inline error markers. | ||
376 | |||
377 | To do this you need to create a new https://code.visualstudio.com/docs/editor/tasks[VS Code Task] and set `rust-analyzer.checkOnSave.enable: false` in preferences. | ||
378 | |||
379 | For example, if you want to run https://crates.io/crates/cargo-watch[`cargo watch`] instead you might add the following to `.vscode/tasks.json`: | ||
380 | |||
381 | ```json | ||
382 | { | ||
383 | "label": "Watch", | ||
384 | "group": "build", | ||
385 | "type": "shell", | ||
386 | "command": "cargo watch --package rust-analyzer", | ||
387 | "problemMatcher": "$rustc-watch", | ||
388 | "isBackground": true | ||
389 | } | ||
390 | ``` | ||