Emacs has now two LSP clients, the more minimalistic and lightweight Eglot and the extensive though a bit bloated LSP-Mode. Eglot will soon be shipped with Emacs29. Both have rust-analyzer enabled by default and require no further setup then just being installed and enabled. `lsp-rust.el` is not required anymore. The base-installation for each of those modes is so easy now that I don't think an enumerated list is necessary, both package can be installed via the standard `M-x package-install` and the installation is a one-liner that I provide. Configuration mostly comes into play for support the rust-analyzer extensions to the LSP protocol, which are built into LSP mode and require an extension-package for Eglot. But for the configuration beyond the base configuration I link against official documentation, quickstart guides and documentation for the lsp extensions, to avoid showing outdated information here. This commit is mostly a duplicate of a PR [1] that I made against the rust-analyzer github project. [1]: https://github.com/rust-analyzer/rust-analyzer.github.io/pull/197, https://github.com/rust-analyzer/rust-analyzer.github.io/pull/197/commits/7ff0113006d71a2114cf233422366bee6a5457c2 Spelling: Space before version number in Emacs 29 in manual Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com> |
||
|---|---|---|
| .cargo | ||
| .github | ||
| .vscode | ||
| assets | ||
| bench_data | ||
| crates | ||
| docs | ||
| editors/code | ||
| lib | ||
| xtask | ||
| .editorconfig | ||
| .git-blame-ignore-revs | ||
| .gitattributes | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| LICENSE-APACHE | ||
| LICENSE-MIT | ||
| PRIVACY.md | ||
| README.md | ||
| rustfmt.toml | ||
| triagebot.toml | ||
rust-analyzer is a modular compiler frontend for the Rust language. It is a part of a larger rls-2.0 effort to create excellent IDE support for Rust.
Quick Start
https://rust-analyzer.github.io/manual.html#installation
Documentation
If you want to contribute to rust-analyzer or are just curious about how things work under the hood, check the ./docs/dev folder.
If you want to use rust-analyzer's language server with your editor of choice, check the manual folder. It also contains some tips & tricks to help you be more productive when using rust-analyzer.
Security and Privacy
See the corresponding sections of the manual.
Communication
For usage and troubleshooting requests, please use "IDEs and Editors" category of the Rust forum:
https://users.rust-lang.org/c/ide/14
For questions about development and implementation, join rust-analyzer working group on Zulip:
https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Frust-analyzer
Quick Links
- Website: https://rust-analyzer.github.io/
- Metrics: https://rust-analyzer.github.io/metrics/
- API docs: https://rust-lang.github.io/rust-analyzer/ide/
- Changelog: https://rust-analyzer.github.io/thisweek
License
rust-analyzer is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT for details.