Commit Graph

91 Commits

Author SHA1 Message Date
Lukas Wirth b9fe5afb30 Add a 'open server logs' button to the error notification 2023-01-23 13:24:42 +01:00
Lukas Wirth f2444b2a40 Remove unnecessary Hint suffix on InlayKind variants 2023-01-14 13:08:45 +01:00
Ian Chamberlain 283dfc45dd Add docs for colorDiagnosticOutput capability 2023-01-09 11:50:37 -05:00
Lukas Wirth cf8d89e46b Add a command to clear flycheck diagnostics 2022-12-17 23:43:26 +01:00
Lukas Wirth a04feb915a Add command for manually running flychecks 2022-12-16 22:47:19 +01:00
Jonas Schievink 32f59cf01d Update hash 2022-11-29 19:33:16 +01:00
Laurențiu Nicola 956b96a19d Switch to upstream positionEncoding 2022-10-25 14:43:26 +03:00
Lukas Wirth 45b7b6a60a Implement lsp extension for cancelling running flychecks 2022-08-19 08:54:53 +02:00
Jonas Schievink 6c6ae965ba Update remaining GitHub URLs 2022-07-08 15:44:49 +02:00
Felicián Németh 636d4880c4 internal: Allow OnTypeFormatting to send SnippetTextEdit
But continue to send TextEdit only.
2022-05-22 10:39:18 +02:00
Lukas Wirth 0c488fa215 Update lsp-extensions hash 2022-05-17 14:48:28 +02:00
Jonas Schievink c6ffffccbd Allows triggering commands after an assist edit 2022-04-19 18:45:48 +02:00
Laurențiu Nicola d3d6267112 Switch to LSP inlay hints 2022-04-08 14:10:24 +03:00
Jonas Schievink ec2d023383 Add "view file text" command to debug sync issues 2022-03-31 14:50:33 +02:00
Lukas Wirth 119ba82e4b minor: add missing definitions of lsp_ext::InlayHintLabel 2022-03-12 01:08:33 +01:00
Laurențiu Nicola b9d74fe2ed Update LSP docs 2022-03-07 15:09:31 +02:00
Felicián Németh 7c7d6991dd fix: documentation of SsrParams
Fix #11429 by extending the documentation of SsrParms with the
mandatory field 'selections'.  Copy its description from lsp_ext.rs.
2022-02-12 15:47:54 +01:00
Moritz Vetter 482533ea9a add missing snake case attribute, update hash 2022-02-07 04:57:20 +01:00
Jonas Schievink 0db5aacfcd Update lsp-extensions.md 2021-12-07 16:41:24 +01:00
Wilfred Hughes 54b636f1e2 Fix type names in typescript sample code 2021-11-12 11:15:08 -08:00
Lukas Wirth ca1fdd75f1 Regen docs 2021-10-04 22:13:12 +02:00
Aleksey Kladov 2229cfcf48 internal: cleanup lsp-extensions docs 2021-07-30 19:50:39 +03:00
Aleksey Kladov be84f85c1d feat: gate custom clint-side commands behind capabilities
Some features of rust-analyzer requires support for custom commands on
the client side. Specifically, hover & code lens need this.

Stock LSP doesn't have a way for the server to know which client-side
commands are available. For that reason, we historically were just
sending the commands, not worrying whether the client supports then or
not.

That's not really great though, so in this PR we add infrastructure for
the client to explicitly opt-into custom commands, via `extensions`
field of the ClientCapabilities.

To preserve backwards compatability, if the client doesn't set the
field, we assume that it does support all custom commands. In the
future, we'll start treating that case as if the client doesn't support
commands.

So, if you maintain a rust-analyzer client and implement
`rust-analyzer/runSingle` and such, please also advertise this via a
capability.
2021-07-30 19:16:33 +03:00
Aleksey Kladov 68836c0dbe minor: drop impl-specific stuff from lsp docs
The lc. prefix is a copy-paste from our typescript code, it doesn't make
sense in the impl-agnostic docs.
2021-07-30 16:37:41 +03:00
Alexander Gonzalez 41943f2328 refactor: Apply PR suggestions 2021-07-27 18:31:21 -04:00
Alexander Gonzalez c6fab1993a test: Update lsp_ext.rs hash 2021-07-27 18:31:21 -04:00
Alexander Gonzalez ca85185bc6 docs: Update the lsp-extensions.md with the Hover Range capability 2021-07-27 18:31:21 -04:00
bors[bot] 2c638a467e Merge #9709
9709: fix: add capability for "open cargo.toml" lsp extension r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
2021-07-27 16:41:02 +00:00
Aleksey Kladov 7d6c4142b2 fix: add capability for "open cargo.toml" lsp extension 2021-07-27 19:40:19 +03:00
Alexander Gonzalez c865b56744 docs: Fix several typos and grammar mistakes 2021-07-26 18:15:40 -04:00
Aleksey Kladov f34762abb7 internal: better factoring for to_proto::completion
One source completion can produce up to two lsp completions.
Additionally, `preselct` and `sort_text` are global properties of the
whole set of completions, so the right granularity here is to convert
many completions.

As a side-benefit, we no loger allocate intermediate vec.
2021-07-04 14:08:33 +03:00
Jonas Schievink 5f13fb9db9 Add "View Crate Graph (Full)" 2021-07-02 00:10:33 +02:00
Aleksey Kladov cabb679cbb internal: explain the motivation behind early configuration 2021-05-27 11:16:14 +03:00
Jonas Schievink 3360053312 Update lsp-extensions.md 2021-05-22 00:03:36 +02:00
Aleksey Kladov 1fd31f7f4c feat: allow clients to feature detect symbol filtering 2021-05-19 13:28:58 +03:00
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
Jonas Schievink b8d40a02a9 Document viewCrateGraph request 2021-05-11 16:45:51 +02:00
Aleksey Kladov dcb759b727 Remove confusion around serverStatusNotification 2021-04-19 18:12:25 +03:00
Aleksey Kladov e5d91e8992 Fix spec bug 2021-04-19 17:55:51 +03:00
Lukas Wirth b501b59eda Update lsp-extensions docs 2021-04-18 12:50:44 +02:00
Jonas Schievink 30aae2cefb Move cursor position when using item movers 2021-04-14 00:03:04 +02:00
Kirill Bulatov b5f3815aee Small grammar fixes 2021-04-06 21:42:27 +03:00
Aleksey Kladov 8fe20b19d4 More robust status notifications 2021-04-06 15:45:31 +03:00
sim d542a2b463 docs: Fix moveItem method name 2021-04-04 11:49:32 -07:00
ivan770 7d60458495 Item up and down movers 2021-03-18 11:22:27 +02:00
bors[bot] 7accf6bc37 Merge #7799
7799: Related tests r=matklad a=vsrs

![tests](https://user-images.githubusercontent.com/62505555/109397453-a9013680-7947-11eb-8b11-ac03079f7645.gif)
This adds an ability to look for tests for the item under the cursor: function, constant, data type, etc

The LSP part is bound to change. But the feature itself already works and I'm looking for a feedback :)



Co-authored-by: vsrs <vit@conrlab.com>
2021-03-13 13:50:35 +00:00
vsrs 49cdb2452a Fix LSP extensions documentation 2021-03-11 17:59:27 +03:00
Aleksey Kladov 5b2b310827 Clarify that all caps are experimental 2021-03-09 12:02:20 +03:00
vsrs 5e88436517 Update lsp-extensions.md 2021-02-27 21:07:58 +03:00
Aleksey Kladov 3f09e3fba6 document offsets 2021-02-16 19:22:09 +03:00