aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim
Commit message (Collapse)AuthorAge
...
* | | feat(lsp): use fancy_floating_markdown for signature_helpFolke Lemaitre2021-05-21
| | |
* | | fix(lsp): clear current_syntax before formatting fancy markdown regionFolke Lemaitre2021-05-21
| | |
* | | fix(lsp): preview_location options and syntax fallbackFolke Lemaitre2021-05-21
| | |
* | | feat(lsp): lsp.util.fancy_floating_markdown improvementsFolke Lemaitre2021-05-21
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fix: fancy_floating_markdown: syn region must include keepend to make sure syntax regions are applied correctly. Fixes #14594 feat: fancy_floating_markdown: handle <pre></pre> code blocks as a markdown code block with plaintext fix: possible nil check for markdown code blocks till end of buffer refactor: only one check is needed to see if stripped[h.finish +1] is valid fix(lsp): dont't set doc ownsyntax, since it breaks contained syntaxes. Set regions for the markdown blocks intsead fix: apply markdown formatting for code blocks without a language fix: use markdownCodeBlock when no language was set in a code block
* | Merge pull request #14563 from mjlbach/fix_intelephense_langserverMichael Lingelbach2021-05-19
|\ \ | | | | | | lsp: handle case where CompletionItem.insertTextFormat is nil
| * | lsp: handle case where CompletionItem.insertTextFormat is nilMichael Lingelbach2021-05-16
| | | | | | | | | | | | * Update tests to use explicit insertTextFormat for snippets
* | | Merge pull request #14589 from mhinz/revert-smarter-tagstackMarco Hinz2021-05-19
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unfortunately, there are some subtle bugs in the smarter tagstack changes, so we'll revert them for now and try to come up with a better approach. One of the added tests, adds current position to jumplist before jumping, is valuable though and changed to still work after reverting the other two commits. Closes #14571
| * | | Revert "lsp: make tagstack smarter motion-wise (#12262)"Marco Hinz2021-05-19
| | | | | | | | | | | | | | | | This reverts commit 8885ea7f244ee49b0018dc57be84917ea7886c2d.
| * | | Revert "lsp: fix regression in jump_to_location() (#14446)"Marco Hinz2021-05-19
| | | | | | | | | | | | | | | | This reverts commit 993ca90c9b53033216d4973e2f995b995ed5740e.
* | | | lsp: handle unsupported call hierarchy callCédric Barreteau2021-05-19
|/ / /
* | | Merge pull request #14555 from mickael-menu/fix/range-code-actionMichael Lingelbach2021-05-14
|\ \ \ | | | | | | | | lsp: Fix range end offset off by one character
| * | | lsp: Fix range end offset off by one characterMickaël Menu2021-05-14
| | | |
* | | | treesitter: add predicate "any-of?" (#14344)Raymond W. Ko2021-05-14
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For the case of Clojure and other Lisp syntax highlighting, it is necessary to create huge regexps consisting of hundreds of symbols with the pipe (|) character. To make things more difficult, these Lisp symbols sometimes consists of special characters that are themselves part of special regexp characters like '*'. In addition to being difficult to maintain, it's performance is suboptimal. This patch introduces a new predicate to perform 'source' matching in amortized constant time. This is accomplished by compiling a hash table on the first use.
* / / treesitter: do not escape in match? (#14382)Stephan Seitz2021-05-11
|/ /
* | Merge pull request #14418 from DerekStride/treesitter-set-directiveThomas Vigouroux2021-05-03
|\ \ | | | | | | [RDY] tree-sitter ensure there is a nested table allocated for `#set!`
| * | Ensure there is a nested table allocated for #set!derekstride2021-04-27
| | | | | | | | | | | | | | | | | | | | | | | | Fixes the following bug: ``` test/functional/helpers.lua:107: Error executing lua: vim/treesitter/query.lua:256: attempt to index a nil value ```
* | | Merge pull request #14334 from DarwinSenior/vim.logMichael Lingelbach2021-05-02
|\ \ \ | | | | | | | | lsp: deep copy vim.lsp.log when reloading
| * | | lsp: deep copy vim.lsp.log when reloadingDingcheng Yue2021-04-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If vim.lsp.log is loaded the second time, the vim.log.levels will be modified with additional entries from 0-5. This will cause the require to fail as level:lower does not exists on numbered value.
* | | | Merge pull request #14462 from kabouzeid/feature/formatting_seq_syncMichael Lingelbach2021-05-02
|\ \ \ \ | | | | | | | | | | [LSP] Support for sequential formatting with multiple clients
| * | | | Increase default LSP sync timeout to 1000msKarim Abou Zeid2021-05-02
| | | | |
| * | | | Add client.request_sync docKarim Abou Zeid2021-05-02
| | | | |
| * | | | Synchronous formatting methods notify the user on timeout and interruptedKarim Abou Zeid2021-05-02
| | | | |
| * | | | Support multiple range formatting clientsKarim Abou Zeid2021-05-02
| | | | |
| * | | | doc clarificationKarim Abou Zeid2021-05-02
| | | | |
| * | | | Add formatting_seq_sync, change formatting and formatting_syncKarim Abou Zeid2021-05-01
| | |/ / | |/| |
* | | | lsp: fix regression in jump_to_location() (#14446)francisco souza2021-05-01
| | | | | | | | | | | | | | | | | | | | This fixes a regression that was introduced in [1] by accidentally leaving out a line. 1: https://github.com/neovim/neovim/pull/12262
* | | | docs: Treesitter (#13260)TJ DeVries2021-05-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc & fixes: Generate treesitter docs * fixup to treesitter-core * docs(treesitter): fix docs for most functions Co-authored-by: Thomas Vigouroux <tomvig38@gmail.com>
* | | | lsp: Allow decoded.result to be `false`Mathias Fussenegger2021-04-30
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some servers might respond to `workspace/executeCommand` requests with a boolean result and that could be `false`. A `false` result should be allowed and not trigger the `on_error` handler: -- Invalid server message on_error(client_errors.INVALID_SERVER_MESSAGE, decoded) Concrete example where this occurred is with eclipse.jdt.ls: vim.lsp.buf_request( 0, 'workspace/executeCommand', { command = 'java.project.isTestFile', arguments = { vim.uri_from_bufnr(0), }, }, function(err, _, resp) print(vim.inspect(err), vim.inspect(resp)) end )
* | | Merge pull request #14429 from ckipp01/forceMichael Lingelbach2021-04-23
|\ \ \ | | | | | | | | [LSP] - Don't automatically force shutdown on second restart.
| * | | Don't automatically force shutdown on second restart.ckipp012021-04-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is maybe a bit of a niche case, but I hit on this often as I'm developing a server, and therefore continually restarting it to get the latest changes of the server. Previously, I could only do this once since if you send in a request to restart/shut down the server, it will register it as a `tried_graceful_shutdown = true` meaning that the next restart would force it to be killed instead of another graceful exit. Instead, this changes the name a bit and now it will only mark `graceful_shutdown_failed = true` _if_ it actually fails to gracefully shutdown. This change allows for a user to restart multiple times in a situation like mine where nothing is going wrong, but I just want to restart continually as I'm developing without having to close and reopen.
* | | | lsp: make tagstack smarter motion-wise (#12262)Gabriel Sanches2021-04-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit prevents two things regarding the tagstack and jumping to locations: - Pushing the same item twice in a row - Pushing an item where the destination is the same as the source Both prevent having to press CTRL-T additional times just to pop items that don't make the cursor move.
* | | | Revert "lsp: fix blocking in closing of clients"Michael Lingelbach2021-04-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 2e6c09838f88803f31d229002715628639631897. * Fixes #14428 * This commit caused neovim to close while open handles to the uv timer to kill active language servers were still open
* | | | lsp: check if config is nilMarco Hinz2021-04-23
| | | |
* | | | lsp: sort diagnostics by severity (#14372)Marco Hinz2021-04-23
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow to sort diagnostics (and thus signs and virtual text) by severity, so that the most important message is shown first. vim.lsp.handlers['textDocument/publishDiagnostics'] = vim.lsp.with( vim.lsp.diagnostic.on_publish_diagnostics, { severity_sort = true, } ) Fixes https://github.com/neovim/neovim/issues/13929
* | | Merge pull request #14180 from oberblastmeister/lsp_exit_perfMichael Lingelbach2021-04-19
|\ \ \ | | | | | | | | fix slow closing of lsp clients when exiting vim
| * | | lsp: fix blocking in closing of clientsBrian Shu2021-04-19
| | | |
* | | | lsp: add lsp.buf_request_all for invoking asynchronous callbacksBrian Shu2021-04-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixed nil issue changed poll to 10 changed wording added docs to once comma english
* | | | lsp: Remove vim.NIL handling from apply_text_document_editMathias Fussenegger2021-04-14
| | | | | | | | | | | | | | | | | | | | The rpc layer normalizes `vim.NIL` to `nil`, so the scenario tested should never happen.
* | | | lsp: Accept text document edits with version zeroMathias Fussenegger2021-04-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There were a couple of reports of "Buffer X newer than edits" problems. We first assumed that it is incorrect for a server to send 0 as a version - and stated that they should send a `null` instead, given that in the specification the `textDocument` of a `TextDocumentEdit` is a `OptionalVersionedTextDocumentIdentifier`. But it turns out that this was a change in 3.16, and in 3.15 and earlier versions of the specification it was a `VersionedTextDocumentIdentifier` and language servers didn't have a better option than sending `0` if they don't keep track of the version numbers. So this changes the version check to always accept `0` values. See - https://github.com/neovim/neovim/issues/12970 - https://github.com/neovim/neovim/issues/14256 - https://github.com/haskell/haskell-language-server/pull/1727
* | | | lsp: fix _make_floating_popup_size when wrap_at is nil (#14359)Michael Lingelbach2021-04-14
| | | |
* | | | Merge pull request #14046 from ↵Thomas Vigouroux2021-04-14
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | nvim-treesitter/feature/language-tree-directive-config feat(treesitter): allow injections to be configured through directives
| * | | | feat(treesitter): allow injections to be configured through directivesSteven Sojka2021-04-02
| | | | |
* | | | | lsp: fix off-by-one in line diagnostic highlightingMarco Hinz2021-04-14
| | | | |
* | | | | Merge pull request #14119 from mfussenegger/lsp-debounceMichael Lingelbach2021-04-13
|\ \ \ \ \ | | | | | | | | | | | | lsp: Add a flag to debounce didChange notifications
| * | | | | lsp: Add a flag to debounce didChange notificationsMathias Fussenegger2021-04-13
| | |_|/ / | |/| | | | | | | | | | | | | Would help with cases as reported in https://github.com/neovim/neovim/issues/14087
* | | | | lsp: correct float placement when using bordersMarco Hinz2021-04-12
| | | | | | | | | | | | | | | | | | | | | | | | | Because borders add up to 2 to the height of a float, we need to subtract that from the anchor position, when opening a float in the lower half of the window.
* | | | | lsp: make sure borders are always inside of the screenMarco Hinz2021-04-12
|/ / / / | | | | | | | | | | | | | | | | Add a helper function to get the additional width a border adds to a float to make sure that the border is always inside the visible screen.
* | | | Merge pull request #14200 from teto/treesitter-checkhealthMarco Hinz2021-04-07
|\ \ \ \ | | | | | | | | | | feat: treesitter checkhealth
| * | | | fix(ts): move checkhealth in runtime/vimThomas Vigouroux2021-04-06
| | | | |
| * | | | fix: allow accessing vim.treesitter.language without requireThomas Vigouroux2021-04-01
| | |_|/ | |/| |