Commit Graph

204 Commits

Author SHA1 Message Date
Prabir Shrestha
10bbcb1142 use new floating window api for hover (#1078)
* use new floating window api for hover

* rename type to ui

* fix lint issues

* add support for --ui=float|preview for LspHover

* add g:lsp_hover_ui

* always show below the cursor

* close on move

* fix when using empty g:lsp_hover_ui

* add hover preview support

* apply markdown for preview

* show top if available

* fix col position when far right

* silent deletebufline

* fix indent

* remove language

* set language

* fix normalize

* don't close if curpos hasn't changed

* if hover window is foused close

* add border

* add double tap support for floating LspHover window and lsp-hover-close plug

* fix indent

* fix lint issue

* fix grammar

* *ed

* remove echom register

* fix indent

* add lsp-hover-float and lsp-hover-preview plug
2021-12-17 15:04:04 -08:00
hrsh7th
a91419ea0a Use textEdit.range.start.character as a complete col (#1236) 2021-11-30 14:47:12 +09:00
mattn
ee38eb1bc6 Support untitled buffer (#1152)
* Support untitled buffer

* Enable opt out

* Add documentation

* Add documentation

* Use correct buffer names

* Wipeout file contents
2021-09-27 18:22:58 +09:00
hrsh7th
4f2d66d061 Add publishDiagnostics capabilities (#1212) 2021-08-27 14:12:35 +09:00
Prabir Shrestha
fb0a72306e Revert "perf: parse array instead of combining it to string (#1175)" (#1199)
This reverts commit f53a98754e.
2021-06-16 00:14:44 -07:00
hrsh7th
ddd5abb5b6 Fix borderchars and debug=throw (#1178) 2021-06-02 12:56:57 +09:00
Prabir Shrestha
f53a98754e perf: parse array instead of combining it to string (#1175) 2021-05-30 13:17:54 -07:00
hrsh7th
9dc382c04a Send workspace_config only if changed (#1137) 2021-04-12 20:16:39 +09:00
Linda_pp
ce3add957a Fix document layout and misspellings (#1127)
* fix document layout

* fix misspellings
2021-03-31 23:09:06 +09:00
Linda_pp
4d4a908224 select preferred action by default in quickpick (#1126)
spec: https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_codeAction
2021-03-30 02:30:38 +09:00
Linda_pp
800c878209 Support show message notification by handling window/showMessage response (#1120)
* support window/showMessage

* describe g:lsp_show_message_log_level in documentation

* add tests for window/showMessage support

Co-authored-by: mattn <mattn.jp@gmail.com>
2021-03-28 21:58:20 +09:00
Linda_pp
a3b58eb7c4 Handle disabled code action (#1115)
* handle disabled code action

* enable disabledSupport capability

Co-authored-by: hrsh7th <hrsh7th@gmail.com>
2021-03-21 22:17:51 +09:00
Prabir Shrestha
eb237a2ced [WIP] add codeaction sign support (#1085)
* add codeaction sign support

* add hl LspCodeActionText

* add docs

* add support for multiple servers

* only set signs if buffer exists
2021-03-06 10:56:44 -08:00
Prabir Shrestha
ca2b527dc5 add lsp#notification() for proper $/cancel support (#1079) 2021-02-28 13:47:45 -08:00
hrsh7th
6a2b97cd59 Add scroll keymapping (#1058)
* Add lsp#scroll function

* Update README.md

* Add example setting to docs
2021-02-22 20:51:48 +09:00
Prabir Shrestha
21a29936ed pass server_name as part of next notification in lsp#request (#1064) 2021-02-02 04:10:04 +00:00
Prabir Shrestha
cacfc79eb4 completion/resolve support for documentation and use the new floating window (#1052)
* doc

* floating window with completion/resolve

* add comments

* use _split_by_eol

* copy event

* fix dupe

* Fix size/markdown/detail

* - Improve for exceptional case
- Fix code style
- Support detail only case

* Add lsp_float_opened/lsp_float_closed

* remove old documentation code

* update documenation and change flags to use g:lsp_completion_documentation

Co-authored-by: hrsh7th <hrsh7th@gmail.com>
2021-01-23 09:11:27 -08:00
Prabir Shrestha
1a7a6e08de add support for codeLens/resolve (#1007) 2021-01-02 19:25:19 -08:00
Prabir Shrestha
d78d219abd allow to enable or disable diagnostics per buffer (#1005) 2021-01-02 14:20:05 -08:00
Prabir Shrestha
268341fe60 Diagnostics refactor movements (#1004) 2021-01-02 13:59:31 -08:00
Prabir Shrestha
7c43b01635 refactor diagnostics get buffer first error line to use the new internal state (#1003) 2021-01-02 13:06:07 -08:00
Prabir Shrestha
098509278d refactor diagnostics count to using diagnostics state (#999) 2021-01-02 00:14:05 -08:00
Prabir Shrestha
efd07d859e Revamp diagnostics highlights (#995) 2020-12-31 23:13:19 -08:00
Prabir Shrestha
b4f710f143 use callbag share for stream and avoid directly using s:Stream (#996)
Returns a shared version of callbag when calling lsp#stream so that there is a refcount to avoid accidental unsubscriptions and new subscribers will auto subscribe.
2020-12-31 22:14:27 -08:00
micchy326
7770b7d5a3 Add public api get window/workDoneProgress (#979)
* impl lsp#get_progress() for statusline plugin.

* add workDoneProgress spec link

* refactor s:handle_work_done_progress()

* [workDoneProgress] prevent to subscribe multiple times

* [workDoneProgress] Fixed s:lsp_progress['percentage'] to always be float

* [workDoneProgress] support multiple progress registration.

* [workDoneProgress] Fixed s:lsp_progress['percentage'] to uinteger

* [workDoneProgress] fix for vint

* [workDoneProgress] rename variable

* [workDoneProgress] add test

* [workDoneProgress] write document

* [workDoneProgress] initialize s:progress_ui when enable/disable

* [workDoneProgress] refactor test code

* [workDoneProgress] add lsp_progress_updated

* [workDoneProgress] fix typo

* [workDoneProgress] refactor token handling

* [workDoneProgress] Fixed differences from
specifications(messages->message)

* [workDoneProgress] fix test
2020-12-31 10:51:20 -08:00
mattn
ee854b4c55 Add tcp feature (#985)
* Add tcp feature

* Update doc

* Update async.vim embed

* Update doc
2021-01-01 01:28:06 +09:00
Prabir Shrestha
5743ae2110 Diagnostics signs revamp (#994) 2020-12-31 01:23:26 -08:00
Prabir Shrestha
1489cf8295 Revamp diagnostics virtual text (#990) 2020-12-30 14:49:44 -08:00
Prabir Shrestha
c4a867b51c add lsp_server_exit notification (#980) 2020-12-27 10:59:27 -08:00
micchy326
19c63348c7 Add window/workDoneProgress/create response (#973) 2020-12-25 17:55:13 +00:00
Prabir Shrestha
5d0648cbe4 send clientInfo as part of InitializeParams (#971) 2020-12-24 12:40:51 -08:00
Prabir Shrestha
0c4e149ac5 add window.workDoneProgress client capability (#970) 2020-12-24 01:32:55 -08:00
Prabir Shrestha
3cdca33b2e added more dynamicRegistration set to false (#969) 2020-12-24 00:35:55 -08:00
Prabir Shrestha
f9c8184c74 Rename to highlight_references to document_highlight to match lsp (#968)
* rename highlight_references to document_highlight
* add dynamicRegistration to false for documentHighlight client capabilities
2020-12-24 00:12:45 -08:00
Prabir Shrestha
42c9618928 add references capabilities (#967) 2020-12-23 23:57:44 -08:00
Prabir Shrestha
d64a5156ea explicitly set dynamic registration to false and sort (#966) 2020-12-23 23:34:01 -08:00
Prabir Shrestha
f763ff829e add hover client capabilities (#965) 2020-12-23 23:23:22 -08:00
Prabir Shrestha
af55fd3a2c set synchornization client capabilities (#964) 2020-12-23 23:16:16 -08:00
Prabir Shrestha
632ae96876 add addtionalTextEdits for resolve support capability (#963) 2020-12-23 22:32:05 -08:00
Prabir Shrestha
b316729ef5 use callbag to implement document format with timeout (#956)
* use callbag to implement document format with timeout

* document lsp#stream() with example

* send message to stream when using lsp#_new_command

* use -- for args parsing and add g:lsp_document_format_sync_timeout

* throw string exception

* use new func for <plug>(lsp-document-format)

* document g:lsp_format_sync_timeout

* rename to document_formatting

* add document_range_formatting.vim

* remove formatting from ui/vim.vim

* document :LspDocumentRangeFormatSync

* add LspDocumentFormatSync example in README.md
2020-12-22 22:08:32 -08:00
Prabir Shrestha
51eb1f6676 add support for window/showMessageRequest (#919)
* show message request
* materialize so doesn't throw error and add message to input list
* fix lint issues and rename flag to lsp_show_message_request_enabled
* use action and fix filter
* document g:lsp_show_message_request_enabled
2020-10-18 08:46:03 -07:00
Prabir Shrestha
860dcabb6b send server requests to stream (#918)
* send server requests to stream
* comment out method not found
2020-10-17 14:34:58 -07:00
mattn
46330cd0cb Set <nomodeline> to all of doautocmd (#904) 2020-09-17 22:36:19 +09:00
Prabir Shrestha
a8dd16f59a fix comment 2020-09-01 04:04:23 +00:00
Prabir Shrestha
a9ac38e0f4 update callbag.vim to v0.3.0 and better handling of errors using materalize (#899)
* use materialize() for highlight references
* re-enable highlight references by default
* unlet s:Dispose()
* fix checking for isUndefined()
* update callbag to v0.3.0
* dispose if exists
2020-08-31 21:02:34 -07:00
Prabir Shrestha
eb0e5fb885 use callbag for Highlight references (#891) 2020-08-30 11:11:51 -07:00
Martin Kourim
1a01ffddbe Make sure signature_help and completion get properly disabled (#875)
* Make sure signature_help and completion get properly disabled

* Rename teardown -> _disable

Co-authored-by: Prabir Shrestha <mail@prabir.me>
2020-08-26 12:45:10 -07:00
Jan Damm
e6912a01cd Make languageId configurable per lsp (#880)
* Make languageId configurable per lsp

* Fix linter warnings

* Use function to define languageId
2020-08-23 10:25:53 -07:00
Prabir Shrestha
a18783de25 add lsp#stream() (#884) 2020-08-22 22:39:52 -07:00
mattn
04cef02eed Trigger didOpen for buffers already loaded (#873) 2020-07-29 20:32:31 +09:00