From 0f458a04688d71d194fc104351f8cda5aff936af Mon Sep 17 00:00:00 2001 From: Christian Chiarulli Date: Mon, 30 Aug 2021 00:59:23 -0400 Subject: onedarker colorscheme --- lua/config/defaults.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index 9bd1bdd8..4f538dbb 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -8,7 +8,7 @@ vim.cmd [[ set spellfile=~/.config/lvim/spell/en.utf-8.add ]] lvim = { leader = "space", - colorscheme = "spacegray", + colorscheme = "onedarker", line_wrap_cursor_movement = true, transparent_window = false, format_on_save = true, -- cgit v1.2.3 From bc5b315e534ac4c15af50edc5890fe328b8825d3 Mon Sep 17 00:00:00 2001 From: "hui.liu" Date: Mon, 30 Aug 2021 20:48:17 +0800 Subject: Setup tailwindcss language server (#1376) --- lua/config/defaults.lua | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index 4f538dbb..eb8726fa 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -948,15 +948,15 @@ lvim.lang = { }, }, tailwindcss = { - active = false, - filetypes = { - "html", - "css", - "scss", - "javascript", - "javascriptreact", - "typescript", - "typescriptreact", + lsp = { + active = false, + provider = "tailwindcss", + setup = { + cmd = { + DATA_PATH .. "/lspinstall/tailwindcss/tailwindcss-intellisense.sh", + "--stdio", + }, + }, }, }, terraform = { -- cgit v1.2.3 From ce7522095d1f9c3730db2d9793ed055bdde92bef Mon Sep 17 00:00:00 2001 From: Abouzar Parvan Date: Mon, 30 Aug 2021 19:04:04 +0430 Subject: update tailwindcss to match lspinstall (#1427) --- lua/config/defaults.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index eb8726fa..4f93f924 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -953,7 +953,7 @@ lvim.lang = { provider = "tailwindcss", setup = { cmd = { - DATA_PATH .. "/lspinstall/tailwindcss/tailwindcss-intellisense.sh", + DATA_PATH .. "/lspinstall/tailwindcss/node_modules/.bin/tailwindcss-language-server", "--stdio", }, }, -- cgit v1.2.3 From 92ee9552e90bef282218069f4d74dd87d77b4fcd Mon Sep 17 00:00:00 2001 From: Abouzar Parvan Date: Tue, 31 Aug 2021 22:18:01 +0430 Subject: better vue support (#1438) --- lua/config/defaults.lua | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index 4f93f924..9aa60e9a 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -1077,6 +1077,27 @@ lvim.lang = { cmd = { DATA_PATH .. "/lspinstall/vue/node_modules/.bin/vls", }, + root_dir = function(fname) + local util = require "lspconfig/util" + return util.root_pattern "package.json"(fname) or util.root_pattern "vue.config.js"(fname) or vim.fn.getcwd() + end, + init_options = { + config = { + vetur = { + completion = { + autoImport = true, + tagCasing = "kebab", + useScaffoldSnippets = true, + }, + useWorkspaceDependencies = true, + validation = { + script = true, + style = true, + template = true, + }, + }, + }, + }, }, }, }, -- cgit v1.2.3 From f82ffdca1fbd7733b42e07b3d68daac4f041985e Mon Sep 17 00:00:00 2001 From: Craig Anderson <1877372+CDA0@users.noreply.github.com> Date: Fri, 3 Sep 2021 21:11:14 +0100 Subject: Add support for bicep (#1451) --- lua/config/defaults.lua | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index 9aa60e9a..d60938b8 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -134,6 +134,20 @@ lvim.lang = { }, }, }, + bicep = { + formatters = {}, + linters = {}, + lsp = { + provider = "bicep", + setup = { + cmd = { + "dotnet", + DATA_PATH .. "/lspinstall/bicep/Bicep.LangServer.dll", + }, + filetypes = { "bicep" }, + }, + }, + }, c = { formatters = { -- { -- cgit v1.2.3 From cc6685e397a2effa6ea8346a58919d2c38c46293 Mon Sep 17 00:00:00 2001 From: Christian Chiarulli Date: Sun, 5 Sep 2021 18:13:23 -0400 Subject: feat: solidity language support with solang --- lua/config/defaults.lua | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index d60938b8..17712e06 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -698,6 +698,16 @@ lvim.lang = { setup = {}, }, }, + solidity = { + formatters = {}, + linters = {}, + lsp = { + provider = "solang", + setup = { + cmd = { "solang", "--language-server" }, + }, + }, + }, sql = { formatters = { -- { -- cgit v1.2.3 From 5cdd742354c9339a24076d81c33c2620eb5e84ee Mon Sep 17 00:00:00 2001 From: Luong Vo Date: Tue, 7 Sep 2021 00:11:54 +0700 Subject: fix not being able to add linters and formatters to docker (#1486) --- lua/config/defaults.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index 17712e06..0f70a281 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -348,7 +348,7 @@ lvim.lang = { }, }, }, - docker = { + dockerfile = { formatters = {}, linters = {}, lsp = { -- cgit v1.2.3 From 9ece2e5369de46962422837be3dce3b8e889805d Mon Sep 17 00:00:00 2001 From: Christian Chiarulli Date: Tue, 7 Sep 2021 19:23:14 -0400 Subject: feat: compe -> cmp (#1496) --- lua/config/defaults.lua | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index 0f70a281..24455819 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -37,30 +37,30 @@ lvim = { lsp = { completion = { item_kind = { - "  (Text) ", + "  (Text) ", "  (Method)", "  (Function)", "  (Constructor)", - " ﴲ (Field)", - "[] (Variable)", + "  (Field)", + "  (Variable)", "  (Class)", " ﰮ (Interface)", "  (Module)", - " 襁 (Property)", - "  (Unit)", + "  (Property)", + " 塞 (Unit)", "  (Value)", " 練 (Enum)", "  (Keyword)", "  (Snippet)", "  (Color)", - "  (File)", + "  (File)", "  (Reference)", "  (Folder)", "  (EnumMember)", " ﲀ (Constant)", - " ﳤ (Struct)", + "  (Struct)", "  (Event)", - "  (Operator)", + "  (Operator)", "  (TypeParameter)", }, }, -- cgit v1.2.3 From 23f535666ee5ce2690f823bb2cb88b843d329763 Mon Sep 17 00:00:00 2001 From: Abouzar Parvan Date: Fri, 10 Sep 2021 13:16:23 +0430 Subject: bugfix: remove double quotes from scala config --- lua/config/defaults.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index 24455819..75df99c3 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -916,7 +916,7 @@ lvim.lang = { -- args = {}, -- }, }, - linters = { "" }, + linters = {}, lsp = { provider = "metals", setup = {}, -- cgit v1.2.3 From 38b0c3d860d10515002fdb27db7e1187ce110b1d Mon Sep 17 00:00:00 2001 From: kylo252 <59826753+kylo252@users.noreply.github.com> Date: Mon, 13 Sep 2021 11:10:22 +0200 Subject: fix: remove unused variables (#1532) --- lua/config/defaults.lua | 2 -- lua/config/settings.lua | 2 +- 2 files changed, 1 insertion(+), 3 deletions(-) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index 75df99c3..d70d78c5 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -2,8 +2,6 @@ local home_dir = vim.loop.os_homedir() CONFIG_PATH = home_dir .. "/.local/share/lunarvim/lvim" DATA_PATH = vim.fn.stdpath "data" CACHE_PATH = vim.fn.stdpath "cache" -TERMINAL = vim.fn.expand "$TERMINAL" -USER = vim.fn.expand "$USER" vim.cmd [[ set spellfile=~/.config/lvim/spell/en.utf-8.add ]] lvim = { diff --git a/lua/config/settings.lua b/lua/config/settings.lua index ba71a922..36e31193 100644 --- a/lua/config/settings.lua +++ b/lua/config/settings.lua @@ -45,7 +45,7 @@ M.load_options = function() spelllang = "en", scrolloff = 8, -- is one of my fav sidescrolloff = 8, - } --- VIM ONLY COMMANDS ---cmd "filetype plugin on"cmd('let &titleold="' .. TERMINAL .. '"')cmd "set inccommand=split"cmd "set iskeyword+=-" + } --- SETTINGS --- -- cgit v1.2.3 From 8eed75d67f9cbcefb91c4cb5aac0ffd013be25cc Mon Sep 17 00:00:00 2001 From: kylo252 <59826753+kylo252@users.noreply.github.com> Date: Mon, 13 Sep 2021 11:28:15 +0200 Subject: refactor: use more flexible paths (#1381) --- lua/config/defaults.lua | 96 ++++++++++++++++++++++++------------------------- lua/config/init.lua | 21 ++++++----- lua/config/settings.lua | 4 +-- 3 files changed, 59 insertions(+), 62 deletions(-) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index d70d78c5..a4ef7125 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -1,8 +1,7 @@ local home_dir = vim.loop.os_homedir() -CONFIG_PATH = home_dir .. "/.local/share/lunarvim/lvim" -DATA_PATH = vim.fn.stdpath "data" -CACHE_PATH = vim.fn.stdpath "cache" -vim.cmd [[ set spellfile=~/.config/lvim/spell/en.utf-8.add ]] +local utils = require "utils" +-- FIXME: stop using hard-coded paths for LspInstall +local ls_install_prefix = vim.fn.stdpath "data" .. "/lspinstall" lvim = { leader = "space", @@ -10,8 +9,8 @@ lvim = { line_wrap_cursor_movement = true, transparent_window = false, format_on_save = true, - vsnip_dir = home_dir .. "/.config/snippets", - database = { save_location = "~/.config/lunarvim_db", auto_execute = 1 }, + vsnip_dir = utils.join_paths(home_dir, ".config", "snippets"), + database = { save_location = utils.join_paths(home_dir, ".config", "lunarvim_db"), auto_execute = 1 }, keys = {}, builtin = {}, @@ -140,7 +139,7 @@ lvim.lang = { setup = { cmd = { "dotnet", - DATA_PATH .. "/lspinstall/bicep/Bicep.LangServer.dll", + ls_install_prefix .. "/bicep/Bicep.LangServer.dll", }, filetypes = { "bicep" }, }, @@ -162,7 +161,7 @@ lvim.lang = { provider = "clangd", setup = { cmd = { - DATA_PATH .. "/lspinstall/cpp/clangd/bin/clangd", + ls_install_prefix .. "/cpp/clangd/bin/clangd", "--background-index", "--header-insertion=never", "--cross-file-rename", @@ -188,7 +187,7 @@ lvim.lang = { provider = "clangd", setup = { cmd = { - DATA_PATH .. "/lspinstall/cpp/clangd/bin/clangd", + ls_install_prefix .. "/cpp/clangd/bin/clangd", "--background-index", "--header-insertion=never", "--cross-file-rename", @@ -229,7 +228,7 @@ lvim.lang = { provider = "omnisharp", setup = { cmd = { - DATA_PATH .. "/lspinstall/csharp/omnisharp/run", + ls_install_prefix .. "/csharp/omnisharp/run", "--languageserver", "--hostPID", tostring(vim.fn.getpid()), @@ -249,7 +248,7 @@ lvim.lang = { provider = "cmake", setup = { cmd = { - DATA_PATH .. "/lspinstall/cmake/venv/bin/cmake-language-server", + ls_install_prefix .. "/cmake/venv/bin/cmake-language-server", }, }, }, @@ -261,7 +260,7 @@ lvim.lang = { provider = "clojure_lsp", setup = { cmd = { - DATA_PATH .. "/lspinstall/clojure/clojure-lsp", + ls_install_prefix .. "/clojure/clojure-lsp", }, }, }, @@ -283,7 +282,7 @@ lvim.lang = { setup = { cmd = { "node", - DATA_PATH .. "/lspinstall/css/vscode-css/css-language-features/server/dist/node/cssServerMain.js", + ls_install_prefix .. "/css/vscode-css/css-language-features/server/dist/node/cssServerMain.js", "--stdio", }, }, @@ -306,7 +305,7 @@ lvim.lang = { setup = { cmd = { "node", - DATA_PATH .. "/lspinstall/css/vscode-css/css-language-features/server/dist/node/cssServerMain.js", + ls_install_prefix .. "/css/vscode-css/css-language-features/server/dist/node/cssServerMain.js", "--stdio", }, }, @@ -353,7 +352,7 @@ lvim.lang = { provider = "dockerls", setup = { cmd = { - DATA_PATH .. "/lspinstall/dockerfile/node_modules/.bin/docker-langserver", + ls_install_prefix .. "/dockerfile/node_modules/.bin/docker-langserver", "--stdio", }, }, @@ -371,7 +370,7 @@ lvim.lang = { provider = "elixirls", setup = { cmd = { - DATA_PATH .. "/lspinstall/elixir/elixir-ls/language_server.sh", + ls_install_prefix .. "/elixir/elixir-ls/language_server.sh", }, }, }, @@ -388,13 +387,13 @@ lvim.lang = { provider = "elmls", setup = { cmd = { - DATA_PATH .. "/lspinstall/elm/node_modules/.bin/elm-language-server", + ls_install_prefix .. "/elm/node_modules/.bin/elm-language-server", }, -- init_options = { -- elmAnalyseTrigger = "change", - -- elmFormatPath = DATA_PATH .. "/lspinstall/elm/node_modules/.bin/elm-format", - -- elmPath = DATA_PATH .. "/lspinstall/elm/node_modules/.bin/", - -- elmTestPath = DATA_PATH .. "/lspinstall/elm/node_modules/.bin/elm-test", + -- elmFormatPath = ls_install_prefix .. "/elm/node_modules/.bin/elm-format", + -- elmPath = ls_install_prefix .. "/elm/node_modules/.bin/", + -- elmTestPath = ls_install_prefix .. "/elm/node_modules/.bin/elm-test", -- }, }, }, @@ -437,7 +436,7 @@ lvim.lang = { provider = "fortls", setup = { cmd = { - DATA_PATH .. "/lspinstall/fortran/venv/bin/fortls", + ls_install_prefix .. "/fortran/venv/bin/fortls", }, }, }, @@ -462,7 +461,7 @@ lvim.lang = { provider = "gopls", setup = { cmd = { - DATA_PATH .. "/lspinstall/go/gopls", + ls_install_prefix .. "/go/gopls", }, }, }, @@ -488,7 +487,7 @@ lvim.lang = { lsp = { provider = "hls", setup = { - cmd = { DATA_PATH .. "/lspinstall/haskell/hls" }, + cmd = { ls_install_prefix .. "/haskell/hls" }, }, }, }, @@ -509,7 +508,7 @@ lvim.lang = { setup = { cmd = { "node", - DATA_PATH .. "/lspinstall/html/vscode-html/html-language-features/server/dist/node/htmlServerMain.js", + ls_install_prefix .. "/html/vscode-html/html-language-features/server/dist/node/htmlServerMain.js", "--stdio", }, }, @@ -530,7 +529,7 @@ lvim.lang = { lsp = { provider = "jdtls", setup = { - cmd = { DATA_PATH .. "/lspinstall/java/jdtls.sh" }, + cmd = { ls_install_prefix .. "/java/jdtls.sh" }, }, }, }, @@ -555,7 +554,7 @@ lvim.lang = { setup = { cmd = { "node", - DATA_PATH .. "/lspinstall/json/vscode-json/json-language-features/server/dist/node/jsonServerMain.js", + ls_install_prefix .. "/json/vscode-json/json-language-features/server/dist/node/jsonServerMain.js", "--stdio", }, settings = { @@ -589,8 +588,7 @@ lvim.lang = { "julia", "--startup-file=no", "--history-file=no", - -- vim.fn.expand "~/.config/nvim/lua/lsp/julia/run.jl", - CONFIG_PATH .. "/utils/julia/run.jl", + -- self.runtime_dir .. "lvim/utils/julia/run.jl", }, }, }, @@ -602,7 +600,7 @@ lvim.lang = { provider = "kotlin_language_server", setup = { cmd = { - DATA_PATH .. "/lspinstall/kotlin/server/bin/kotlin-language-server", + ls_install_prefix .. "/kotlin/server/bin/kotlin-language-server", }, root_dir = function(fname) local util = require "lspconfig/util" @@ -639,9 +637,9 @@ lvim.lang = { provider = "sumneko_lua", setup = { cmd = { - DATA_PATH .. "/lspinstall/lua/sumneko-lua-language-server", + ls_install_prefix .. "/lua/sumneko-lua-language-server", "-E", - DATA_PATH .. "/lspinstall/lua/main.lua", + ls_install_prefix .. "/lua/main.lua", }, settings = { Lua = { @@ -658,7 +656,7 @@ lvim.lang = { workspace = { -- Make the server aware of Neovim runtime files library = { - [vim.fn.expand "~/.local/share/lunarvim/lvim/lua"] = true, + [require("utils").join_paths(get_runtime_dir(), "lvim", "lua")] = true, [vim.fn.expand "$VIMRUNTIME/lua"] = true, [vim.fn.expand "$VIMRUNTIME/lua/vim/lsp"] = true, }, @@ -733,7 +731,7 @@ lvim.lang = { provider = "intelephense", setup = { cmd = { - DATA_PATH .. "/lspinstall/php/node_modules/.bin/intelephense", + ls_install_prefix .. "/php/node_modules/.bin/intelephense", "--stdio", }, filetypes = { "php", "phtml" }, @@ -754,7 +752,7 @@ lvim.lang = { provider = "puppet", setup = { cmd = { - DATA_PATH .. "/lspinstall/puppet/puppet-editor-services/puppet-languageserver", + ls_install_prefix .. "/puppet/puppet-editor-services/puppet-languageserver", "--stdio", }, }, @@ -782,7 +780,7 @@ lvim.lang = { setup = { cmd = { -- TODO: - DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server", + ls_install_prefix .. "/typescript/node_modules/.bin/typescript-language-server", "--stdio", }, }, @@ -809,7 +807,7 @@ lvim.lang = { setup = { cmd = { -- TODO: - DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server", + ls_install_prefix .. "/typescript/node_modules/.bin/typescript-language-server", "--stdio", }, }, @@ -831,7 +829,7 @@ lvim.lang = { provider = "pyright", setup = { cmd = { - DATA_PATH .. "/lspinstall/python/node_modules/.bin/pyright-langserver", + ls_install_prefix .. "/python/node_modules/.bin/pyright-langserver", "--stdio", }, }, @@ -871,7 +869,7 @@ lvim.lang = { provider = "solargraph", setup = { cmd = { - DATA_PATH .. "/lspinstall/ruby/solargraph/solargraph", + ls_install_prefix .. "/ruby/solargraph/solargraph", "stdio", }, filetypes = { "ruby" }, @@ -902,7 +900,7 @@ lvim.lang = { provider = "rust_analyzer", setup = { cmd = { - DATA_PATH .. "/lspinstall/rust/rust-analyzer", + ls_install_prefix .. "/rust/rust-analyzer", }, }, }, @@ -932,7 +930,7 @@ lvim.lang = { provider = "bashls", setup = { cmd = { - DATA_PATH .. "/lspinstall/bash/node_modules/.bin/bash-language-server", + ls_install_prefix .. "/bash/node_modules/.bin/bash-language-server", "start", }, }, @@ -945,7 +943,7 @@ lvim.lang = { provider = "svelte", setup = { cmd = { - DATA_PATH .. "/lspinstall/svelte/node_modules/.bin/svelteserver", + ls_install_prefix .. "/svelte/node_modules/.bin/svelteserver", "--stdio", }, }, @@ -975,7 +973,7 @@ lvim.lang = { provider = "tailwindcss", setup = { cmd = { - DATA_PATH .. "/lspinstall/tailwindcss/node_modules/.bin/tailwindcss-language-server", + ls_install_prefix .. "/tailwindcss/node_modules/.bin/tailwindcss-language-server", "--stdio", }, }, @@ -993,7 +991,7 @@ lvim.lang = { provider = "terraformls", setup = { cmd = { - DATA_PATH .. "/lspinstall/terraform/terraform-ls", + ls_install_prefix .. "/terraform/terraform-ls", "serve", }, }, @@ -1005,7 +1003,7 @@ lvim.lang = { lsp = { provider = "texlab", setup = { - cmd = { DATA_PATH .. "/lspinstall/latex/texlab" }, + cmd = { ls_install_prefix .. "/latex/texlab" }, }, }, }, @@ -1030,7 +1028,7 @@ lvim.lang = { setup = { cmd = { -- TODO: - DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server", + ls_install_prefix .. "/typescript/node_modules/.bin/typescript-language-server", "--stdio", }, }, @@ -1058,7 +1056,7 @@ lvim.lang = { setup = { cmd = { -- TODO: - DATA_PATH .. "/lspinstall/typescript/node_modules/.bin/typescript-language-server", + ls_install_prefix .. "/typescript/node_modules/.bin/typescript-language-server", "--stdio", }, }, @@ -1071,7 +1069,7 @@ lvim.lang = { provider = "vimls", setup = { cmd = { - DATA_PATH .. "/lspinstall/vim/node_modules/.bin/vim-language-server", + ls_install_prefix .. "/vim/node_modules/.bin/vim-language-server", "--stdio", }, }, @@ -1097,7 +1095,7 @@ lvim.lang = { provider = "vuels", setup = { cmd = { - DATA_PATH .. "/lspinstall/vue/node_modules/.bin/vls", + ls_install_prefix .. "/vue/node_modules/.bin/vls", }, root_dir = function(fname) local util = require "lspconfig/util" @@ -1139,7 +1137,7 @@ lvim.lang = { provider = "yamlls", setup = { cmd = { - DATA_PATH .. "/lspinstall/yaml/node_modules/.bin/yaml-language-server", + ls_install_prefix .. "/yaml/node_modules/.bin/yaml-language-server", "--stdio", }, }, diff --git a/lua/config/init.lua b/lua/config/init.lua index 332460d3..c09617bc 100644 --- a/lua/config/init.lua +++ b/lua/config/init.lua @@ -1,21 +1,14 @@ -local home_dir = vim.loop.os_homedir() -local M = { - path = string.format("%s/.config/lvim/config.lua", home_dir), -} +local M = {} --- Initialize lvim default configuration -- Define lvim global variable -function M:init() +function M:init(opts) + opts = opts or {} + self.path = opts.path local utils = require "utils" require "config.defaults" - local builtins = require "core.builtins" - builtins.config(self) - - local settings = require "config.settings" - settings.load_options() - -- Fallback config.lua to lv-config.lua if not utils.is_file(self.path) then local lv_config = self.path:gsub("config.lua$", "lv-config.lua") @@ -23,6 +16,12 @@ function M:init() self.path = lv_config end + + local builtins = require "core.builtins" + builtins.config(self) + + local settings = require "config.settings" + settings.load_options() end --- Override the configuration with a user provided one diff --git a/lua/config/settings.lua b/lua/config/settings.lua index 36e31193..90042c4f 100644 --- a/lua/config/settings.lua +++ b/lua/config/settings.lua @@ -1,5 +1,5 @@ local M = {} - +local utils = require "utils" M.load_options = function() local default_options = { backup = false, -- creates a backup file @@ -28,7 +28,7 @@ M.load_options = function() timeoutlen = 100, -- time to wait for a mapped sequence to complete (in milliseconds) title = true, -- set the title of window to the value of the titlestring -- opt.titlestring = "%<%F%=%l/%L - nvim" -- what the title of the window will be set to - undodir = CACHE_PATH .. "/undo", -- set an undo directory + undodir = utils.join_paths(get_cache_dir(), "undo"), -- set an undo directory undofile = true, -- enable persistent undo updatetime = 300, -- faster completion writebackup = false, -- if a file is being edited by another program (or was written to file while editing with another program), it is not allowed to be edited -- cgit v1.2.3 From eab0369ae8688b23946a8a9e6dab6061ec0c554a Mon Sep 17 00:00:00 2001 From: Luong Vo Date: Fri, 17 Sep 2021 13:34:03 +0700 Subject: fix: missing default configuration for update_in_insert (#1550) --- lua/config/defaults.lua | 1 + 1 file changed, 1 insertion(+) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index a4ef7125..e27d8077 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -75,6 +75,7 @@ lvim = { prefix = "", spacing = 0, }, + update_in_insert = false, underline = true, severity_sort = true, }, -- cgit v1.2.3 From ddd86dd2b95f26ef0477e0c2c3641f49f14e4fba Mon Sep 17 00:00:00 2001 From: Abouzar Parvan Date: Thu, 23 Sep 2021 20:00:20 +0330 Subject: Fix the lua goto definition bug and add better common capabilities (#1604) --- lua/config/defaults.lua | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index e27d8077..a67a9c53 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -644,12 +644,6 @@ lvim.lang = { }, settings = { Lua = { - runtime = { - -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim) - version = "LuaJIT", - -- Setup your lua path - path = vim.split(package.path, ";"), - }, diagnostics = { -- Get the language server to recognize the `vim` global globals = { "vim", "lvim" }, @@ -662,7 +656,7 @@ lvim.lang = { [vim.fn.expand "$VIMRUNTIME/lua/vim/lsp"] = true, }, maxPreload = 100000, - preloadFileSize = 1000, + preloadFileSize = 10000, }, }, }, -- cgit v1.2.3 From d01ba08eaec1640ac2d038893525b3ba0af25813 Mon Sep 17 00:00:00 2001 From: kylo252 <59826753+kylo252@users.noreply.github.com> Date: Sun, 3 Oct 2021 16:13:46 +0200 Subject: refactor: auto-generate language configuration (#1584) Refactor the monolithic `lvim.lang` design into a more modular approach. IMPORTANT: run `:LvimUpdate` in order to generate the new ftplugin template files. --- lua/config/defaults.lua | 1164 +---------------------------------------------- lua/config/init.lua | 100 ++++ 2 files changed, 101 insertions(+), 1163 deletions(-) (limited to 'lua/config') diff --git a/lua/config/defaults.lua b/lua/config/defaults.lua index a67a9c53..f030234d 100644 --- a/lua/config/defaults.lua +++ b/lua/config/defaults.lua @@ -1,7 +1,5 @@ local home_dir = vim.loop.os_homedir() local utils = require "utils" --- FIXME: stop using hard-coded paths for LspInstall -local ls_install_prefix = vim.fn.stdpath "data" .. "/lspinstall" lvim = { leader = "space", @@ -30,1170 +28,10 @@ lvim = { }, }, }, - - lsp = { - completion = { - item_kind = { - "  (Text) ", - "  (Method)", - "  (Function)", - "  (Constructor)", - "  (Field)", - "  (Variable)", - "  (Class)", - " ﰮ (Interface)", - "  (Module)", - "  (Property)", - " 塞 (Unit)", - "  (Value)", - " 練 (Enum)", - "  (Keyword)", - "  (Snippet)", - "  (Color)", - "  (File)", - "  (Reference)", - "  (Folder)", - "  (EnumMember)", - " ﲀ (Constant)", - "  (Struct)", - "  (Event)", - "  (Operator)", - "  (TypeParameter)", - }, - }, - diagnostics = { - signs = { - active = true, - values = { - { name = "LspDiagnosticsSignError", text = "" }, - { name = "LspDiagnosticsSignWarning", text = "" }, - { name = "LspDiagnosticsSignHint", text = "" }, - { name = "LspDiagnosticsSignInformation", text = "" }, - }, - }, - virtual_text = { - prefix = "", - spacing = 0, - }, - update_in_insert = false, - underline = true, - severity_sort = true, - }, - override = {}, - document_highlight = true, - popup_border = "single", - on_attach_callback = nil, - on_init_callback = nil, - null_ls = { - setup = {}, - }, - }, - plugins = { -- use config.lua for this not put here }, autocommands = {}, -} - -local schemas = nil -local status_ok, jsonls_settings = pcall(require, "nlspsettings.jsonls") -if status_ok then - schemas = jsonls_settings.get_default_schemas() -end - --- TODO move all of this into lang specific files, only require when using -lvim.lang = { - asm = { - formatters = { - -- { - -- exe = "asmfmt", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "", - setup = {}, - }, - }, - beancount = { - formatters = { - -- { - -- exe = "bean_format", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "beancount", - setup = { - cmd = { "beancount-langserver" }, - }, - }, - }, - bicep = { - formatters = {}, - linters = {}, - lsp = { - provider = "bicep", - setup = { - cmd = { - "dotnet", - ls_install_prefix .. "/bicep/Bicep.LangServer.dll", - }, - filetypes = { "bicep" }, - }, - }, - }, - c = { - formatters = { - -- { - -- exe = "clang_format", - -- args = {}, - -- }, - -- { - -- exe = "uncrustify", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "clangd", - setup = { - cmd = { - ls_install_prefix .. "/cpp/clangd/bin/clangd", - "--background-index", - "--header-insertion=never", - "--cross-file-rename", - "--clang-tidy", - "--clang-tidy-checks=-*,llvm-*,clang-analyzer-*", - }, - }, - }, - }, - cpp = { - formatters = { - -- { - -- exe = "clang_format", - -- args = {}, - -- }, - -- { - -- exe = "uncrustify", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "clangd", - setup = { - cmd = { - ls_install_prefix .. "/cpp/clangd/bin/clangd", - "--background-index", - "--header-insertion=never", - "--cross-file-rename", - "--clang-tidy", - "--clang-tidy-checks=-*,llvm-*,clang-analyzer-*", - }, - }, - }, - }, - crystal = { - formatters = { - -- { - -- exe = "crystal_format", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "crystalline", - setup = { - cmd = { "crystalline" }, - }, - }, - }, - cs = { - formatters = { - -- { - -- exe = "clang_format ", - -- args = {}, - -- }, - -- { - -- exe = "uncrustify", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "omnisharp", - setup = { - cmd = { - ls_install_prefix .. "/csharp/omnisharp/run", - "--languageserver", - "--hostPID", - tostring(vim.fn.getpid()), - }, - }, - }, - }, - cmake = { - formatters = { - -- { - -- exe = "cmake_format", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "cmake", - setup = { - cmd = { - ls_install_prefix .. "/cmake/venv/bin/cmake-language-server", - }, - }, - }, - }, - clojure = { - formatters = {}, - linters = {}, - lsp = { - provider = "clojure_lsp", - setup = { - cmd = { - ls_install_prefix .. "/clojure/clojure-lsp", - }, - }, - }, - }, - css = { - formatters = { - -- { - -- exe = "prettier", - -- args = {}, - -- }, - -- { - -- exe = "prettierd", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "cssls", - setup = { - cmd = { - "node", - ls_install_prefix .. "/css/vscode-css/css-language-features/server/dist/node/cssServerMain.js", - "--stdio", - }, - }, - }, - }, - less = { - formatters = { - -- { - -- exe = "prettier", - -- args = {}, - -- }, - -- { - -- exe = "prettierd", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "cssls", - setup = { - cmd = { - "node", - ls_install_prefix .. "/css/vscode-css/css-language-features/server/dist/node/cssServerMain.js", - "--stdio", - }, - }, - }, - }, - d = { - formatters = { - -- { - -- exe = "dfmt", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "serve_d", - setup = { - cmd = { "serve-d" }, - }, - }, - }, - dart = { - formatters = { - -- { - -- exe = "dart_format", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "dartls", - setup = { - cmd = { - "dart", - "/usr/lib/dart/bin/snapshots/analysis_server.dart.snapshot", - "--lsp", - }, - }, - }, - }, - dockerfile = { - formatters = {}, - linters = {}, - lsp = { - provider = "dockerls", - setup = { - cmd = { - ls_install_prefix .. "/dockerfile/node_modules/.bin/docker-langserver", - "--stdio", - }, - }, - }, - }, - elixir = { - formatters = { - -- { - -- exe = "mix", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "elixirls", - setup = { - cmd = { - ls_install_prefix .. "/elixir/elixir-ls/language_server.sh", - }, - }, - }, - }, - elm = { - formatters = { - -- { - -- exe = "elm_format", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "elmls", - setup = { - cmd = { - ls_install_prefix .. "/elm/node_modules/.bin/elm-language-server", - }, - -- init_options = { - -- elmAnalyseTrigger = "change", - -- elmFormatPath = ls_install_prefix .. "/elm/node_modules/.bin/elm-format", - -- elmPath = ls_install_prefix .. "/elm/node_modules/.bin/", - -- elmTestPath = ls_install_prefix .. "/elm/node_modules/.bin/elm-test", - -- }, - }, - }, - }, - erlang = { - formatters = { - -- { - -- exe = "erlfmt", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "erlangls", - setup = { - cmd = { - "erlang_ls", - }, - }, - }, - }, - emmet = { active = false }, - fish = { - formatters = { - -- { - -- exe = "fish_indent", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "", - setup = {}, - }, - }, - fortran = { - formatters = {}, - linters = {}, - lsp = { - provider = "fortls", - setup = { - cmd = { - ls_install_prefix .. "/fortran/venv/bin/fortls", - }, - }, - }, - }, - go = { - formatters = { - -- { - -- exe = "gofmt", - -- args = {}, - -- }, - -- { - -- exe = "goimports", - -- args = {}, - -- }, - -- { - -- exe = "gofumpt", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "gopls", - setup = { - cmd = { - ls_install_prefix .. "/go/gopls", - }, - }, - }, - }, - graphql = { - formatters = {}, - linters = {}, - lsp = { - provider = "graphql", - setup = { - cmd = { - "graphql-lsp", - "server", - "-m", - "stream", - }, - }, - }, - }, - haskell = { - formatters = {}, - linters = {}, - lsp = { - provider = "hls", - setup = { - cmd = { ls_install_prefix .. "/haskell/hls" }, - }, - }, - }, - html = { - formatters = { - -- { - -- exe = "prettier", - -- args = {}, - -- }, - -- { - -- exe = "prettierd", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "html", - setup = { - cmd = { - "node", - ls_install_prefix .. "/html/vscode-html/html-language-features/server/dist/node/htmlServerMain.js", - "--stdio", - }, - }, - }, - }, - java = { - formatters = { - -- { - -- exe = "clang_format", - -- args = {}, - -- }, - -- { - -- exe = "uncrustify", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "jdtls", - setup = { - cmd = { ls_install_prefix .. "/java/jdtls.sh" }, - }, - }, - }, - json = { - formatters = { - -- { - -- exe = "json_tool", - -- args = {}, - -- }, - -- { - -- exe = "prettier", - -- args = {}, - -- }, - -- { - -- exe = "prettierd", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "jsonls", - setup = { - cmd = { - "node", - ls_install_prefix .. "/json/vscode-json/json-language-features/server/dist/node/jsonServerMain.js", - "--stdio", - }, - settings = { - json = { - schemas = schemas, - -- = { - -- { - -- fileMatch = { "package.json" }, - -- url = "https://json.schemastore.org/package.json", - -- }, - -- }, - }, - }, - commands = { - Format = { - function() - vim.lsp.buf.range_formatting({}, { 0, 0 }, { vim.fn.line "$", 0 }) - end, - }, - }, - }, - }, - }, - julia = { - formatters = {}, - linters = {}, - lsp = { - provider = "julials", - setup = { - { - "julia", - "--startup-file=no", - "--history-file=no", - -- self.runtime_dir .. "lvim/utils/julia/run.jl", - }, - }, - }, - }, - kotlin = { - formatters = {}, - linters = {}, - lsp = { - provider = "kotlin_language_server", - setup = { - cmd = { - ls_install_prefix .. "/kotlin/server/bin/kotlin-language-server", - }, - root_dir = function(fname) - local util = require "lspconfig/util" - - local root_files = { - "settings.gradle", -- Gradle (multi-project) - "settings.gradle.kts", -- Gradle (multi-project) - "build.xml", -- Ant - "pom.xml", -- Maven - } - - local fallback_root_files = { - "build.gradle", -- Gradle - "build.gradle.kts", -- Gradle - } - return util.root_pattern(unpack(root_files))(fname) or util.root_pattern(unpack(fallback_root_files))(fname) - end, - }, - }, - }, - lua = { - formatters = { - -- { - -- exe = "stylua", - -- args = {}, - -- }, - -- { - -- exe = "lua_format", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "sumneko_lua", - setup = { - cmd = { - ls_install_prefix .. "/lua/sumneko-lua-language-server", - "-E", - ls_install_prefix .. "/lua/main.lua", - }, - settings = { - Lua = { - diagnostics = { - -- Get the language server to recognize the `vim` global - globals = { "vim", "lvim" }, - }, - workspace = { - -- Make the server aware of Neovim runtime files - library = { - [require("utils").join_paths(get_runtime_dir(), "lvim", "lua")] = true, - [vim.fn.expand "$VIMRUNTIME/lua"] = true, - [vim.fn.expand "$VIMRUNTIME/lua/vim/lsp"] = true, - }, - maxPreload = 100000, - preloadFileSize = 10000, - }, - }, - }, - }, - }, - }, - nginx = { - formatters = { - -- { - -- exe = "nginx_beautifier", - -- args = { - -- provider = "", - -- setup = {}, - -- }, - -- }, - }, - linters = {}, - lsp = {}, - }, - perl = { - formatters = { - -- { - -- exe = "perltidy", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "", - setup = {}, - }, - }, - solidity = { - formatters = {}, - linters = {}, - lsp = { - provider = "solang", - setup = { - cmd = { "solang", "--language-server" }, - }, - }, - }, - sql = { - formatters = { - -- { - -- exe = "sqlformat", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "sqls", - setup = { - cmd = { "sqls" }, - }, - }, - }, - php = { - formatters = { - -- { - -- exe = "phpcbf", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "intelephense", - setup = { - cmd = { - ls_install_prefix .. "/php/node_modules/.bin/intelephense", - "--stdio", - }, - filetypes = { "php", "phtml" }, - settings = { - intelephense = { - environment = { - phpVersion = "7.4", - }, - }, - }, - }, - }, - }, - puppet = { - formatters = {}, - linters = {}, - lsp = { - provider = "puppet", - setup = { - cmd = { - ls_install_prefix .. "/puppet/puppet-editor-services/puppet-languageserver", - "--stdio", - }, - }, - }, - }, - javascript = { - formatters = { - -- { - -- exe = "prettier", - -- args = {}, - -- }, - -- { - -- exe = "prettier_d_slim", - -- args = {}, - -- }, - -- { - -- exe = "prettierd", - -- args = {}, - -- }, - }, - -- @usage can be {"eslint"} or {"eslint_d"} - linters = {}, - lsp = { - provider = "tsserver", - setup = { - cmd = { - -- TODO: - ls_install_prefix .. "/typescript/node_modules/.bin/typescript-language-server", - "--stdio", - }, - }, - }, - }, - javascriptreact = { - formatters = { - -- { - -- exe = "prettier", - -- args = {}, - -- }, - -- { - -- exe = "prettier_d_slim", - -- args = {}, - -- }, - -- { - -- exe = "prettierd", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "tsserver", - setup = { - cmd = { - -- TODO: - ls_install_prefix .. "/typescript/node_modules/.bin/typescript-language-server", - "--stdio", - }, - }, - }, - }, - python = { - formatters = { - -- { - -- exe = "yapf", - -- args = {}, - -- }, - -- { - -- exe = "isort", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "pyright", - setup = { - cmd = { - ls_install_prefix .. "/python/node_modules/.bin/pyright-langserver", - "--stdio", - }, - }, - }, - }, - -- R -e 'install.packages("formatR",repos = "http://cran.us.r-project.org")' - -- R -e 'install.packages("readr",repos = "http://cran.us.r-project.org")' - r = { - formatters = { - -- { - -- exe = "format_r", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "r_language_server", - setup = { - cmd = { - "R", - "--slave", - "-e", - "languageserver::run()", - }, - }, - }, - }, - ruby = { - formatters = { - -- { - -- exe = "rufo", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "solargraph", - setup = { - cmd = { - ls_install_prefix .. "/ruby/solargraph/solargraph", - "stdio", - }, - filetypes = { "ruby" }, - init_options = { - formatting = true, - }, - root_dir = function(fname) - local util = require("lspconfig").util - return util.root_pattern("Gemfile", ".git")(fname) - end, - settings = { - solargraph = { - diagnostics = true, - }, - }, - }, - }, - }, - rust = { - formatters = { - -- { - -- exe = "rustfmt", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "rust_analyzer", - setup = { - cmd = { - ls_install_prefix .. "/rust/rust-analyzer", - }, - }, - }, - }, - scala = { - formatters = { - -- { - -- exe = "scalafmt", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "metals", - setup = {}, - }, - }, - sh = { - formatters = { - -- { - -- exe = "shfmt", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "bashls", - setup = { - cmd = { - ls_install_prefix .. "/bash/node_modules/.bin/bash-language-server", - "start", - }, - }, - }, - }, - svelte = { - formatters = {}, - linters = {}, - lsp = { - provider = "svelte", - setup = { - cmd = { - ls_install_prefix .. "/svelte/node_modules/.bin/svelteserver", - "--stdio", - }, - }, - }, - }, - swift = { - formatters = { - -- { - -- exe = "swiftformat", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "sourcekit", - setup = { - cmd = { - "xcrun", - "sourcekit-lsp", - }, - }, - }, - }, - tailwindcss = { - lsp = { - active = false, - provider = "tailwindcss", - setup = { - cmd = { - ls_install_prefix .. "/tailwindcss/node_modules/.bin/tailwindcss-language-server", - "--stdio", - }, - }, - }, - }, - terraform = { - formatters = { - -- { - -- exe = "terraform_fmt", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "terraformls", - setup = { - cmd = { - ls_install_prefix .. "/terraform/terraform-ls", - "serve", - }, - }, - }, - }, - tex = { - formatters = {}, - linters = {}, - lsp = { - provider = "texlab", - setup = { - cmd = { ls_install_prefix .. "/latex/texlab" }, - }, - }, - }, - typescript = { - formatters = { - -- { - -- exe = "prettier", - -- args = {}, - -- }, - -- { - -- exe = "prettierd", - -- args = {}, - -- }, - -- { - -- exe = "prettier_d_slim", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "tsserver", - setup = { - cmd = { - -- TODO: - ls_install_prefix .. "/typescript/node_modules/.bin/typescript-language-server", - "--stdio", - }, - }, - }, - }, - typescriptreact = { - formatters = { - -- { - -- exe = "prettier", - -- args = {}, - -- }, - -- { - -- exe = "prettierd", - -- args = {}, - -- }, - -- { - -- exe = "prettier_d_slim", - -- args = {}, - -- }, - }, - -- @usage can be {"eslint"} or {"eslint_d"} - linters = {}, - lsp = { - provider = "tsserver", - setup = { - cmd = { - -- TODO: - ls_install_prefix .. "/typescript/node_modules/.bin/typescript-language-server", - "--stdio", - }, - }, - }, - }, - vim = { - formatters = {}, - linters = {}, - lsp = { - provider = "vimls", - setup = { - cmd = { - ls_install_prefix .. "/vim/node_modules/.bin/vim-language-server", - "--stdio", - }, - }, - }, - }, - vue = { - formatters = { - -- { - -- exe = "prettier", - -- args = {}, - -- }, - -- { - -- exe = "prettierd", - -- args = {}, - -- }, - -- { - -- exe = "prettier_d_slim", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "vuels", - setup = { - cmd = { - ls_install_prefix .. "/vue/node_modules/.bin/vls", - }, - root_dir = function(fname) - local util = require "lspconfig/util" - return util.root_pattern "package.json"(fname) or util.root_pattern "vue.config.js"(fname) or vim.fn.getcwd() - end, - init_options = { - config = { - vetur = { - completion = { - autoImport = true, - tagCasing = "kebab", - useScaffoldSnippets = true, - }, - useWorkspaceDependencies = true, - validation = { - script = true, - style = true, - template = true, - }, - }, - }, - }, - }, - }, - }, - yaml = { - formatters = { - -- { - -- exe = "prettier", - -- args = {}, - -- }, - -- { - -- exe = "prettierd", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "yamlls", - setup = { - cmd = { - ls_install_prefix .. "/yaml/node_modules/.bin/yaml-language-server", - "--stdio", - }, - }, - }, - }, - zig = { - formatters = {}, - linters = {}, - lsp = { - provider = "zls", - setup = { - cmd = { - "zls", - }, - }, - }, - }, - gdscript = { - formatters = {}, - linters = {}, - lsp = { - provider = "gdscript", - setup = { - cmd = { - "nc", - "localhost", - "6008", - }, - }, - }, - }, - ps1 = { - formatters = {}, - linters = {}, - lsp = { - provider = "powershell_es", - setup = { - bundle_path = "", - }, - }, - }, - nix = { - formatters = { - -- { - -- exe = "nixfmt", - -- args = {}, - -- }, - }, - linters = {}, - lsp = { - provider = "rnix", - setup = { - cmd = { "rnix-lsp" }, - filetypes = { "nix" }, - init_options = {}, - settings = {}, - root_dir = function(fname) - local util = require "lspconfig/util" - return util.root_pattern ".git"(fname) or vim.fn.getcwd() - end, - }, - }, - }, + lang = {}, } diff --git a/lua/config/init.lua b/lua/config/init.lua index c09617bc..f0062560 100644 --- a/lua/config/init.lua +++ b/lua/config/init.lua @@ -22,6 +22,106 @@ function M:init(opts) local settings = require "config.settings" settings.load_options() + + local lvim_lsp_config = require "lsp.config" + lvim.lsp = vim.deepcopy(lvim_lsp_config) + + local supported_languages = { + "asm", + "bash", + "beancount", + "bibtex", + "bicep", + "c", + "c_sharp", + "clojure", + "cmake", + "comment", + "commonlisp", + "cpp", + "crystal", + "cs", + "css", + "cuda", + "d", + "dart", + "dockerfile", + "dot", + "elixir", + "elm", + "emmet", + "erlang", + "fennel", + "fish", + "fortran", + "gdscript", + "glimmer", + "go", + "gomod", + "graphql", + "haskell", + "hcl", + "heex", + "html", + "java", + "javascript", + "javascriptreact", + "jsdoc", + "json", + "json5", + "jsonc", + "julia", + "kotlin", + "latex", + "ledger", + "less", + "lua", + "markdown", + "nginx", + "nix", + "ocaml", + "ocaml_interface", + "perl", + "php", + "pioasm", + "ps1", + "puppet", + "python", + "ql", + "query", + "r", + "regex", + "rst", + "ruby", + "rust", + "scala", + "scss", + "sh", + "solidity", + "sparql", + "sql", + "supercollider", + "surface", + "svelte", + "swift", + "tailwindcss", + "terraform", + "tex", + "tlaplus", + "toml", + "tsx", + "turtle", + "typescript", + "typescriptreact", + "verilog", + "vim", + "vue", + "yaml", + "yang", + "zig", + } + + require("lsp.manager").init_defaults(supported_languages) end --- Override the configuration with a user provided one -- cgit v1.2.3 From efd8f589b75ba883ef4e69d79982d3c200595ec0 Mon Sep 17 00:00:00 2001 From: kylo252 <59826753+kylo252@users.noreply.github.com> Date: Sun, 3 Oct 2021 22:23:13 +0200 Subject: fix: add deprecation notice for lvim.lang.foo.lsp (#1670) --- lua/config/init.lua | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'lua/config') diff --git a/lua/config/init.lua b/lua/config/init.lua index f0062560..411f7a93 100644 --- a/lua/config/init.lua +++ b/lua/config/init.lua @@ -124,6 +124,26 @@ function M:init(opts) require("lsp.manager").init_defaults(supported_languages) end +local function deprecation_notice() + local in_headless = #vim.api.nvim_list_uis() == 0 + if in_headless then + return + end + + for lang, entry in pairs(lvim.lang) do + local deprecated_config = entry["lsp"] or {} + if not vim.tbl_isempty(deprecated_config) then + local msg = string.format( + "Deprecation notice: [lvim.lang.%s.lsp] setting is no longer supported. See https://github.com/LunarVim/LunarVim#breaking-changes", + lang + ) + vim.schedule(function() + vim.notify(msg, vim.log.levels.WARN) + end) + end + end +end + --- Override the configuration with a user provided one -- @param config_path The path to the configuration overrides function M:load(config_path) @@ -137,6 +157,8 @@ function M:load(config_path) return end + deprecation_notice() + self.path = config_path autocmds.define_augroups(lvim.autocommands) -- cgit v1.2.3