summaryrefslogtreecommitdiff
path: root/.config/nvim/lua/plugins/lsp.lua
diff options
context:
space:
mode:
authorKyren223 <ulmliad223@gmail.com>2024-06-19 17:56:44 +0300
committerKyren223 <ulmliad223@gmail.com>2024-06-19 17:56:44 +0300
commit5f74606a528fbb47944621cc85f13e73d564feff (patch)
tree3437b02e749e66c77098da9a352bd34e7162a3e4 /.config/nvim/lua/plugins/lsp.lua
parentaca090f8145460d8c32c6342909db315a8110b8e (diff)
Added nvim config
Diffstat (limited to '.config/nvim/lua/plugins/lsp.lua')
-rw-r--r--.config/nvim/lua/plugins/lsp.lua52
1 files changed, 52 insertions, 0 deletions
diff --git a/.config/nvim/lua/plugins/lsp.lua b/.config/nvim/lua/plugins/lsp.lua
new file mode 100644
index 0000000..beeaf0a
--- /dev/null
+++ b/.config/nvim/lua/plugins/lsp.lua
@@ -0,0 +1,52 @@
+return {
+ {
+ "williamboman/mason.nvim",
+ config = function()
+ require("mason").setup()
+ end
+ },
+
+ {
+ "williamboman/mason-lspconfig.nvim",
+ config = function()
+ require("mason-lspconfig").setup({
+ ensure_installed = {
+ "lua_ls",
+ "clangd",
+ "gradle_ls",
+ "jdtls",
+ "kotlin_language_server",
+ "pyright",
+ "rust_analyzer",
+ "taplo",
+ "bashls",
+ "lemminx",
+ "yamlls"
+ }
+ })
+ end
+ },
+
+ {
+ "neovim/nvim-lspconfig",
+ config = function()
+ local lspconfig = require("lspconfig")
+ lspconfig.lua_ls.setup({})
+ lspconfig.clangd.setup({})
+ lspconfig.gradle_ls.setup({})
+ lspconfig.jdtls.setup({})
+ lspconfig.kotlin_language_server.setup({})
+ lspconfig.pyright.setup({})
+ lspconfig.rust_analyzer.setup({})
+ lspconfig.taplo.setup({})
+ lspconfig.bashls.setup({})
+ lspconfig.lemminx.setup({})
+ lspconfig.yamlls.setup({})
+
+ vim.keymap.set('n', 'gh', vim.lsp.buf.hover, { desc = "[G]oto [H]over" })
+ vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { desc = "[G]oto [D]efinition" })
+ vim.keymap.set('n', '<leader>ca', vim.lsp.buf.code_action, { desc = "[C]ode [A]ction" })
+ vim.keymap.set('n', '<M-Enter>', vim.lsp.buf.code_action, { desc = "Code Actions" })
+ end
+ }
+}