rust/src/tools/rust-analyzer/editors/code
bors a97aef8466 Auto merge of #16840 - Wilfred:shell_runnable, r=Veykril
Allow rust-project.json to include arbitrary shell commands for runnables

This is a follow-up on #16135, resolving the feedback raised :)

Allow rust-project.json to include shell runnables, of the form:

```
{
  "build_info": {
    "label": "//project/foo:my-crate",
    "target_kind": "bin",
    "shell_runnables": [
      {
        "kind": "run",
        "program": "buck2",
        "args": ["run", "//project/foo:my-crate"]
      },
      {
        "kind": "test_one",
        "program": "test_runner",
        "args": ["--name=$$TEST_NAME$$"]
      }
    ]
  }
}

```

If these runnable configs are present for the current crate in rust-project.json, offer them as runnables in VS Code.

This PR required some boring changes to APIs that previously only handled cargo situations. I've split out these changes as commits labelled 'refactor', so it's easy to see the interesting changes.
2024-06-11 16:13:10 +00:00
..
src feature: add build system info; runnables to rust-project.json 2024-06-11 11:55:17 -04:00
tests feature: add build system info; runnables to rust-project.json 2024-06-11 11:55:17 -04:00
.eslintignore Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
.eslintrc.js Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
.gitignore Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
.prettierignore Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
.prettierrc.js Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
.vscodeignore Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
icon.png Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
language-configuration.json Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
LICENSE Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
package-lock.json Chore(deps-dev): Bump braces from 3.0.2 to 3.0.3 in /editors/code 2024-06-11 09:01:41 +00:00
package.json Simplify some config serialization stuff 2024-06-11 10:45:17 +02:00
ra_syntax_tree.tmGrammar.json Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
README.md Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
tsconfig.eslint.json Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00
tsconfig.json Allow rust files to be used linkedProjects 2024-04-21 16:26:55 +02:00

rust-analyzer

This extension provides support for the Rust programming language. It is recommended over and replaces rust-lang.rust.

Features

Quick start

  1. Install rustup.
  2. Install the rust-analyzer extension.

Configuration

This extension provides configurations through VSCode's configuration settings. All configurations are under rust-analyzer.*.

See the manual for more information on VSCode specific configurations.

Communication

For usage and troubleshooting requests, please use the "IDEs and Editors" category of the Rust forum.

Documentation

See rust-analyzer.github.io for more information.