`nvim_lsp/skeleton.lua` is not really a skeleton, it's a `configs`
class that provides
1. actual functionality
2. a bunch of configs
Each config is added to the `configs` object (FKA "skeleton") as
a property. Those configs are not "templates", they are "configs". So we
should clean up the wording in various places to say "config" instead of
"skeleton"/"template".
Closes#64
Lua is easy to use from Vimscript, there is no reason to have multiple
ways to work with nvim-lsp.
- massively clarifies the "story" that users need to comprehend
- reduces surface area, maintenance, tests
- avoids constant "Vim or Lua" dance in the documentation
- simplifies discussions, tutorials, etc.
- avoids confusing situation for users that start with Vimscript but
later need Lua-only features
* Add sumneko_lua installation and util.sh helper.
* Add vspackage extraction for package.json information via vscode name.
* Allow specifying a tempdir at DOCGEN_TEMPDIR
* Fix on_new_config and add docs for root_dir
* User settings titles are not always useful
* Redo installation.
Servers which want to be auto installed should specify
skeleton[name].install()
and it will be automatically added to the list of installable servers.
- Add :LspInstall and :LspInstallInfo
- Auto generate docs for servers with .install() available.
- Add util.npm_installer
- Refactor utf8 capabilities common config into a single function
- Add contribution notes.
- Also expose util.base_install_dir for other installers potentially
- Fix tsserver's arguments and add javascript filetypes
- Initial add of elmLS support
- Removes unnecessary vim.schedule_wrap fn calls in elmls & clangd impls
- Add automatic installation for elmls and update docs.
- Sort server output in the README.
- Add commands for elmls for buffer and globally.
- [bugfix] Skeleton could've tried to attach even if root_dir was nil
TODO: check for updates and warn the user if there are updates when an elm server is started.
Co-authored-by: Seth Messer <seth.messer@gmail.com>