lsp: add haskell-language-server
This commit is contained in:
11
flake.nix
11
flake.nix
@@ -28,23 +28,24 @@
|
|||||||
[
|
[
|
||||||
alejandra
|
alejandra
|
||||||
ccls
|
ccls
|
||||||
|
chafa
|
||||||
gopls
|
gopls
|
||||||
|
haskell-language-server
|
||||||
luaformatter
|
luaformatter
|
||||||
|
lua-language-server
|
||||||
nixd
|
nixd
|
||||||
nixfmt-rfc-style
|
nixfmt-rfc-style
|
||||||
pyright
|
pyright
|
||||||
rust-analyzer
|
rust-analyzer
|
||||||
lua-language-server
|
|
||||||
svls
|
svls
|
||||||
texlab
|
texlab
|
||||||
tree-sitter
|
|
||||||
tinymist
|
tinymist
|
||||||
|
tree-sitter
|
||||||
|
ueberzugpp
|
||||||
verible
|
verible
|
||||||
|
viu
|
||||||
yaml-language-server
|
yaml-language-server
|
||||||
zls
|
zls
|
||||||
viu
|
|
||||||
chafa
|
|
||||||
ueberzugpp
|
|
||||||
]
|
]
|
||||||
++ [ neovim ];
|
++ [ neovim ];
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
{pkgs}: let
|
{ pkgs }:
|
||||||
|
let
|
||||||
neovim = pkgs.neovim.override {
|
neovim = pkgs.neovim.override {
|
||||||
configure = {
|
configure = {
|
||||||
customRC = ''
|
customRC = ''
|
||||||
@@ -12,6 +13,7 @@
|
|||||||
parsers.c
|
parsers.c
|
||||||
parsers.cpp
|
parsers.cpp
|
||||||
parsers.go
|
parsers.go
|
||||||
|
parsers.haskell
|
||||||
parsers.json
|
parsers.json
|
||||||
parsers.latex
|
parsers.latex
|
||||||
parsers.lua
|
parsers.lua
|
||||||
@@ -51,7 +53,7 @@
|
|||||||
# lua
|
# lua
|
||||||
luaRc = builtins.readFile ./vimrc.lua;
|
luaRc = builtins.readFile ./vimrc.lua;
|
||||||
in
|
in
|
||||||
pkgs.runCommand "nvim-lsp" {} ''
|
pkgs.runCommand "nvim-lsp" { } ''
|
||||||
mkdir -p $out/bin
|
mkdir -p $out/bin
|
||||||
ln -s ${neovim}/bin/nvim $out/bin/vim
|
ln -s ${neovim}/bin/nvim $out/bin/vim
|
||||||
''
|
''
|
||||||
|
|||||||
12
vimrc.lua
12
vimrc.lua
@@ -215,7 +215,7 @@ vim.lsp.config('nixd', {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
vim.lsp.enable('nixd');
|
vim.lsp.enable('nixd')
|
||||||
|
|
||||||
vim.lsp.config('lua_ls', {
|
vim.lsp.config('lua_ls', {
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
@@ -241,13 +241,19 @@ vim.lsp.config('lua_ls', {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
vim.lsp.enable('lua_ls');
|
vim.lsp.enable('lua_ls')
|
||||||
|
|
||||||
vim.lsp.config('verible', {
|
vim.lsp.config('verible', {
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
root_dir = function() return vim.fn.getcwd() end
|
root_dir = function() return vim.fn.getcwd() end
|
||||||
})
|
})
|
||||||
vim.lsp.enable('verible');
|
vim.lsp.enable('verible')
|
||||||
|
|
||||||
|
vim.lsp.config('hls', {
|
||||||
|
capabilities = capabilities,
|
||||||
|
filetypes = { 'haskell', 'lhaskell', 'cabal' },
|
||||||
|
})
|
||||||
|
vim.lsp.enable('hls')
|
||||||
|
|
||||||
if vim.fn.exists('+undofile') ~= 0 then
|
if vim.fn.exists('+undofile') ~= 0 then
|
||||||
local undo_dir = vim.env.HOME .. '/.config/nvim/undo'
|
local undo_dir = vim.env.HOME .. '/.config/nvim/undo'
|
||||||
|
|||||||
Reference in New Issue
Block a user