| # rust-analyzer | |
| This extension provides support for the [Rust programming language](https://www.rust-lang.org/). | |
| It is recommended over and replaces `rust-lang.rust`. | |
| ## Features | |
| - [code completion] with [imports insertion] | |
| - go to [definition], [implementation], [type definition] | |
| - [find all references], [workspace symbol search], [symbol renaming] | |
| - [types and documentation on hover] | |
| - [inlay hints] for types and parameter names | |
| - [semantic syntax highlighting] | |
| - a lot of [assists (code actions)] | |
| - apply suggestions from errors | |
| - ... and many more, check out the [manual] to see them all | |
| [code completion]: https://rust-analyzer.github.io/book/features.html#magic-completions | |
| [imports insertion]: https://rust-analyzer.github.io/book/features.html#completion-with-autoimport | |
| [definition]: https://rust-analyzer.github.io/book/features.html#go-to-definition | |
| [implementation]: https://rust-analyzer.github.io/book/features.html#go-to-implementation | |
| [type definition]: https://rust-analyzer.github.io/book/features.html#go-to-type-definition | |
| [find all references]: https://rust-analyzer.github.io/book/features.html#find-all-references | |
| [workspace symbol search]: https://rust-analyzer.github.io/book/features.html#workspace-symbol | |
| [symbol renaming]: https://rust-analyzer.github.io/book/features.html#rename | |
| [types and documentation on hover]: https://rust-analyzer.github.io/book/features.html#hover | |
| [inlay hints]: https://rust-analyzer.github.io/book/features.html#inlay-hints | |
| [semantic syntax highlighting]: https://rust-analyzer.github.io/book/features.html#semantic-syntax-highlighting | |
| [assists (code actions)]: https://rust-analyzer.github.io/book/assists.html | |
| [manual]: https://rust-analyzer.github.io/book/features.html | |
| ## Quick start | |
| 1. Install [rustup]. | |
| 2. Install the [rust-analyzer extension]. | |
| [rustup]: https://rustup.rs | |
| [rust-analyzer extension]: https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer | |
| ## Configuration | |
| This extension provides configurations through VSCode's configuration settings. All configurations are under `rust-analyzer.*`. | |
| See [the manual](https://rust-analyzer.github.io/book/editor_features.html#vs-code) for more information on VSCode specific configurations. | |
| ## Communication | |
| For usage and troubleshooting requests, please use the ["IDEs and Editors" category of the Rust forum](https://users.rust-lang.org/c/ide/14). | |
| ## Documentation | |
| See [rust-analyzer.github.io](https://rust-analyzer.github.io/) for more information. |