aboutsummaryrefslogtreecommitdiff
path: root/lua/pml68/configs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--lua/pml68/configs/lspconfig.lua33
-rw-r--r--lua/pml68/configs/mason.lua39
-rwxr-xr-xlua/pml68/configs/settings/clangd.lua5
-rwxr-xr-xlua/pml68/configs/settings/emmet_ls.lua3
-rwxr-xr-xlua/pml68/configs/settings/jsonls.lua8
-rw-r--r--lua/pml68/configs/settings/lua_ls.lua19
-rwxr-xr-xlua/pml68/configs/settings/pyright.lua3
-rwxr-xr-xlua/pml68/configs/settings/rust_analyzer.lua10
-rw-r--r--lua/pml68/configs/telescope.lua7
9 files changed, 127 insertions, 0 deletions
diff --git a/lua/pml68/configs/lspconfig.lua b/lua/pml68/configs/lspconfig.lua
new file mode 100644
index 0000000..12aacf8
--- /dev/null
+++ b/lua/pml68/configs/lspconfig.lua
@@ -0,0 +1,33 @@
+local capabilities = require("cmp_nvim_lsp").default_capabilities()
+
+local lspconfig = require("lspconfig")
+
+local servers = {
+ "html",
+ "tsserver",
+ "cssls",
+ "svelte",
+ "bashls",
+ "clangd",
+ "pyright",
+ "emmet_ls",
+ "jsonls",
+ "rust_analyzer",
+ "dartls",
+ "kotlin_language_server",
+ "lua_ls",
+ "glsl_analyzer"
+}
+
+for _, server in pairs(servers) do
+ local opts = {
+ capabilities = capabilities,
+ }
+
+ local require_ok, conf_opts = pcall(require, "pml68.configs.settings." .. server)
+ if require_ok then
+ opts = vim.tbl_deep_extend("force", conf_opts, opts)
+ end
+
+ lspconfig[server].setup(opts)
+end
diff --git a/lua/pml68/configs/mason.lua b/lua/pml68/configs/mason.lua
new file mode 100644
index 0000000..fbc5af7
--- /dev/null
+++ b/lua/pml68/configs/mason.lua
@@ -0,0 +1,39 @@
+return {
+ ensure_installed = {
+ "bash-language-server",
+ "lua-language-server",
+ "clangd",
+ "codelldb",
+ "clang-format",
+ "jq",
+ "json-lsp",
+ "svelte-language-server",
+ "emmet-ls",
+ "html-lsp",
+ "css-lsp",
+ "typescript-language-server",
+ "pyright",
+ "rust-analyzer",
+ "glsl_analyzer",
+ "kotlin-language-server"
+ },
+ PATH = "skip",
+ ui = {
+ icons = {
+ package_pending = " ",
+ package_installed = "󰄳 ",
+ package_uninstalled = " 󰚌",
+ },
+ keymaps = {
+ toggle_server_expand = "<CR>",
+ install_server = "i",
+ update_server = "u",
+ check_server_version = "c",
+ update_all_servers = "U",
+ check_outdated_servers = "C",
+ uninstall_server = "X",
+ cancel_installation = "<C-c>",
+ },
+ },
+ max_concurrent_installers = 10,
+}
diff --git a/lua/pml68/configs/settings/clangd.lua b/lua/pml68/configs/settings/clangd.lua
new file mode 100755
index 0000000..21b4046
--- /dev/null
+++ b/lua/pml68/configs/settings/clangd.lua
@@ -0,0 +1,5 @@
+return {
+ on_attach = function(client, bufnr)
+ client.server_capabilities.signatureHelpProvider = false
+ end
+}
diff --git a/lua/pml68/configs/settings/emmet_ls.lua b/lua/pml68/configs/settings/emmet_ls.lua
new file mode 100755
index 0000000..18073fd
--- /dev/null
+++ b/lua/pml68/configs/settings/emmet_ls.lua
@@ -0,0 +1,3 @@
+return {
+ filetypes = { "html", "typescript", "javascript", "css", "sass", "scss", "less", "svelte" },
+}
diff --git a/lua/pml68/configs/settings/jsonls.lua b/lua/pml68/configs/settings/jsonls.lua
new file mode 100755
index 0000000..c6c0776
--- /dev/null
+++ b/lua/pml68/configs/settings/jsonls.lua
@@ -0,0 +1,8 @@
+return {
+ settings = {
+ json = {
+ schemas = require('schemastore').json.schemas(),
+ validate = { enable = true },
+ },
+ },
+}
diff --git a/lua/pml68/configs/settings/lua_ls.lua b/lua/pml68/configs/settings/lua_ls.lua
new file mode 100644
index 0000000..7db368c
--- /dev/null
+++ b/lua/pml68/configs/settings/lua_ls.lua
@@ -0,0 +1,19 @@
+return {
+ settings = {
+ Lua = {
+ diagnostics = {
+ globals = { "vim " },
+ },
+ workspace = {
+ library = {
+ [vim.fn.expand "$VIMRUNTIME/lua"] = true,
+ [vim.fn.expand "$VIMRUNTIME/lua/vim/lsp"] = true,
+ [vim.fn.stdpath "data" .. "/lazy/ui/nvchad_types"] = true,
+ [vim.fn.stdpath "data" .. "/lazy/lazy.nvim/lua/lazy"] = true,
+ },
+ maxPreload = 100000,
+ preloadFileSize = 10000,
+ }
+ }
+ }
+}
diff --git a/lua/pml68/configs/settings/pyright.lua b/lua/pml68/configs/settings/pyright.lua
new file mode 100755
index 0000000..da468c7
--- /dev/null
+++ b/lua/pml68/configs/settings/pyright.lua
@@ -0,0 +1,3 @@
+return {
+ single_file_support = true,
+}
diff --git a/lua/pml68/configs/settings/rust_analyzer.lua b/lua/pml68/configs/settings/rust_analyzer.lua
new file mode 100755
index 0000000..e89b07f
--- /dev/null
+++ b/lua/pml68/configs/settings/rust_analyzer.lua
@@ -0,0 +1,10 @@
+return {
+ filetypes = {"rust"},
+ settings = {
+ ['rust-analyzer'] = {
+ cargo = {
+ allFeatures = true,
+ },
+ },
+ },
+}
diff --git a/lua/pml68/configs/telescope.lua b/lua/pml68/configs/telescope.lua
new file mode 100644
index 0000000..54ddb0e
--- /dev/null
+++ b/lua/pml68/configs/telescope.lua
@@ -0,0 +1,7 @@
+local builtin = require("telescope.builtin")
+vim.keymap.set('n', '<leader>ff', builtin.find_files, {})
+vim.keymap.set('n', '<leader>fw', builtin.live_grep, {})
+vim.keymap.set('n', '<leader>fb', builtin.buffers, {})
+vim.keymap.set('n', '<leader>fh', builtin.help_tags, {})
+vim.keymap.set('n', '<leader>fz', builtin.current_buffer_fuzzy_find, {})
+vim.keymap.set('n', '<leader>fg', builtin.git_files, {})