Home Explore Blog CI



neovim

28th chunk of `runtime/doc/lsp.txt`
65c16bbc8813515e8ee463729e68cd27baf8244e160cd5050000000100000fc2
 *vim.lsp.buf.list_workspace_folders()*
    List workspace folders.

outgoing_calls()                                *vim.lsp.buf.outgoing_calls()*
    Lists all the items that are called by the symbol under the cursor in the
    |quickfix| window. If the symbol can resolve to multiple items, the user
    can pick one in the |inputlist()|.

references({context}, {opts})                       *vim.lsp.buf.references()*
    Lists all the references to the symbol under the cursor in the quickfix
    window.

    Parameters: ~
      • {context}  (`lsp.ReferenceContext?`) Context for the request
      • {opts}     (`vim.lsp.ListOpts?`) See |vim.lsp.ListOpts|.

    See also: ~
      • https://microsoft.github.io/language-server-protocol/specifications/specification-current/#textDocument_references

                                       *vim.lsp.buf.remove_workspace_folder()*
remove_workspace_folder({workspace_folder})
    Remove the folder at path from the workspace folders. If {path} is not
    provided, the user will be prompted for a path using |input()|.

    Parameters: ~
      • {workspace_folder}  (`string?`)

rename({new_name}, {opts})                              *vim.lsp.buf.rename()*
    Renames all references to the symbol under the cursor.

    Parameters: ~
      • {new_name}  (`string?`) If not provided, the user will be prompted for
                    a new name using |vim.ui.input()|.
      • {opts}      (`table?`) Additional options:
                    • {filter}? (`fun(client: vim.lsp.Client): boolean?`)
                      Predicate used to filter clients. Receives a client as
                      argument and must return a boolean. Clients matching the
                      predicate are included.
                    • {name}? (`string`) Restrict clients used for rename to
                      ones where client.name matches this field.
                    • {bufnr}? (`integer`) (default: current buffer)

signature_help({config})                        *vim.lsp.buf.signature_help()*
    Displays signature information about the symbol under the cursor in a
    floating window.

    Parameters: ~
      • {config}  (`vim.lsp.buf.signature_help.Opts?`) See
                  |vim.lsp.buf.signature_help.Opts|.

type_definition({opts})                        *vim.lsp.buf.type_definition()*
    Jumps to the definition of the type of the symbol under the cursor.

    Parameters: ~
      • {opts}  (`vim.lsp.LocationOpts?`) See |vim.lsp.LocationOpts|.

typehierarchy({kind})                            *vim.lsp.buf.typehierarchy()*
    Lists all the subtypes or supertypes of the symbol under the cursor in the
    |quickfix| window. If the symbol can resolve to multiple items, the user
    can pick one using |vim.ui.select()|.

    Parameters: ~
      • {kind}  (`"subtypes"|"supertypes"`)

workspace_symbol({query}, {opts})             *vim.lsp.buf.workspace_symbol()*
    Lists all symbols in the current workspace in the quickfix window.

    The list is filtered against {query}; if the argument is omitted from the
    call, the user is prompted to enter a string on the command line. An empty
    string means no filtering is done.

    Parameters: ~
      • {query}  (`string?`) optional
      • {opts}   (`vim.lsp.ListOpts?`) See |vim.lsp.ListOpts|.


==============================================================================
Lua module: vim.lsp.diagnostic                                *lsp-diagnostic*

from({diagnostics})                                *vim.lsp.diagnostic.from()*
    Converts the input `vim.Diagnostic`s to LSP diagnostics.

    Parameters: ~
      • {diagnostics}  (`vim.Diagnostic[]`)

    Return: ~
        (`lsp.Diagnostic[]`)

                                          *vim.lsp.diagnostic.get_namespace()*
get_namespace({client_id}, {is_pull})
    Get the diagnostic namespace associated with an LSP client
    |vim.diagnostic| for diagnostics

    Parameters: ~
      • {client_id}  (`integer`) The id of

Title: vim.lsp.buf Functions: Workspace Management, Renaming, Signature Help, and Type Hierarchy
Summary
This section describes the remaining `vim.lsp.buf` functions. These include functions to list, add, and remove workspace folders; rename symbols; display signature help; jump to type definitions; list type hierarchy; and search for symbols in the workspace. Finally, it also covers the `vim.lsp.diagnostic` module and functions for converting and managing LSP diagnostics.