mirror of
https://github.com/rust-lang/rust-analyzer.git
synced 2025-09-25 11:17:13 +00:00
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.
This commit is contained in:
parent
a91fb2b9a1
commit
365be20980
17
README.md
17
README.md
@ -4,8 +4,21 @@
|
|||||||
alt="rust-analyzer logo">
|
alt="rust-analyzer logo">
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
rust-analyzer is a modular compiler frontend for the Rust language.
|
rust-analyzer is a language server that provides IDE functionality for
|
||||||
It is a part of a larger rls-2.0 effort to create excellent IDE support for Rust.
|
writing Rust programs. You can use it with any editor that supports
|
||||||
|
the [Language Server
|
||||||
|
Protocol](https://microsoft.github.io/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](https://rust-analyzer.github.io/book/contributing/architecture.html)
|
||||||
|
in the manual.
|
||||||
|
|
||||||
## Quick Start
|
## Quick Start
|
||||||
|
|
||||||
|
@ -1,13 +1,20 @@
|
|||||||
# rust-analyzer
|
# rust-analyzer
|
||||||
|
|
||||||
At its core, rust-analyzer is a **library** for semantic analysis of
|
rust-analyzer is a language server that provides IDE functionality for
|
||||||
Rust code as it changes over time. This manual focuses on a specific
|
writing Rust programs. You can use it with any editor that supports
|
||||||
usage of the library -- running it as part of a server that implements
|
|
||||||
the [Language Server
|
the [Language Server
|
||||||
Protocol](https://microsoft.github.io/language-server-protocol/) (LSP).
|
Protocol](https://microsoft.github.io/language-server-protocol/) (VS
|
||||||
The LSP allows various code editors, like VS Code, Emacs or Vim, to
|
Code, Vim, Emacs, Zed, etc).
|
||||||
implement semantic features like completion or goto definition by
|
|
||||||
talking to an external language server process.
|
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](https://rust-analyzer.github.io/book/contributing/architecture.html)
|
||||||
|
for more details.
|
||||||
|
|
||||||
To improve this document, send a pull request:
|
To improve this document, send a pull request:
|
||||||
[https://github.com/rust-lang/rust-analyzer](https://github.com/rust-lang/rust-analyzer/blob/master/docs/book/README.md)
|
[https://github.com/rust-lang/rust-analyzer](https://github.com/rust-lang/rust-analyzer/blob/master/docs/book/README.md)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user