Wilfred Hughes 365be20980 Clarify intro in README and manual
The first sentence a new user should see should ideally answer the
questions:

* What is rust-analyzer?
* Why might I want to use it?

The vast majority of users will be interested in using rust-analyzer
inside their favourite editor. We should clarify that rust-analyzer is
an LSP implementation and that it supports all the classic IDE
features.

Whilst it's also true that rust-analyzer is modular and organised into
libraries, the first impression should (I think) focus on an overview
and the primary use case.
2025-09-08 19:10:14 +01:00

1.2 KiB

rust-analyzer

rust-analyzer is a language server that provides IDE functionality for writing Rust programs. You can use it with any editor that supports the Language Server Protocol (VS Code, Vim, Emacs, Zed, etc).

rust-analyzer features include go-to-definition, find-all-references, refactorings and code completion. rust-analyzer also supports integrated formatting (with rustfmt) and integrated diagnostics (with rustc and clippy).

Internally, rust-analyzer is structured as a set of libraries for analyzing Rust code. See Architecture for more details.

To improve this document, send a pull request: https://github.com/rust-lang/rust-analyzer

The manual is written in markdown and includes some extra files which are generated from the source code. Run cargo test and cargo xtask codegen to create these.

If you have questions about using rust-analyzer, please ask them in the "IDEs and Editors" topic of Rust users forum.