summaryrefslogtreecommitdiff
path: root/lua/user/lsp
diff options
context:
space:
mode:
Diffstat (limited to 'lua/user/lsp')
-rw-r--r--lua/user/lsp/lsp-installer.lua25
-rw-r--r--lua/user/lsp/settings/awk_ls.lua10
-rw-r--r--lua/user/lsp/settings/bashls.lua11
-rw-r--r--lua/user/lsp/settings/clangd.lua10
-rw-r--r--lua/user/lsp/settings/cmake.lua12
-rw-r--r--lua/user/lsp/settings/html.lua18
6 files changed, 86 insertions, 0 deletions
diff --git a/lua/user/lsp/lsp-installer.lua b/lua/user/lsp/lsp-installer.lua
index f539050..ac8f40c 100644
--- a/lua/user/lsp/lsp-installer.lua
+++ b/lua/user/lsp/lsp-installer.lua
@@ -26,6 +26,31 @@ lsp_installer.on_server_ready(function(server)
opts = vim.tbl_deep_extend("force", pyright_opts, opts)
end
+ if server.name == "awk_ls" then
+ local awk_opts = require("user.lsp.settings.awk_ls")
+ opts = vim.tbl_deep_extend("force", awk_opts, opts)
+ end
+
+ if server.name == "bashls" then
+ local bash_opts = require("user.lsp.settings.bashls")
+ opts = vim.tbl_deep_extend("force", bash_opts, opts)
+ end
+
+ if server.name == "clangd" then
+ local clangd_opts = require("user.lsp.settings.clangd")
+ opts = vim.tbl_deep_extend("force", clangd_opts, opts)
+ end
+
+ if server.name == "cmake" then
+ local cmake_opts = require("user.lsp.settings.cmake")
+ opts = vim.tbl_deep_extend("force", cmake_opts, opts)
+ end
+
+ if server.name == "html" then
+ local html_opts = require("user.lsp.settings.html")
+ opts = vim.tbl_deep_extend("force", html_opts, opts)
+ end
+
-- This setup() function is exactly the same as lspconfig's setup function.
-- Refer to https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md
server:setup(opts)
diff --git a/lua/user/lsp/settings/awk_ls.lua b/lua/user/lsp/settings/awk_ls.lua
new file mode 100644
index 0000000..9d4a2da
--- /dev/null
+++ b/lua/user/lsp/settings/awk_ls.lua
@@ -0,0 +1,10 @@
+return {
+ settings = {
+
+ awk = {
+ filetypes = { 'awk' },
+ single_file_support = true,
+ }
+ }
+}
+
diff --git a/lua/user/lsp/settings/bashls.lua b/lua/user/lsp/settings/bashls.lua
new file mode 100644
index 0000000..72f8409
--- /dev/null
+++ b/lua/user/lsp/settings/bashls.lua
@@ -0,0 +1,11 @@
+return {
+ settings = {
+
+ bash = {
+ cmd_env = {GLOB_PATTERN = "*@(.sh|.inc|.bash|.command)" },
+ filetypes = { 'sh' },
+ single_file_support = true,
+ }
+ }
+}
+
diff --git a/lua/user/lsp/settings/clangd.lua b/lua/user/lsp/settings/clangd.lua
new file mode 100644
index 0000000..55798a1
--- /dev/null
+++ b/lua/user/lsp/settings/clangd.lua
@@ -0,0 +1,10 @@
+return {
+ settings = {
+
+ clangd = {
+ filetypes = { "c","cpp" },
+ single_file_support = true,
+ }
+ }
+}
+
diff --git a/lua/user/lsp/settings/cmake.lua b/lua/user/lsp/settings/cmake.lua
new file mode 100644
index 0000000..c81df8a
--- /dev/null
+++ b/lua/user/lsp/settings/cmake.lua
@@ -0,0 +1,12 @@
+return {
+ settings = {
+
+ cmake = {
+ whitelist = {"cmake" },
+ initialization_Options = {
+ buildDirectory = {"build"},
+ },
+ }
+ }
+}
+
diff --git a/lua/user/lsp/settings/html.lua b/lua/user/lsp/settings/html.lua
new file mode 100644
index 0000000..fb161a9
--- /dev/null
+++ b/lua/user/lsp/settings/html.lua
@@ -0,0 +1,18 @@
+return {
+ settings = {
+
+ html = {
+ filetypes = { 'html' },
+ init_options = {
+ configurationSection = {"html", "css", "javascript" },
+ embeddedLanguages = {
+ css = true,
+ javascript = true,
+ },
+ provideFormatter = true
+ },
+ single_file_support = true,
+ }
+ }
+}
+