]> git.lizzy.rs Git - rust.git/blob - editors/code/README.md
add sponsor links
[rust.git] / editors / code / README.md
1 # rust-analyzer
2
3 Provides support for rust-analyzer: novel LSP server for the Rust programming language.
4
5 **Note** the extension may cause conflicts with the official Rust extension. It is recommended to disable the Rust extension when using the rust-analyzer extension.
6
7 **Note** the project is in alpha status: it is already useful in practice, but can't be considered stable.
8
9 ## Sponsor
10
11 Work on rust-analyzer is sponsored by
12
13 [<img src="https://user-images.githubusercontent.com/1711539/58105231-cf306900-7bee-11e9-83d8-9f1102e59d29.png" alt="Ferrous Systems" width="300">](https://ferrous-systems.com/)
14
15 - [Mozilla](https://www.mozilla.org/en-US/)
16 - [Embark Studios](https://embark-studios.com/)
17 - [freiheit.com](https://www.freiheit.com)
18
19 If you want to sponsor:
20
21 - [OpenCollective](https://opencollective.com/rust-analyzer/)
22 - [Github Sponsors](https://github.com/sponsors/rust-analyzer)
23
24 ## Features
25
26 - [code completion], [imports insertion]
27 - [go to definition], [implementation], [type definition]
28 - [find all references], [workspace symbol search], [rename]
29 - [types and documentation on hover]
30 - [inlay hints]
31 - [semantic syntax highlighting]
32 - a lot of [assist(code actions)]
33 - apply suggestions from errors
34 - ... and many more, checkout the [manual] to see them all
35
36 [code completion]: https://rust-analyzer.github.io/manual.html#magic-completions
37 [imports insertion]: https://rust-analyzer.github.io/manual.html#auto-import
38 [go to definition]: https://rust-analyzer.github.io/manual.html#go-to-definition
39 [implementation]: https://rust-analyzer.github.io/manual.html#go-to-implementation
40 [type definition]: https://rust-analyzer.github.io/manual.html#go-to-type-definition
41 [find all references]: https://rust-analyzer.github.io/manual.html#find-all-references
42 [workspace symbol search]: https://rust-analyzer.github.io/manual.html#workspace-symbol
43 [rename]: https://rust-analyzer.github.io/manual.html#rename
44 [types and documentation on hover]: https://rust-analyzer.github.io/manual.html#hover
45 [inlay hints]: https://rust-analyzer.github.io/manual.html#inlay-hints
46 [semantic syntax highlighting]: https://rust-analyzer.github.io/manual.html#semantic-syntax-highlighting
47 [assist(code actions)]: https://rust-analyzer.github.io/manual.html#assists-code-actions
48
49 [manual]: https://rust-analyzer.github.io/manual.html
50
51 ## Quick start
52
53 1. Install [rustup] the rust toolchain
54 2. Install the [rust-analyzer extension]
55
56 [rustup]: https://rustup.rs
57 [rust-analyzer extension]: https://marketplace.visualstudio.com/items?itemName=matklad.rust-analyzer
58
59 ## Configuration
60
61 This extension provides configurations through VSCode's configuration settings. All the configurations are under `rust-analyzer.*`.
62
63 See <https://rust-analyzer.github.io/manual.html#vs-code-2> for more information on VSCode specific configurations.
64
65 ## Communication
66
67 For usage and troubleshooting requests, please use "IDEs and Editors" category of the Rust forum:
68
69 <https://users.rust-lang.org/c/ide/14>
70
71 ## Documentation
72
73 See <https://rust-analyzer.github.io/> for more information.