summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ftplugin/vue.lua13
-rw-r--r--ftplugin/yaml.lua27
-rw-r--r--ftplugin/zig.lua20
-rw-r--r--ftplugin/zsh.lua40
-rw-r--r--lua/lang/vue.lua13
-rw-r--r--lua/lang/yaml.lua27
-rw-r--r--lua/lang/zig.lua15
-rw-r--r--lua/lang/zsh.lua50
8 files changed, 116 insertions, 89 deletions
diff --git a/ftplugin/vue.lua b/ftplugin/vue.lua
index 96048164..297e8832 100644
--- a/ftplugin/vue.lua
+++ b/ftplugin/vue.lua
@@ -1,10 +1,5 @@
-if require("lv-utils").check_lsp_client_active "vuels" then
- return
-end
+require("lamg.vue").format()
+require("lamg.vue").lint()
+require("lamg.vue").lsp()
+require("lamg.vue").dap()
--- Vue language server configuration (vetur)
-require("lspconfig").vuels.setup {
- cmd = { DATA_PATH .. "/lspinstall/vue/node_modules/.bin/vls", "--stdio" },
- on_attach = require("lsp").common_on_attach,
- root_dir = require("lspconfig").util.root_pattern(".git", "vue.config.js", "package.json", "yarn.lock"),
-}
diff --git a/ftplugin/yaml.lua b/ftplugin/yaml.lua
index f1dfc5dc..47a0d039 100644
--- a/ftplugin/yaml.lua
+++ b/ftplugin/yaml.lua
@@ -1,24 +1,5 @@
-O.formatters.filetype["yaml"] = {
- function()
- return {
- exe = O.lang.yaml.formatter.exe,
- args = O.lang.yaml.formatter.args,
- stdin = not (O.lang.yaml.formatter.stdin ~= nil),
- }
- end,
-}
+require("lamg.yaml").format()
+require("lamg.yaml").lint()
+require("lamg.yaml").lsp()
+require("lamg.yaml").dap()
-require("formatter.config").set_defaults {
- logging = false,
- filetype = O.formatters.filetype,
-}
-if require("lv-utils").check_lsp_client_active "yamlls" then
- return
-end
-
--- npm install -g yaml-language-server
-require("lspconfig").yamlls.setup {
- cmd = { DATA_PATH .. "/lspinstall/yaml/node_modules/.bin/yaml-language-server", "--stdio" },
- on_attach = require("lsp").common_on_attach,
-}
-vim.cmd "setl ts=2 sw=2 ts=2 ai et"
diff --git a/ftplugin/zig.lua b/ftplugin/zig.lua
index 55707d85..bc177211 100644
--- a/ftplugin/zig.lua
+++ b/ftplugin/zig.lua
@@ -1,17 +1,5 @@
-if not require("lv-utils").check_lsp_client_active "zls" then
- -- Because lspinstall don't support zig yet,
- -- So we need zls preset in global lib
- -- Further custom install zls in
- -- https://github.com/zigtools/zls/wiki/Downloading-and-Building-ZLS
- require("lspconfig").zls.setup {
- root_dir = require("lspconfig").util.root_pattern(".git", "build.zig", "zls.json"),
- on_attach = require("lsp").common_on_attach,
- }
-end
+require("lang.zig").format()
+require("lang.zig").lint()
+require("lang.zig").lsp()
+require("lang.zig").dap()
-require("lv-utils").define_augroups {
- _zig_autoformat = {
- { "BufEnter", "*.zig", ':lua vim.api.nvim_buf_set_option(0, "commentstring", "// %s")' },
- },
-}
-vim.cmd "setl expandtab tabstop=8 softtabstop=4 shiftwidth=4"
diff --git a/ftplugin/zsh.lua b/ftplugin/zsh.lua
index 750e8ede..4dfbb7b8 100644
--- a/ftplugin/zsh.lua
+++ b/ftplugin/zsh.lua
@@ -1,36 +1,4 @@
-if not require("lv-utils").check_lsp_client_active "bashls" then
- -- npm i -g bash-language-server
- require("lspconfig").bashls.setup {
- cmd = { DATA_PATH .. "/lspinstall/bash/node_modules/.bin/bash-language-server", "start" },
- on_attach = require("lsp").common_on_attach,
- filetypes = { "sh", "zsh" },
- }
-end
-
--- sh
-local sh_arguments = {}
-
-local shellcheck = {
- LintCommand = "shellcheck -f gcc -x",
- lintFormats = { "%f:%l:%c: %trror: %m", "%f:%l:%c: %tarning: %m", "%f:%l:%c: %tote: %m" },
-}
-
-if O.lang.sh.linter == "shellcheck" then
- table.insert(sh_arguments, shellcheck)
-end
-
-if not require("lv-utils").check_lsp_client_active "efm" then
- require("lspconfig").efm.setup {
- -- init_options = {initializationOptions},
- cmd = { DATA_PATH .. "/lspinstall/efm/efm-langserver" },
- init_options = { documentFormatting = true, codeAction = false },
- root_dir = require("lspconfig").util.root_pattern ".git/",
- filetypes = { "zsh" },
- settings = {
- rootMarkers = { ".git/" },
- languages = {
- sh = sh_arguments,
- },
- },
- }
-end
+require("lang.zsh").format()
+require("lang.zsh").lint()
+require("lang.zsh").lsp()
+require("lang.zsh").dap()
diff --git a/lua/lang/vue.lua b/lua/lang/vue.lua
index 178c6f54..8fd2af7e 100644
--- a/lua/lang/vue.lua
+++ b/lua/lang/vue.lua
@@ -15,7 +15,18 @@ M.lint = function()
return "No linters configured!"
end
-M.lsp = function() end
+M.lsp = function()
+ if require("lv-utils").check_lsp_client_active "vuels" then
+ return
+ end
+
+ -- Vue language server configuration (vetur)
+ require("lspconfig").vuels.setup {
+ cmd = { DATA_PATH .. "/lspinstall/vue/node_modules/.bin/vls", "--stdio" },
+ on_attach = require("lsp").common_on_attach,
+ root_dir = require("lspconfig").util.root_pattern(".git", "vue.config.js", "package.json", "yarn.lock"),
+ }
+end
M.dap = function()
-- TODO: implement dap
diff --git a/lua/lang/yaml.lua b/lua/lang/yaml.lua
index 178c6f54..bedf9af2 100644
--- a/lua/lang/yaml.lua
+++ b/lua/lang/yaml.lua
@@ -1,8 +1,19 @@
local M = {}
M.config = function()
- -- TODO: implement config for language
- return "No config available!"
+ O.formatters.filetype["yaml"] = {
+ function()
+ return {
+ exe = O.lang.yaml.formatter.exe,
+ args = O.lang.yaml.formatter.args,
+ stdin = not (O.lang.yaml.formatter.stdin ~= nil),
+ }
+ end,
+ }
+ require("formatter.config").set_defaults {
+ logging = false,
+ filetype = O.formatters.filetype,
+ }
end
M.format = function()
@@ -15,7 +26,17 @@ M.lint = function()
return "No linters configured!"
end
-M.lsp = function() end
+M.lsp = function()
+ if require("lv-utils").check_lsp_client_active "yamlls" then
+ return
+ end
+
+ -- npm install -g yaml-language-server
+ require("lspconfig").yamlls.setup {
+ cmd = { DATA_PATH .. "/lspinstall/yaml/node_modules/.bin/yaml-language-server", "--stdio" },
+ on_attach = require("lsp").common_on_attach,
+ }
+end
M.dap = function()
-- TODO: implement dap
diff --git a/lua/lang/zig.lua b/lua/lang/zig.lua
index 178c6f54..1da329f5 100644
--- a/lua/lang/zig.lua
+++ b/lua/lang/zig.lua
@@ -15,7 +15,20 @@ M.lint = function()
return "No linters configured!"
end
-M.lsp = function() end
+M.lsp = function()
+
+if require("lv-utils").check_lsp_client_active "zls" then
+ return
+end
+ -- Because lspinstall don't support zig yet,
+ -- So we need zls preset in global lib
+ -- Further custom install zls in
+ -- https://github.com/zigtools/zls/wiki/Downloading-and-Building-ZLS
+ require("lspconfig").zls.setup {
+ root_dir = require("lspconfig").util.root_pattern(".git", "build.zig", "zls.json"),
+ on_attach = require("lsp").common_on_attach,
+ }
+end
M.dap = function()
-- TODO: implement dap
diff --git a/lua/lang/zsh.lua b/lua/lang/zsh.lua
new file mode 100644
index 00000000..c81bd96c
--- /dev/null
+++ b/lua/lang/zsh.lua
@@ -0,0 +1,50 @@
+local M = {}
+
+M.config = function()
+ -- TODO: implement config for language
+ return "No config available!"
+end
+
+M.format = function()
+ -- TODO: implement format for language
+ return "No format available!"
+end
+
+M.lint = function()
+ -- zsh
+ local zsh_arguments = {}
+
+ if not require("lv-utils").check_lsp_client_active "efm" then
+ require("lspconfig").efm.setup {
+ -- init_options = {initializationOptions},
+ cmd = { DATA_PATH .. "/lspinstall/efm/efm-langserver" },
+ init_options = { documentFormatting = true, codeAction = false },
+ root_dir = require("lspconfig").util.root_pattern ".git/",
+ filetypes = { "zsh" },
+ settings = {
+ rootMarkers = { ".git/" },
+ languages = {
+ zsh = zsh_arguments,
+ },
+ },
+ }
+ end
+end
+
+M.lsp = function()
+ if not require("lv-utils").check_lsp_client_active "bashls" then
+ -- npm i -g bash-language-server
+ require("lspconfig").bashls.setup {
+ cmd = { DATA_PATH .. "/lspinstall/bash/node_modules/.bin/bash-language-server", "start" },
+ on_attach = require("lsp").common_on_attach,
+ filetypes = { "sh", "zsh" },
+ }
+ end
+end
+
+M.dap = function()
+ -- TODO: implement dap
+ return "No DAP configured!"
+end
+
+return M