diff options
| -rw-r--r-- | ftplugin/svelte.lua | 4 | ||||
| -rw-r--r-- | lua/default-config.lua | 1 | ||||
| -rw-r--r-- | lua/lang/svelte.lua | 35 | 
3 files changed, 40 insertions, 0 deletions
| diff --git a/ftplugin/svelte.lua b/ftplugin/svelte.lua new file mode 100644 index 00000000..108a0fc3 --- /dev/null +++ b/ftplugin/svelte.lua @@ -0,0 +1,4 @@ +require("lang.svelte").format() +require("lang.svelte").lint() +require("lang.svelte").lsp() +require("lang.svelte").dap() diff --git a/lua/default-config.lua b/lua/default-config.lua index 408ba038..58df41d1 100644 --- a/lua/default-config.lua +++ b/lua/default-config.lua @@ -181,6 +181,7 @@ require("lang.ruby").config()  require("lang.rust").config()  require("lang.scala").config()  require("lang.sh").config() +require("lang.svelte").config()  require("lang.terraform").config()  require("lang.tex").config()  require("lang.vim").config() diff --git a/lua/lang/svelte.lua b/lua/lang/svelte.lua new file mode 100644 index 00000000..220c2c18 --- /dev/null +++ b/lua/lang/svelte.lua @@ -0,0 +1,35 @@ +local M = {} + +M.config = function() +  O.lang.svelte = {} +end + +M.format = function() +  -- TODO: implement formatter (if applicable) +  return "No formatter configured!" +end + +M.lint = function() +  -- TODO: implement linters (if applicable) +  return "No linters configured!" +end + +M.lsp = function() +  if require("lv-utils").check_lsp_client_active "svelte" then +    return +  end + +  require("lspconfig").svelte.setup { +    cmd = { DATA_PATH .. "/lspinstall/svelte/node_modules/.bin/svelteserver", "--stdio" }, +    filetypes = { "svelte" }, +    root_dir = require("lspconfig.util").root_pattern("package.json", ".git"), +    on_attach = require("lsp").common_on_attach, +  } +end + +M.dap = function() +  -- TODO: implement dap +  return "No DAP configured!" +end + +return M | 
