mirror of
https://github.com/akr2002/nv.git
synced 2024-11-09 18:49:45 +00:00
add lsp
This commit is contained in:
parent
1c3e0d43b5
commit
e7fe2051d4
2 changed files with 139 additions and 0 deletions
|
@ -24,6 +24,7 @@
|
||||||
|
|
||||||
./lsp/conform.nix
|
./lsp/conform.nix
|
||||||
./lsp/fidget.nix
|
./lsp/fidget.nix
|
||||||
|
./lsp/lsp.nix
|
||||||
|
|
||||||
./dap/dap.nix
|
./dap/dap.nix
|
||||||
|
|
||||||
|
|
138
config/lsp/lsp.nix
Normal file
138
config/lsp/lsp.nix
Normal file
|
@ -0,0 +1,138 @@
|
||||||
|
{
|
||||||
|
plugins = {
|
||||||
|
lsp-format = {
|
||||||
|
enable = false; # Enable it if you want lsp-format integration for none-ls
|
||||||
|
};
|
||||||
|
lsp = {
|
||||||
|
enable = true;
|
||||||
|
capabilities = "offsetEncoding = 'utf-16'";
|
||||||
|
servers = {
|
||||||
|
clangd = {enable = true;};
|
||||||
|
lua-ls = {
|
||||||
|
enable = true;
|
||||||
|
extraOptions = {
|
||||||
|
settings = {
|
||||||
|
Lua = {
|
||||||
|
completion = {
|
||||||
|
callSnippet = "Replace";
|
||||||
|
};
|
||||||
|
telemetry = {
|
||||||
|
enabled = false;
|
||||||
|
};
|
||||||
|
hint = {enable = true;};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
nil_ls = {enable = true;};
|
||||||
|
eslint = {enable = true;};
|
||||||
|
pyright = {enable = true;};
|
||||||
|
ruff-lsp = {enable = true;};
|
||||||
|
|
||||||
|
rust-analyzer = {
|
||||||
|
enable = true;
|
||||||
|
installCargo = true;
|
||||||
|
installRustc = true;
|
||||||
|
settings = {
|
||||||
|
checkOnSave = true;
|
||||||
|
check = {
|
||||||
|
command = "clippy";
|
||||||
|
};
|
||||||
|
# inlayHints = {
|
||||||
|
# enable = true;
|
||||||
|
# showParameterNames = true;
|
||||||
|
# parameterHintsPrefix = "<- ";
|
||||||
|
# otherHintsPrefix = "=> ";
|
||||||
|
# };
|
||||||
|
procMacro = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# keymaps = {
|
||||||
|
# silent = true;
|
||||||
|
# lspBuf = {
|
||||||
|
# gd = {
|
||||||
|
# action = "definition";
|
||||||
|
# desc = "Goto Definition";
|
||||||
|
# };
|
||||||
|
# gr = {
|
||||||
|
# action = "references";
|
||||||
|
# desc = "Goto References";
|
||||||
|
# };
|
||||||
|
# gD = {
|
||||||
|
# action = "declaration";
|
||||||
|
# desc = "Goto Declaration";
|
||||||
|
# };
|
||||||
|
# gI = {
|
||||||
|
# action = "implementation";
|
||||||
|
# desc = "Goto Implementation";
|
||||||
|
# };
|
||||||
|
# gT = {
|
||||||
|
# action = "type_definition";
|
||||||
|
# desc = "Type Definition";
|
||||||
|
# };
|
||||||
|
# K = {
|
||||||
|
# action = "hover";
|
||||||
|
# desc = "Hover";
|
||||||
|
# };
|
||||||
|
# "<leader>cw" = {
|
||||||
|
# action = "workspace_symbol";
|
||||||
|
# desc = "Workspace Symbol";
|
||||||
|
# };
|
||||||
|
# "<leader>cr" = {
|
||||||
|
# action = "rename";
|
||||||
|
# desc = "Rename";
|
||||||
|
# };
|
||||||
|
# "<leader>ca" = {
|
||||||
|
# action = "code_action";
|
||||||
|
# desc = "Code Action";
|
||||||
|
# };
|
||||||
|
# "<C-k>" = {
|
||||||
|
# action = "signature_help";
|
||||||
|
# desc = "Signature Help";
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
# diagnostic = {
|
||||||
|
# "<leader>cd" = {
|
||||||
|
# action = "open_float";
|
||||||
|
# desc = "Line Diagnostics";
|
||||||
|
# };
|
||||||
|
# "[d" = {
|
||||||
|
# action = "goto_next";
|
||||||
|
# desc = "Next Diagnostic";
|
||||||
|
# };
|
||||||
|
# "]d" = {
|
||||||
|
# action = "goto_prev";
|
||||||
|
# desc = "Previous Diagnostic";
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
# };
|
||||||
|
};
|
||||||
|
};
|
||||||
|
extraConfigLua = ''
|
||||||
|
local _border = "rounded"
|
||||||
|
|
||||||
|
vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(
|
||||||
|
vim.lsp.handlers.hover, {
|
||||||
|
border = _border
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with(
|
||||||
|
vim.lsp.handlers.signature_help, {
|
||||||
|
border = _border
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
vim.diagnostic.config{
|
||||||
|
float={border=_border}
|
||||||
|
};
|
||||||
|
|
||||||
|
require('lspconfig.ui.windows').default_options = {
|
||||||
|
border = _border
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue