neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit de96063bda43273f94478af2b02b5f5487b4f3f2
parent 49756ebc70dcd37eb7465f9cacd5e78803619daa
Author: Tighearnán Carroll <tighearnan@cgxapp.com>
Date:   Sun, 30 Mar 2025 16:51:49 +0100

docs(lsp): `vim.api.buf_request_sync` can also take function as `params` #33170


Diffstat:
Mruntime/doc/lsp.txt | 5++++-
Mruntime/lua/vim/lsp.lua | 4+++-
2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/runtime/doc/lsp.txt b/runtime/doc/lsp.txt @@ -789,7 +789,10 @@ buf_request_sync({bufnr}, {method}, {params}, {timeout_ms}) Parameters: ~ • {bufnr} (`integer`) Buffer handle, or 0 for current. • {method} (`string`) LSP method name - • {params} (`table?`) Parameters to send to the server + • {params} (`table|(fun(client: vim.lsp.Client, bufnr: integer): table?)?`) + Parameters to send to the server. Can also be passed as + a function that returns the params table for cases where + parameters are specific to the client. • {timeout_ms} (`integer?`, default: `1000`) Maximum time in milliseconds to wait for a result. diff --git a/runtime/lua/vim/lsp.lua b/runtime/lua/vim/lsp.lua @@ -1230,7 +1230,9 @@ end --- ---@param bufnr integer Buffer handle, or 0 for current. ---@param method string LSP method name ----@param params table? Parameters to send to the server +---@param params? table|(fun(client: vim.lsp.Client, bufnr: integer): table?) Parameters to send to the server. +--- Can also be passed as a function that returns the params table for cases where +--- parameters are specific to the client. ---@param timeout_ms integer? Maximum time in milliseconds to wait for a result. --- (default: `1000`) ---@return table<integer, {error: lsp.ResponseError?, result: any}>? result Map of client_id:request_result.