summaryrefslogtreecommitdiffstatshomepage
path: root/runtime/lua/vim/lsp/_completion.lua
AgeCommit message (Collapse)AuthorFiles
2024-05-27feat(lsp): completion side effectsMaria José Solano1
2024-02-27feat(lsp): support completion itemDefaultsMaria José Solano1
2024-02-27refactor(lsp): alias for CompletionResultMaria José Solano1
2024-02-03refactor: create function for deferred loadingdundargoc1
The benefit of this is that users only pay for what they use. If e.g. only `vim.lsp.buf_get_clients()` is called then they don't need to load all modules under `vim.lsp` which could lead to significant startuptime saving. Also `vim.lsp.module` is a bit nicer to user compared to `require("vim.lsp.module")`. This isn't used for some nested modules such as `filetype` as it breaks tests with error messages such as "attempt to index field 'detect'". It's not entirely certain the reason for this, but it is likely it is due to filetype being precompiled which would imply deferred loading isn't needed for performance reasons.
2023-10-26fix(lsp): fix omnicomplete in middle of the line (#25787)Lajos Koszti1
Fixes a regression from 5e5f5174e3faa862a9bc353aa7da41487911140b Until that commit we had a logic like this: `local prefix = startbyte and line:sub(startbyte + 1) or line_to_cursor:sub(word_boundary)` The commit changed the logic and no longer cut off the line at the cursor, resulting in a prefix that included trailing characters
2023-10-23fix(lsp): fix off-by-one error for omnifunc word boundaryMathias Fussenegger1
Fixes https://github.com/neovim/neovim/issues/25177 I initially wanted to split this into a refactor commit to make it more testable, but it appears that already accidentally fixed the issue by normalizing lnum/col to 0-indexing
2023-10-21refactor(lsp): move completion logic into _completion moduleMathias Fussenegger1
To reduce cross-chatter between modules and for https://github.com/neovim/neovim/issues/25272 Also preparing for https://github.com/neovim/neovim/issues/25714