diff options
author | awy <awy@awy.one> | 2025-10-14 18:27:29 +0300 |
---|---|---|
committer | awy <awy@awy.one> | 2025-10-14 18:27:29 +0300 |
commit | de009fd679e10d053fdcc10785f91ad5317449ea (patch) | |
tree | 60918a488b579588596cf4d509fde298dccbf15d /.config/nvim/lsp/idris2_lsp.lua | |
parent | 9ea6cf81adb5d6abc59843de1db45913210f9320 (diff) | |
download | hyprdots-de009fd679e10d053fdcc10785f91ad5317449ea.tar.gz |
nvim revamp
Diffstat (limited to '.config/nvim/lsp/idris2_lsp.lua')
-rw-r--r-- | .config/nvim/lsp/idris2_lsp.lua | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/.config/nvim/lsp/idris2_lsp.lua b/.config/nvim/lsp/idris2_lsp.lua new file mode 100644 index 0000000..d7f153e --- /dev/null +++ b/.config/nvim/lsp/idris2_lsp.lua @@ -0,0 +1,42 @@ +---@brief +--- +--- https://github.com/idris-community/idris2-lsp +--- +--- The Idris 2 language server. +--- +--- Plugins for the Idris 2 filetype include +--- [Idris2-Vim](https://github.com/edwinb/idris2-vim) (fewer features, stable) and +--- [Nvim-Idris2](https://github.com/ShinKage/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](https://aur.archlinux.org/packages/idris2/) and +--- [Homebrew](https://formulae.brew.sh/formula/idris2#default). +--- +--- 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](https://github.com/idris-lang/Idris2/blob/main/INSTALL.md) +--- 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. + +local util = require 'lspconfig.util' + +---@type vim.lsp.Config +return { + cmd = { 'idris2-lsp' }, + filetypes = { 'idris2' }, + root_dir = function(bufnr, on_dir) + local fname = vim.api.nvim_buf_get_name(bufnr) + on_dir(util.root_pattern '*.ipkg'(fname)) + end, +} |