diff --git a/dot_config/nvim/exact_lua/lsp/exact_config/lspconfig.lua b/dot_config/nvim/exact_lua/lsp/exact_config/lspconfig.lua index 061aaa6..ec7f3f3 100644 --- a/dot_config/nvim/exact_lua/lsp/exact_config/lspconfig.lua +++ b/dot_config/nvim/exact_lua/lsp/exact_config/lspconfig.lua @@ -13,11 +13,15 @@ end -- local servers = { "phpactor", -- PHP + "sqls", -- SQL "pyright", -- Python "gopls", -- Go "html", -- HTML "cssls", -- CSS + "volar", -- Vue3 -- "ts_ls", -- TypeScript,目前暫時不需要,先註解掉 + "marksman", -- Markdown + "yamlls", -- YAML } -- 載入所有的對應的 LSP server 設定 diff --git a/dot_config/nvim/exact_lua/lsp/exact_config/mason.lua b/dot_config/nvim/exact_lua/lsp/exact_config/mason.lua index 11e77db..b507995 100644 --- a/dot_config/nvim/exact_lua/lsp/exact_config/mason.lua +++ b/dot_config/nvim/exact_lua/lsp/exact_config/mason.lua @@ -6,11 +6,15 @@ require("mason-lspconfig").setup { ensure_installed = { -- "lua_ls", "rust_analyzer" -- 官方範例 "phpactor", + "sqls", "pyright", "gopls", "html", "cssls", - "tsserver", + "volar", + -- "ts_ls", + "marksman", + "yamlls", }, -- Whether servers that are set up (via lspconfig) should be automatically installed if they're not already installed. diff --git a/dot_config/nvim/exact_lua/lsp/exact_servers/marksman.lua b/dot_config/nvim/exact_lua/lsp/exact_servers/marksman.lua new file mode 100644 index 0000000..7c64844 --- /dev/null +++ b/dot_config/nvim/exact_lua/lsp/exact_servers/marksman.lua @@ -0,0 +1,5 @@ +return { + cmd = { "marksman", "server" }, + filetypes = { "markdown", "markdown.mdx" }, + root_markers = { ".marksman.toml", ".git" }, +} diff --git a/dot_config/nvim/exact_lua/lsp/exact_servers/sqls.lua b/dot_config/nvim/exact_lua/lsp/exact_servers/sqls.lua new file mode 100644 index 0000000..c3aed33 --- /dev/null +++ b/dot_config/nvim/exact_lua/lsp/exact_servers/sqls.lua @@ -0,0 +1,6 @@ +return { + cmd = { "sqls" }, + filetypes = { "sql", "mysql" }, + root_markers = { "config.yml" }, + settings = {}, +} diff --git a/dot_config/nvim/exact_lua/lsp/exact_servers/volar.lua b/dot_config/nvim/exact_lua/lsp/exact_servers/volar.lua new file mode 100644 index 0000000..a1e4d91 --- /dev/null +++ b/dot_config/nvim/exact_lua/lsp/exact_servers/volar.lua @@ -0,0 +1,10 @@ +return { + cmd = { "vue-language-server", "--stdio" }, + filetypes = { "vue" }, + init_options = { + typescript = { + tsdk = "" + } + }, + root_markers = { "package.json" }, +} diff --git a/dot_config/nvim/exact_lua/lsp/exact_servers/yamlls.lua b/dot_config/nvim/exact_lua/lsp/exact_servers/yamlls.lua new file mode 100644 index 0000000..819d6c4 --- /dev/null +++ b/dot_config/nvim/exact_lua/lsp/exact_servers/yamlls.lua @@ -0,0 +1,12 @@ +return { + cmd = { "yaml-language-server", "--stdio" }, + filetypes = { "yaml", "yaml.docker-compose", "yaml.gitlab" }, + root_markers = { ".git" }, + settings = { + redhat = { + telemetry = { + enabled = false + } + } + }, +}