diff options
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/lspconfig/server_configurations/smarty_ls.lua | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/lua/lspconfig/server_configurations/smarty_ls.lua b/lua/lspconfig/server_configurations/smarty_ls.lua new file mode 100644 index 00000000..2a7c6ca9 --- /dev/null +++ b/lua/lspconfig/server_configurations/smarty_ls.lua @@ -0,0 +1,46 @@ +local util = require 'lspconfig.util' + +local bin_name = 'smarty-language-server' +local cmd = { bin_name, '--stdio' } + +if vim.fn.has 'win32' == 1 then + cmd = { 'cmd.exe', '/C', bin_name, '--stdio' } +end + +return { + default_config = { + cmd = cmd, + filetypes = { 'smarty' }, + root_dir = function(pattern) + local cwd = vim.loop.cwd() + local root = util.root_pattern('composer.json', '.git')(pattern) + + -- prefer cwd if root is a descendant + return util.path.is_descendant(cwd, root) and cwd or root + end, + settings = { + smarty = { + pluginDirs = {}, + }, + css = { + validate = true, + }, + }, + init_options = { + storageDir = nil, + }, + }, + docs = { + description = [[ +https://github.com/landeaux/vscode-smarty-langserver-extracted + +Language server for Smarty. + +`smarty-language-server` can be installed via `npm`: + +```sh +npm i -g vscode-smarty-langserver-extracted +``` +]], + }, +} |
