rust-analyzer/editors/code
alcroito 1f7d2a6c22 Add new LSP extension for workspace symbol lookup
The new extension allows filtering of workspace symbool lookup
results by search scope or search kind.

Filtering can be configured in 3 different ways:

 - The '#' or '*' markers can be added inline with the symbol lookup
   query.

   The '#' marker means symbols should be looked up in the current
   workspace and any dependencies. If not specified, only current
   workspace is considered.

   The '*' marker means all kinds of symbols should be looked up
   (types, functions, etc). If not specified, only type symbols are
   returned.

 - Each LSP request can take an optional search_scope or search_kind
   argument query parameter.

 - Finally there are 2 global config options that can be set for all
   requests served by the active RA instance.

Add support for setting the global config options to the VSCode
extension.
The extension does not use the per-request way, but it's useful for
other IDEs.

The latest version of VSCode filters out the inline markers, so
currently the only reasonable way to use the new functionality is
via the global config.
2021-05-18 00:40:30 +02:00
..
src Allow viewing the crate graph in a webview 2021-05-11 16:15:31 +02:00
tests Support 'runnables' options in the vs code extension 2020-10-02 12:35:22 +03:00
.eslintignore Fix eslint errors on .eslintrc.js and rollup.config.js 2020-08-16 23:28:26 +08:00
.eslintrc.js handle promise catches 2021-02-07 21:27:21 +03:30
.gitignore add rollup bundler for vscode extension 2019-09-23 23:25:16 +02:00
.vscodeignore Remove TextMate grammar 2020-12-21 18:58:46 +02:00
icon.png Extension icon 2020-01-15 16:07:39 +01:00
language-configuration.json Support | as a surrounding pairs 2021-04-22 15:57:30 -04:00
package-lock.json ⬆️ package-lock.json 2021-05-08 12:20:06 +03:00
package.json Add new LSP extension for workspace symbol lookup 2021-05-18 00:40:30 +02:00
ra_syntax_tree.tmGrammar.json Fix .rast tmGrammar to account for numbers in identifiers 2020-04-22 02:00:58 +03:00
README.md clean uo rustup link 2021-03-01 15:19:30 -05:00
rollup.config.js Bump @rollup/plugin-commonjs 2020-06-27 22:37:03 +03:00
tsconfig.json Disable ES module interop 2020-07-06 14:29:19 +03:00

rust-analyzer

Provides support for rust-analyzer: novel LSP server for the Rust programming language.

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.

Note the project is in alpha status: it is already useful in practice, but can't be considered stable.

Sponsor

Work on rust-analyzer is sponsored by

Ferrous Systems

If you want to sponsor:

Features

Quick start

  1. Install rustup
  2. Install the rust-analyzer extension

Configuration

This extension provides configurations through VSCode's configuration settings. All the configurations are under rust-analyzer.*.

See https://rust-analyzer.github.io/manual.html#vs-code-2 for more information on VSCode specific configurations.

Communication

For usage and troubleshooting requests, please use "IDEs and Editors" category of the Rust forum:

https://users.rust-lang.org/c/ide/14

Documentation

See https://rust-analyzer.github.io/ for more information.