Commit Graph

23 Commits

Author SHA1 Message Date
Michael Bolin
e81a47b8eb Remove executeCommandProvider: apply_code_action.
This appears to have been introduced ages ago in
be742a5877
but has since been removed.

As it stands, it is problematic if multiple instances of the
rust-analyzer LSP are launched during the same VS Code session because
VS Code complains about multiple LSP servers trying to register the
same command.

Most LSP servers workaround this by parameterizing the command by the
process id. For example, this is where `rls` does this:

ff0b9057c8/rls/src/server/mod.rs (L413-L421)

Though `apply_code_action` does not seems to be used, so it seems better
to delete it than to parameterize it.
2019-07-10 22:49:35 -07:00
Aleksey Kladov
1834bae5b8 allow rustfmt to reorder imports
This wasn't a right decision in the first place, the feature flag was
broken in the last rustfmt release, and syntax highlighting of imports
is more important anyway
2019-07-04 23:09:09 +03:00
kjeremy
7125192c1e Basic resolution for ADT 2019-04-23 14:32:47 -04:00
Aleksey Kladov
fa12ed2b8f switch to official extend selection API 2019-04-21 12:13:48 +03:00
Aleksey Kladov
12e3b4c70b reformat the world 2019-02-08 14:49:43 +03:00
Jeremy Kolb
6ac4cca6c1 Implement lens for impls and support resolving lenses. 2019-02-04 08:45:33 -05:00
Jeremy Kolb
3c17643b30 Go to Implementation for structs and enums 2019-01-29 19:13:02 -05:00
Aleksey Kladov
7e5ab9b78c switch to lsp-types 2019-01-14 14:32:03 +03:00
Jeremy A. Kolb
faf0037635 Code lens support for running tests 2019-01-11 15:16:55 -05:00
Simon Vandel Sillesen
b0ffa98a00 add "." as a trigger char on type formatting 2019-01-06 09:56:00 +01:00
DJMcNab
79941a9e70 Implement DocumentHighlight 2018-12-31 11:08:44 +00:00
Aleksander Vognild Burkow
8b24f158f7 Add support for formatting entire document with rustfmt
Attempting to format a document when rustfmt isn't installed will result
in an error being returned to the frontend. An alternative
implementation would be returning zero replacements.
2018-12-29 21:57:46 +01:00
Florian Diebold
e5a8089b08 Add . to trigger characters 2018-12-25 15:27:15 +01:00
Aleksey Kladov
e8c50f0915 Use : as a trigger character for completion
Note that VSCode asks for completion after *first* `:` as well:

    use crate:

we use hacks to protect against that, and to give completions only
after the second `:`.
2018-11-21 19:06:48 +03:00
Jeremy A. Kolb
8ccd26adf3 Show documentation for hover requests 2018-11-07 18:24:55 +03:00
Jeremy A. Kolb
5a9d471f98 Use closing paren as a trigger character
This seems counter-intuitive based on the concept of "trigger character"
but it provides a better function signature experience.
2018-11-05 17:13:56 -05:00
Aleksey Kladov
6be50f7d5d Reformat all 2018-10-31 23:41:43 +03:00
Jeremy A. Kolb
2844c8fdfa Handle renaming of local variables 2018-10-18 17:56:22 -04:00
Jeremy A. Kolb
3746689e9d Implement Find All References for local variables 2018-10-18 13:40:12 -04:00
Jeremy A. Kolb
61f3a438d3 Cargo Format
Run `cargo fmt` and ignore generated files
2018-10-16 09:41:10 -04:00
Jeremy A. Kolb
f8a2b53304 Language Server: textDocument/signatureHelp
Implements a pretty barebones function signature help mechanism in
the language server.

Users can use `Analysis::resolve_callback()` to get basic information
about a call site.

Fixes #102
2018-10-11 16:40:46 -04:00
Jeremy A. Kolb
e293a16d6b Support LSP 3.13 2018-09-23 11:10:57 -04:00
Aleksey Kladov
b5021411a8 rename all things 2018-09-16 13:07:39 +03:00