Problem:
:LspInfo has its own "inner platlform" of highlights, mappings etc. And
it doesn't integrate with :checkhealth.
Solution:
- Move the lspinfo code to a healthcheck.
- LspInfo features such as highlights, "floating window" presentation,
etc., should be added to :checkhealth in Nvim core, if they are really
needed.
- Define a "q" mapping until Nvim stable has that in :checkhealth.
Problem:
Users/plugins may want to use the config definition without actually
activating the config via setup().
Solution:
- Expose `config_def` field and document it.
- Also undeprecate some stuff that doesn't yet have a documented
alternative.
TODO: configs.lua sets `M.filetypes = config.filetypes` and other fields
in ad-hoc fashion "for :LspInfo" but it's not clear when those fields
are actually populated, and they don't source from `config_def`...
* feat: show deprecate servers list in LspInfo
In order to smoothly transition to the vim.lsp.start interface in the future,
adding checkhealth here is meaningless. Only the lspinfo information window
is available. So shown deprecate servers list in LspInfo and update the
server deprecate remove version to 0.2.1. 0.2.0 is tagged too
quickly cause some servers not removed.
Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
This section is way too verbose and encourages sloppy copy-pasting. Nvim
already ships help documentation for configuring the LSP client, so
instead of duplicating that information, point users toward upstream
docs instead.
* fix: util.root_pattern prioritises pattern order
Instead of traversing the filesystem upwards once and
returning the first match of all the patterns, it traverses
the filesystem upwards once for each pattern. This means
that the order of the patterns provided matters, and the
highest priority patterns should be put first. Also updated
corresponding tests.
* docs: update util.root_pattern description
* feat: improve LspInfo
* feat: update README for highlight
* fix: wrong typo
* fix: ci failed
* fix: remove unnecessary block
* fix: stylua format
* fix: set default border to none
* fix: update the doc
* fix: define names in if statement
* fix: use default_options to set border
* fix: use available servers list
* fix: fixup
* fix: format by stylua
* fix: use bufdelete event
* fix: format
* fix: add tips
* fix: stylua format
* fix: use wrap
* fix: add 122 to luacheck ignore
* fix: reset the default options
* fix: merge master
* fix: remove unecessary code
* feat: update the highlight group
* feat: update doc for highlight
* fix: remove highlig from README
* fix: remae highlight group in doc
* switch to lua api for autocommands
* switch to nvim_create_user_command
* move to lua plugin initialization
NOTICE: Defining commands in server configurations will be deprecated in
future releases.
See `:help lspconfig.txt` to setup the same in an `on_attach` function.
Co-authored-by: Michael Lingelbach <m.j.lbach@gmail.com>
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
There doesn't appear to actually be a function called `format`.
Instead, I believe what we actually want here is a call `formatting`.
Co-authored-by: Kurtis Nusbaum <kcommiter@gmail.com>
* generating the tags at docgen and modifying the
|lspconfig-server-configurations|
tag allows `:help lspconfig-server-configurations` take you to
./doc/server_configurations.md
* adding a modeline to the markdown file ensures it sets the
correct filetype
Co-authored-by: Javier López <graulopezjavier@gmail.com>
* This adds a "single file mode" option for each language server
* Currently, if a root is not detected, a new language server is started
for each file opened.
* Root directory is set to `nil` in start_client. Some servers will
refuse to start, or otherwise panic. This is opt-in per server.
* Some servers, such as rust-analyzer, explicitly have a "single file
mode", we will not support that until it is officially part of the LSP
specification
Co-authored-by: Peter Lithammer <peter.lithammer@gmail.com>
* remove automated generation of vimdoc + ci
* unify ADVANCED_README.md and vimdoc
* rename CONFIGS.md to server_configurations.md, move into doc folder
* move CONTRIBUTING.md to .github folder