aboutsummaryrefslogtreecommitdiffstats
path: root/lua/lspconfig/server_configurations/clangd.lua
Commit message (Collapse)AuthorAgeFilesLines
* refactor: rename "server_configurations" => "configs" #3330Justin M. Keyes2024-10-011-119/+0
| | | | | | | | | | | | | | Problem: The name `server_configurations` is extremely verbose and irritatingly formal and dogmatic. This overlong name is a constant nuisance when reading, writing, and coding. It's also not even correct: these configurations are just as much "client" configurations as they are "server" configurations. Solution: - Rename to a shorter name. - Leave placeholder files for any old URLs that link to the old location.
* feat(clangd): add symbolInfo support (#3274)Dimitris Dimitropoulos2024-08-211-0/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * feat(clangd): add symbolInfo support Signed-off-by: Dimitris Dimitropoulos <dimitris.dimitropoulos00@gmail.com> * fix(clangd): use make_position_params util function Signed-off-by: Dimitris Dimitropoulos <dimitris.dimitropoulos00@gmail.com> * fix(clangd): no need to use a parameter Signed-off-by: Dimitris Dimitropoulos <dimitris.dimitropoulos00@gmail.com> * fix(clangd): remove parameter from command Signed-off-by: Dimitris Dimitropoulos <dimitris.dimitropoulos00@gmail.com> * fix(clangd): check if client supports method Signed-off-by: Dimitris Dimitropoulos <dimitris.dimitropoulos00@gmail.com> * fix(clangd): use client request instead of buf_request Signed-off-by: Dimitris Dimitropoulos <dimitris.dimitropoulos00@gmail.com> --------- Signed-off-by: Dimitris Dimitropoulos <dimitris.dimitropoulos00@gmail.com>
* feat(clangd): add proto filetype support (#2125)Kevin Greene2022-09-091-1/+1
| | | | | | | | | | | | clangd supports formatting and some basic linting for protobuf files. Here is an example .clang-format file with a section for protobuf files: ``` --- Language: Proto BasedOnStyle: Google ColumnLimit: 100 AllowShortFunctionsOnASingleLine: Empty ```
* fix(docs): fix the usage of ln to make symbolic links of ↵Yang Shen2022-06-181-1/+1
| | | | compile_commands.json (#1961)
* docs: unverbose, mention "settings" paramJustin M. Keyes2022-06-131-3/+8
| | | | | | | | | | | | | | | | | Problem: - The docs are verbose. - The "settings" param is not really clarified anywhere. Solution: - Mention the "settings" param in the README. - Tighten up the wording. - Remove the "Use a loop to conveniently call 'setup'..." advice in the docs. It confuses users and doesn't really save much code. - Start to reduce the scope of nvim-lspconfig. - For example, it is redundant for it to document general LSP things. Thus, the help section *lspconfig-lsp* was removed. closes #1951
* feat: add cuda support for clangd (#1947)DragonBillow2022-06-071-1/+1
|
* feat(configs): use client capabilities by default, deep-extend user-provided ↵jdrouhard2022-05-041-11/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | capabilities #1889 Previously, vim.lsp.protocol.make_client_capabilities() was used if no capabilities were specified in either the user-provided config or the default config (base or server). Now, the base default config table has a capabilities key with the value of make_client_capabilities(). When creating the finalized configuration for a server, it simply uses the finalized config which is the user-provided config deep extended by the default config (which now contains the default capabilities). This means that users will no longer have to create their own customized capabilities tables seeded from vim.lsp.protocol.make_client_capabilities(). They simply need to create the parts that are new or different from the defaults and pass that as the capabilities. The rest of the defaults are filled in automatically. For this to work properly, some tbl_extend calls were changed to tbl_deep_extend. tbl_extend will not recursively update nested tables, so using it wipes out any server provided defaults in nested config keys (such as capabilities) and won't properly fill in the "rest" of the capabilities if the user provided a smaller capabilities key in their config. Changing to tbl_deep_extend ensures server-specific configuration values are preserved and that the finalized config at least contains defaults for all client-supported capabilities. For example, clangd's config default has: ``` local default_capabilities = { textDocument = { completion = { editsNearCursor = true, }, }, offsetEncoding = { 'utf-8', 'utf-16' }, } ``` Prior to this commit, this was the full vim.lsp.protocol.make_client_capabilities() extended with those extra values. However, if a user provided their _own_ capabilities to the setup() function, tbl_extend wiped these extra values out and replaced it with the users' capabilities, which was likely only vim.lsp.protocol.make_client_capabilities() with some _other_ tweaks. Now, clangd can simply provide the extras, and the setup() function will normalize the config with all of user-provided, server-specific, and base default capabilities.
* fix(clangd): update root-markers (#1826)kylo2522022-04-091-8/+22
|
* refactor(clangd): remove obsolete --background-index flag (#1630)Kirill Bobyrev2022-01-031-1/+1
|
* chore!: remove compat shims for pre-0.5.1 handlers (#1530)Christian Clason2021-12-021-15/+10
|
* chore: use client.request instead of buf_request (#1503)ranjithshegde2021-11-291-15/+20
| | | | | | | * Use client.request directly instead of vim.lsp.buf_request to call methods that are outside the official LSP specification, such as clangd's "textDocument/switchSourceHeader". * This avoids sending an inapplicable request to all servers, as we cannot ahead of time validate the methods a given server supports.
* chore: clean up importsMichael Lingelbach2021-11-251-1/+1
|
* feat: expose configsMichael Lingelbach2021-11-251-0/+73