Coc.nvim language servers: Difference between revisions

From wikinotes
Line 10: Line 10:
{| class="wikitable"
{| class="wikitable"
|-
|-
| python || unmaintained || [[coc-python]]
!colspan=2| python
|-
|-
| python || active || [[coc-pyright]]
| unmaintained || [[coc-python]]
|-
|-
| sh/bash || active || [[coc-sh]]
| active || [[coc-pyright]]
|-
|-
| ruby/rails || active || [[coc-solargraph]]
!colspan=2| sh, bash
|-
|-
| graphql || active || [[coc-graphql]]
| active || [[coc-sh]]
|-
!colspan=2| ruby
|-
| active, ruby/rails || [[coc-solargraph]]
|-
!colspan=2| graphql
|-
| active || [[coc-graphql]]
|-
|-
|}
|}

Revision as of 15:21, 28 December 2021

Language Servers

Extensions

Language Servers may have a wrapper built for COC. These are called extensions.

You may install them dynamically with :CocInstall coc-python
and sometimes automatically like Plug 'neoclide/coc-tsserver', {'do': 'yarn install --frozen-lockfile'}.

python
unmaintained coc-python
active coc-pyright
sh, bash
active coc-sh
ruby
active, ruby/rails coc-solargraph
graphql
active coc-graphql

Custom

Some programs may be able to function as an LSP, and can be registered to do so.
see https://github.com/neoclide/coc.nvim/wiki/Language-servers#register-custom-language-servers

{
   "languageserver": {
      "sorbet": {
        "command": "srb",
        "args": ["tc", "--lsp"],
        "filetypes": ["ruby"]
      }
   }
}