aboutsummaryrefslogtreecommitdiffstats
path: root/lua
Commit message (Collapse)AuthorAgeFilesLines
* feat: glint-language-server #1890Moacir P. de Sá Pereira2022-05-051-0/+48
|
* feat(configs): use client capabilities by default, deep-extend user-provided ↵jdrouhard2022-05-044-19/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* ocamllsp: add support for the dune filetype (#1884)Török Edwin2022-05-021-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ocamllsp: add dune as supported language ocaml-lsp-server-1.11.3 enables 'dune' rpc integration (you need a running `dune build --watch` command which provides the RPC server). This allows to reformat `dune` files, and to see `dune` and other build errors as soon as you change a file (e.g. quite useful on newly created files which would otherwise show an LSP error until first build). Signed-off-by: Edwin Török <edwin@etorok.net> * ocamllsp: dune-project and dune-workspace also mark roots Although most dune projects will also have a *.opam file, this file might be generated by the build system. Newer versions of dune have a dune-project file to mark the root though, and users can create a dune-workspace file as well. Note that `dune` files themselves do NOT mark the root: they can be present in subdirs too. The rules on how `dune` itself finds the root are documented here: https://dune.readthedocs.io/en/stable/usage.html#finding-the-root "The root of the current workspace is determined by looking up a dune-workspace or dune-project file in the current directory and its parent directories. Dune requires at least one of these two files to operate." Signed-off-by: Edwin Török <edwin@etorok.net>
* fix(eslint): add missing root_pattern (#1869)Anton2022-04-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | Even though this file name was removed from the official docs https://eslint.org/docs/user-guide/configuring/configuration-files#configuration-file-formats Eslint still supports the older `.eslintrc` and it is used in tests https://github.com/eslint/eslint/blob/9ecd42f36462331a0d697e74323a4d24f0cf02fc/tests/fixtures/.eslintrc The loading is done by the legacy package `@eslint/eslintrc` that is still used by eslint itself ``` ~/Documents/repositories/eslint $ npm instll && rg '".eslintrc"' ./node_modules/@eslint/eslintrc/lib -B 6 ./node_modules/@eslint/eslintrc/lib/config-array-factory.js 66-const configFilenames = [ 67- ".eslintrc.js", 68- ".eslintrc.cjs", 69- ".eslintrc.yaml", 70- ".eslintrc.yml", 71- ".eslintrc.json", 72: ".eslintrc", ```
* docs(zeta_note): fix quotation mark style (#1867)yhu2662022-04-261-1/+1
|
* docs(esbonio): fix URL to option docs (#1866)yhu2662022-04-261-1/+1
| | | The option docs have been moved to a new page.
* docs(reason_ls): remove invalid comment regarding cmd (#1864)William Boman2022-04-261-7/+0
|
* fix(zeta_note): add cmd (#1863)William Boman2022-04-261-7/+1
|
* fix(vls): add cmd (#1862)William Boman2022-04-261-11/+1
|
* fix(ccls): .git as fallback when detecting project root (#1860)Alexandru Geană2022-04-251-2/+11
|
* Revert "fix(ccls): remove .git from root_dir" (#1857)Michael Lingelbach2022-04-251-2/+2
|
* Merge pull request #1855 from mracos/patch-2Peter Lithammer2022-04-251-1/+1
|\ | | | | Add `heex` as filetype to elixirls
| * fix(elixirls): add `heex` filetypemarcos ferreira2022-04-251-1/+1
| |
* | fix(ccls): remove .git from root_dirAlexandru Geana2022-04-231-2/+2
|/ | | | | | | CCLS does not use .git to identify the root of a project. In addition, it causes issues with projects that are based on the repo tool (e.g. AOSP), which generates .git symlinks in many places in the source tree. In such cases, CCLS incorrectly identifies subdirectories as the root.
* docs: clarify recommendations for lua-language-server (#1845)Michael Lingelbach2022-04-171-1/+16
|
* feat(vimls): enable neovim support by default (#1844)Michael Lingelbach2022-04-171-3/+3
|
* feat: add steep support (#1842)OKURA Masafumi2022-04-161-0/+21
| | | Steep is a static type checker for Ruby.
* feat: add astro-ls support (#1841)Piero Lescano2022-04-161-0/+32
|
* fix(clarity_lsp): remove .cmd suffix for Windows (#1835)v0.1.3William Boman2022-04-141-6/+1
|
* docs: remove outdated root pattern references (#1828)Michael Lingelbach2022-04-097-7/+7
|
* fix(clangd): update root-markers (#1826)kylo2522022-04-092-9/+26
|
* fix(lua-language-server): update root-markers (#1825)kylo2522022-04-091-2/+10
|
* fix(taplo): update for taplo 0.6.0Denis Cornehl2022-04-051-3/+3
| | | | | | taplo was refactored and taplo-lsp was merge into taplo-cli. see also https://github.com/tamasfe/taplo/pull/211
* Merge pull request #1779 from angusjf/patch-1Peter Lithammer2022-03-281-1/+1
|\ | | | | Update eslint's `autocmd` example
| * docs(eslint): update `autocmd` exampleAngus Findlay2022-03-281-1/+1
| |
* | ci: fix new luacheck v0.26.0 errorsPeter Lithammer2022-03-282-11/+11
| | | | | | | | | | | | | | | | | | See https://github.com/lunarmodules/luacheck/releases/tag/v0.26.0 lua/lspconfig/util.lua:225:40: used variable _make_config lua/lspconfig/configs.lua:207:63: used variable _root_dir lua/lspconfig/configs.lua:260:19: 'not (x == y)' can be replaced by 'x ~= y' (if neither side is a table or NaN)
* | fix(hoon-language-server): update cmd and docs (#1809)Matthias Schaub2022-03-231-6/+5
| | | | | | | | | | | | | | Remove CMD parameters for which the language server provides defaults. Make docs simpler. Remove markdown code fences. Co-authored-by: Matthias Schaub <matthias.schaub@posteo.de>
* | fix(hoon-language-server): remove example (#1804)Matthias Schaub2022-03-221-7/+0
| | | | | | | | | | | | Example of how to use the 'cmd' setting is not needed. Also the name of the language server in this example is wrong. Co-authored-by: Matthias Schaub <matthias.schaub@posteo.de>
* | feat: add hoon-language-server support (#1802)Matthias Schaub2022-03-211-0/+37
| | | | | | Co-authored-by: Matthias Schaub <matthias.schaub@posteo.de>
* | docs: clean up styling in documentation (#1797)Michael Lingelbach2022-03-201-2/+2
| | | | | | Make it more obvious not to copy/paste default_config
* | feat: add prosemd-lsp for markdown (#1795)Dan Sully2022-03-201-0/+22
| |
* | feat: add mm0 language support (#1787)Julian Berman2022-03-181-0/+20
| | | | | | | | This is a theorem prover (https://github.com/digama0/mm0) in some sense related to the existing (supported) Lean theorem prover.
* | fix(beancount-langserver): add stdio flag to cmd (#1791)kmaasrud2022-03-181-1/+1
| |
* | docs: fix volar.setup parameters in description (#1780)Jędrzej Boczar2022-03-161-5/+3
|/
* docs: update Volar package name in docs (#1776)Jess Archer2022-03-141-2/+2
| | | | | The [`@volar/server`](https://github.com/neovim/nvim-lspconfig/pull/1770) NPM package has been renamed to [`@volar/vue-language-server`](https://www.npmjs.com/package/@volar/vue-language-server). The change to the server config was already made in https://github.com/neovim/nvim-lspconfig/pull/1770 so this is just updating the docs.
* chore(volar): @volar/server -> @volar/vue-language-server (#1770)Artur Tagisow2022-03-131-1/+2
| | | | | | See https://github.com/johnsoncodehk/volar/issues/876 Add new languageFeatures.implementation = true option as per CHANGELOG.md in volar repo for version 0.33
* fix(lspstop): make LspStop behave as described in the docs (#1764)Federico Igne2022-03-091-1/+1
| | | | | | | | | | | | | This bug was introduced in #1324. When calling `:LspStop <args>`, the current code tries to match a string with the format "123 (blablabla)", which will result in terminating the server with ID 123. This is fine when using autocompletion, but if doing this programmatically (or just following the docs) something like `:LspStop 1` will not match anything, resulting in terminating *all* managed servers. This should be enough to fix the bug, allow terminating multiple servers at once and keeping the nice UX provided by the autocompletion.
* docs: add bashls install instructions (#1760)Zach Wahrer2022-03-081-0/+5
|
* feat: add please support (#1734)Sean Baildon2022-03-081-0/+19
|
* style(teal_ls): fix indentation and single quotesPeter Lithammer2022-03-081-11/+11
|
* feat: add support for sourcery (#1495)kylo2522022-03-071-0/+55
|
* feat: add teal-language-server support (#1732)Steve Vermeulen2022-03-061-0/+29
|
* feat: add openscad-language-server (#1757)Rudis Muiznieks2022-03-061-0/+32
|
* Merge pull request #1758 from neovim/hhvm-formatPeter Lithammer2022-03-061-1/+1
|\ | | | | style(hhvm): add space inside array
| * style(hhvm): add space inside tablePeter Lithammer2022-03-061-1/+1
| |
* | feat: add reason-language-server (#1721)RiN2022-03-061-0/+23
|/
* feat: add perlnavigator support (#1756)Seth Daniel2022-03-061-0/+39
|
* feat: add clarity-lsp support (#1755)Jose Soto2022-03-041-0/+24
|
* feat: add odin language server support (#1747)Andreas Stallinger2022-03-011-0/+20
|
* fix(perlpls): turn on syntax checking by default (#1749)Seth Daniel2022-02-281-0/+1
|