about summary refs log tree commit diff
path: root/crates/rust-analyzer/src/lsp_ext.rs
AgeCommit message (Collapse)AuthorLines
2022-05-22internal: Allow OnTypeFormatting to send SnippetTextEditFelicián Németh-2/+15
But continue to send TextEdit only.
2022-05-17Allow inlay hint tooltips to trigger hoversLukas Wirth-1/+2
2022-05-17Trigger hover requests on closing brace hintsLukas Wirth-0/+5
2022-04-19Allows triggering commands after an assist editJonas Schievink-3/+2
2022-04-08Switch to LSP inlay hintsLaurențiu Nicola-46/+0
2022-03-31Add "view file text" command to debug sync issuesJonas Schievink-0/+8
2022-03-12minor: add missing definitions of lsp_ext::InlayHintLabelLukas Wirth-1/+19
2022-03-07Update LSP docsLaurențiu Nicola-1/+1
2022-03-04Load hints for part of the file onlyKirill Bulatov-0/+1
2022-03-04FixesLaurențiu Nicola-1/+0
2022-03-04Update inlay hints for upstreamLaurențiu Nicola-11/+15
2022-03-04Add experimental VSCode apiKirill Bulatov-5/+8
2022-02-07add missing snake case attribute, update hashMoritz Vetter-0/+1
2021-12-07internal: add "Shuffle Crate Graph" commandJonas Schievink-0/+8
2021-10-04Make multiple import edits work for completionsLukas Wirth-0/+5
2021-07-30feat: gate custom clint-side commands behind capabilitiesAleksey Kladov-0/+5
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-27refactor: Make handle_hover handle ranges tooAlexander Gonzalez-11/+13
2021-07-27feat: Completed the client side implementation of rust-analyzer/hoverRangeAlexander Gonzalez-2/+10
2021-07-27feat: Extend the server with the hover_range capabilityAlexander Gonzalez-1/+8
2021-07-04internal: better factoring for to_proto::completionAleksey Kladov-0/+7
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-02Add "View Crate Graph (Full)"Jonas Schievink-1/+8
2021-05-21Add a "Debug ItemTree" LSP requestJonas Schievink-0/+14
2021-05-18Add new LSP extension for workspace symbol lookupalcroito-1/+41
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-11Allow viewing the crate graph in a webviewJonas Schievink-0/+8
2021-04-18Prevent being able to rename items that are not part of the workspaceLukas Wirth-0/+6
2021-04-14Move cursor position when using item moversJonas Schievink-1/+1
2021-04-06More robust status notificationsAleksey Kladov-15/+15
2021-03-18Item up and down moversivan770-0/+22
2021-03-11Apply review suggestionsvsrs-8/+1
2021-02-27Add LSP request and VSCode commandvsrs-0/+20
2021-02-16Enable offset-encoding capabilityAleksey Kladov-0/+4
2021-02-13Moved CodeLens to ide crateivan770-0/+8
2021-02-12fix nightly warning `legacy_derive_helpers`Peter Wischer-1/+1
see https://github.com/rust-lang/rust/issues/79202
2021-01-29Async Loading outdir and proc-macroEdwin Cheng-0/+1
2020-12-28Initial implementation of view-hir commandPhil Ellison-0/+8
2020-11-16Latest LSP 3.16 protocolkjeremy-1/+1
Pulls in https://github.com/gluon-lang/lsp-types/pull/186
2020-11-12add open Cargo.toml actionAnatol Liu-0/+14
2020-11-10Switch to upstream protocol for resolving code actionAleksey Kladov-18/+17
Note that we have to maintain custom implementation on the client side: I don't see how to marry bulitin resolve support with groups and snippets.
2020-10-08Changes from reviewZac Pullar-Strecker-25/+5
2020-10-08WIP: Command to open docs under cursorZac Pullar-Strecker-0/+28
2020-10-02Replace 'cargo_prefix' option with 'override_cargo'Igor Aleksanov-2/+2
2020-10-02Add support of runnables arguments in Rust AnalyzerIgor Aleksanov-0/+4
2020-09-29Extend **Status** command to also show dep info for the fileAleksey Kladov-1/+7
This should help with troubleshooting wrong project configuration
2020-08-17Fix StatusNotificationvsrs-1/+6
2020-07-29SSR: Restrict to current selection if anyDavid Lattimore-0/+3
The selection is also used to avoid unnecessary work, but only to the file level. Further restricting unnecessary work is left for later.
2020-07-24SSR: Pass current file position through to SSR code.David Lattimore-0/+5
In a subsequent commit, it will be used for resolving paths.
2020-07-16Mark machine applicable fixes as preferredJeremy Kolb-0/+3
This allows us to run the auto fix command from vscode to automatically fix all diagnostics in the file. They are also distinguished in the UI.
2020-07-11Update lsp-types to account for new CodeActionKind structureJeremy Kolb-2/+4
2020-07-11Make sure there are no commands in code actionsAleksey Kladov-2/+3
2020-07-07Add a command to compute memory usage statisticsJonas Schievink-0/+8