idris2_lsp

URL: https://github.com/idris-community/idris2-lsp

plugins.lsp.servers.idris2_lsp.enable

Whether to enable https://github.com/idris-community/idris2-lsp

The Idris 2 language server.

Plugins for the Idris 2 filetype include Idris2-Vim (fewer features, stable) and Nvim-Idris2 (cutting-edge, experimental).

Idris2-Lsp requires a build of Idris 2 that includes the “Idris 2 API” package. Package managers with known support for this build include the AUR and Homebrew.

If your package manager does not support the Idris 2 API, you will need to build Idris 2 from source. Refer to the the Idris 2 installation instructions for details. Steps 5 and 8 are listed as “optional” in that guide, but they are necessary in order to make the Idris 2 API available.

You need to install a version of Idris2-Lsp that is compatible with your version of Idris 2. There should be a branch corresponding to every released Idris 2 version after v0.4.0. Use the latest commit on that branch. For example, if you have Idris v0.5.1, you should use the v0.5.1 branch of Idris2-Lsp.

If your Idris 2 version is newer than the newest Idris2-Lsp branch, use the latest commit on the master branch, and set a reminder to check the Idris2-Lsp repo for the release of a compatible versioned branch. .

Type: boolean

Default: false

Example: true

Declared by:

plugins.lsp.servers.idris2_lsp.package

The idris2_lsp package to use.

Type: null or package

Default: pkgs.idris2Packages.idris2Lsp

Declared by:

plugins.lsp.servers.idris2_lsp.autostart

Controls if the FileType autocommand that launches a language server is created. If false, allows for deferring language servers until manually launched with :LspStart (|lspconfig-commands|).

Type: null or boolean or raw lua code

Default: null

Plugin default: true

Declared by:

plugins.lsp.servers.idris2_lsp.cmd

A list where each entry corresponds to the blankspace delimited part of the command that launches the server.

The first entry is the binary used to run the language server. Additional entries are passed as arguments.

Type: null or (list of string)

Default: null

Declared by:

plugins.lsp.servers.idris2_lsp.extraOptions

Extra options for the idris2_lsp language server.

Type: attribute set of anything

Default: { }

Declared by:

plugins.lsp.servers.idris2_lsp.filetypes

Set of filetypes for which to attempt to resolve {root_dir}. May be empty, or server may specify a default value.

Type: null or (list of string)

Default: null

Declared by:

plugins.lsp.servers.idris2_lsp.rootDir

A function (or function handle) which returns the root of the project used to determine if lspconfig should launch a new language server, or attach a previously launched server when you open a new buffer matching the filetype of the server.

Type: null or lua function string

Default: null

Plugin default: "nil"

Declared by:

plugins.lsp.servers.idris2_lsp.settings

The settings for this LSP.

Type: attribute set of anything

Default: { }

Example:

{
  callback = {
    __raw = ''
      function()
        print('nixvim')
      end
    '';
  };
  foo_bar = 42;
  hostname = "localhost:8080";
}

Declared by: