aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/lsp
Commit message (Collapse)AuthorAge
...
* feat(lsp): jump to diagnostics by position (#14795)Zi How Poh2021-08-19
|
* fix(lsp): properly handle `nil` lines when trimming empty lines (#15325)Andrea Cappuccio2021-08-10
|
* fix(lsp): floating popup should take offset_x into account when positioning ↵Hans Pinckaers2021-08-09
| | | | (#15297)
* docs: Add some references to LSP specification (#15321)max3975742021-08-09
|
* fix(lsp): prevent duplicate lines seperated by newlines (#15284)Folke Lemaitre2021-08-06
|
* refactor: remove remaining references to nvim_buf_set_virtual_textGregory Anders2021-08-03
|
* fix(lsp): Include client name in handler error messages (#15227)Mathias Fußenegger2021-07-31
| | | Makes it easier to tell with language server caused an error.
* feat(lsp): implement vim.lsp.diagnostic.redraw() (#15203)Gregory Anders2021-07-29
| | | | | | | | | | | | | Add a new function to redraw diagnostics from the current diagnostic cache, without receiving a "publishDiagnostics" message from the server. This is already being done in two places in the Lua stdlib, so this function unifies that functionality in addition to providing it to third party plugins. An example use case for this could be a command or key-binding for toggling diagnostics virtual text. The virtual text configuration option can be toggled using `vim.lsp.with` followed by `vim.lsp.diagnostic.redraw()` to immediately redraw the diagnostics with the updated setting.
* feat(lsp): make list handlers configurable (#15199)Gregory Anders2021-07-26
| | | | | | | | | | | | The handlers for textDocument/references, textDocument/documentSymbol, and workspace/symbol open their results in the quickfix list by default and are not configurable. They are also incompatible with `vim.lsp.with` as they do not accept a configuration parameter. Add a `config` parameter to the handler for these three messages which allows them to be configured with `vim.lsp.with`. Additionally, add a new configuration option 'loclist' that, when true, causes these handlers to open their results in the location list rather than the quickfix list.
* lsp: add vim.lsp.diagnostic.set_qflist() function (#14831)Marc Jakobi2021-07-22
| | | | * Add vim.lsp.diagnostic.set_qflist() function * replaces opts.open_loclist with unified opts.open
* fix(lsp): allow diagnostic.clear to accept nil bufnr (#15137)Gregory Anders2021-07-19
| | | | | | | Passing `nil` is equivalent to passing 0, i.e. it simply uses the current buffer number. This fixes a bug when vim.lsp.diagnostic.disable() is called without arguments.
* feat(lsp): allow diagnostics to be disabled for a buffer (#15134)Gregory Anders2021-07-19
| | | | | | | | | | | | | | | Add two new methods to allow diagnostics to be disabled (and re-enabled) in the current buffer. When diagnostics are disabled they are simply not displayed to the user, but they are still sent by the server and processed by the client. Disabling diagnostics can be helpful in a number of scenarios. For example, if one is working on a buffer with an overwhelming amount of diagnostic warnings it can be helpful to simply disable diagnostics without disabling the LSP client entirely. This also allows users more flexibility on when and how they may want diagnostic information to be displayed. For example, some users may not want to display diagnostic information until after the buffer is first written.
* feat(lsp): allow configuring zindex for floating windows (#15086)rayx2021-07-19
|
* feat: aggregate code actions from all clients (#15121)Folke Lemaitre2021-07-18
|
* doc(lsp): various small fixes (#15113)Ido Ariel2021-07-17
| | | | | | - remove incorrect usage of docstrings - fix make_formatting_params return type documentation to 'DocumentFormattingParams' - make progress_handler private - fix links
* fix(lsp): pass bufnr for async formatting (#15084)Michael Lingelbach2021-07-14
| | | | | | the `textDocument/rangeFormatting` nad `textDocument/formatting` did not pass bufnr to apply_text_edits, meaning edits were applied to the user's currently active buffer. This could result in text being applied to the wrong buffer.
* fix(lsp): avoid ipairs on non-sequential tables (#15059)Michael Lingelbach2021-07-11
| | | | | | | | | | | | | | | | | | | | ipairs terminates on the first nil index when iterating over table keys: for i,k in ipairs( {[1] = 'test', [3] = 'test'} ) do print(i, k) end prints: 1 test Instead, use pairs which continues iterating over the entire table: for i,k in pairs( {[1] = 'test', [3] = 'test'} ) do print(i, k) end prints: 1 test 3 test
* fix(lsp): Ensure human readable errors are printedMathias Fussenegger2021-07-11
| | | | | | | | | | `return err_message(tostring(err))` caused errors to be printed as `table: 0x123456789` instead of showing the error code and error message. This also removes some `if err` blocks that never got called because at the end of `handlers.lua` all the handlers are wrapped with logic that adds generic error handling.
* fix(lsp): Ensure users get feedback on references/symbols errors or empty ↵Mathias Fussenegger2021-07-11
| | | | | | | | | results Relates to https://github.com/neovim/neovim/issues/15050 Users should get some indication if there was an error or an empty result.
* fix(lsp): Add separator between codelens in virttext (#15049)Mathias Fußenegger2021-07-10
| | | | | | | | | | | | Before: Lens1Lens2 After: Lens1 | Lens2 Fixes https://github.com/neovim/neovim/issues/15048
* fix(lsp): correctly check for windows in lsp logger (#14954)Oliver Marriott2021-07-10
|
* feat(lsp): Make line diagnostics display prettierMathias Fussenegger2021-07-09
| | | | | | | | | | | | | | | | | | | | | | | | | Adds indentation that matches the number prefix to ensure diagnostic messages spawning multiple lines align. Before: Diagnostics: 1. • Variable not in scope: red :: t0 -> t • Perhaps you meant one of these: ‘rem’ (imported from Prelude), ‘read’ (imported from Prelude), ‘pred’ (imported from Prelude) 2. • Variable not in scope: repeDoubleColon :: [Char] -> t0 • Perhaps you meant ‘replaceDoubleColon’ (line 32) After: Diagnostics: 1. • Variable not in scope: red :: t0 -> t • Perhaps you meant one of these: ‘rem’ (imported from Prelude), ‘read’ (imported from Prelude), ‘pred’ (imported from Prelude) 2. • Variable not in scope: repeDoubleColon :: [Char] -> t0 • Perhaps you meant ‘replaceDoubleColon’ (line 32)
* fix(lsp): support duplicate params in signature help (#15032)Folke Lemaitre2021-07-09
|
* fix(lsp): restore diagnostics extmarks that were moved to the last edit line ↵Folke Lemaitre2021-07-08
| | | | (#15023)
* feat(lsp): highlight active parameter in signature help (#15018)Folke Lemaitre2021-07-07
|
* fix(lsp): restore diagnostics extmarks on buffer changes (#15011)Folke Lemaitre2021-07-07
|
* fix(lsp): prevent double <text> for cached plaintext markupFolke Lemaitre2021-07-05
|
* Fixed +1 -1 in util.lua (#14913)jimman20032021-06-26
| | | No point in adding and then subtracting I believe ;)
* fix(lsp): render the last line in stylize_markdownFolke Lemaitre2021-06-25
|
* style(lsp): make get_markdown_fences privateFolke Lemaitre2021-06-25
|
* Merge pull request #14904 from mfussenegger/nil-message-callbacksMichael Lingelbach2021-06-25
|\ | | | | fix(lsp): Handle nil message_callbacks
| * fix(lsp): Handle nil message_callbacksMathias Fussenegger2021-06-25
| | | | | | | | | | | | | | | | | | | | The `onexit` handler could set `message_callbacks` to `nil` within the luv event loop while the mainloop runs a function that tries to access `message_callbacks`. This adds some checks to prevent errors in that case. Fixes https://github.com/neovim/neovim/issues/14863
* | Merge pull request #14617 from folke/fancy_markdown_fences_supportMichael Lingelbach2021-06-25
|\ \ | | | | | | feat(lsp): use `g:markdown_fenced_languages` in `vim.lsp.util.stylized_markdown`
| * | feat(lsp): use markdown_fenced_languages in stylized_markdownFolke Lemaitre2021-06-25
| |/
* / fix(lsp): Set `dir` completion option for add_workspace_folderMathias Fussenegger2021-06-25
|/ | | | | Given that the input is pre-filled with a path, it should be possible to use dir completion.
* fix(lsp): do not convert vim.NIL to nil in listsAkin Sowemimo2021-06-24
|
* fix(lsp): handlers should focus quickfix listMichael Lingelbach2021-06-21
|
* fix(lsp): fix severity_limit logic in set_loclistSteven Arcangeli2021-06-19
|
* chore(lsp): removed deprecated floating preview methodsFolke Lemaitre2021-06-17
|
* fix(lsp): add bufnr to formatting requestsLukas Reineke2021-06-15
| | | | | | Add the buffer number to the `textDocument/formatting` request, so that it is passed to the handler. The built-in formatting handlers do not use the buffer number, but user overrides should have access to it.
* docs(lsp): Clarify opts for show_line_diagnostics()Shadman2021-06-15
|
* docs(lsp): annotate call_hierarchy function as privatecbarrete2021-06-14
|
* fix(lsp): fix on_detach in lsp.diagnostic Jaehwang Jerry Jung2021-06-14
| | | | | `lsp.diagnostic.get_all()` was returning diagnotics for `:bwipeout`-ed buffers because the diagnostic cache is not cleared. The first argument of on_detach callback is the string "detach", not the bufnr.
* fix(lsp): replace --- by a line in stylize_markdownFolke Lemaitre2021-06-15
|
* Merge pull request #14737 from rktjmp/lsp-guard-against-negative-linesMichael Lingelbach2021-06-14
|\ | | | | [RDY] fix(lsp): guard against negative diagnostic line numbers
| * fix(lsp): guard against negative diagnostic line numbersOliver Marriott2021-06-13
| |
* | fix(lsp): allow 'rounded' and 'solid' in floatsTimothée Sterle2021-06-14
| |
* | feat(lsp): Add codelens supportMathias Fussenegger2021-06-14
| |
* | Merge pull request #14765 from folke/lsp_plaintextMichael Lingelbach2021-06-12
|\ \ | |/ |/| fix(lsp): convert_input_to_markdown_lines: preserve plaintext
| * fix(lsp): convert_input_to_markdown_lines: preserve plaintextFolke Lemaitre2021-06-12
| |