diff options
author | not <[email protected]> | 2021-07-14 10:05:09 -0500 |
---|---|---|
committer | GitHub <[email protected]> | 2021-07-14 11:05:09 -0400 |
commit | acb685c09391fcde4af6ad2557bac86ab4c158ed (patch) | |
tree | e02d7717903ae9d4e9cd4709e3ca6b5f1f26618f /ftplugin/css.lua | |
parent | 946b2512338e4208a04c210334c0de4175baf6bf (diff) |
feat: add css (and pre-processors) support (#937)
Diffstat (limited to 'ftplugin/css.lua')
-rw-r--r-- | ftplugin/css.lua | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/ftplugin/css.lua b/ftplugin/css.lua index 9cd7cc71..810ea421 100644 --- a/ftplugin/css.lua +++ b/ftplugin/css.lua @@ -1,3 +1,36 @@ +vim.cmd "let proj = FindRootDirectory()" +local root_dir = vim.api.nvim_get_var "proj" + +-- use the global prettier if you didn't find the local one +local prettier_instance = root_dir .. "/node_modules/.bin/prettier" +if vim.fn.executable(prettier_instance) ~= 1 then + prettier_instance = O.lang.tsserver.formatter.exe +end + +local ft = vim.bo.filetype +O.formatters.filetype[ft]= { + function() + local args = { "--stdin-filepath", vim.fn.fnameescape(vim.api.nvim_buf_get_name(0)) } + -- TODO: O.lang.[ft].formatter.args + local extend_args = O.lang.css.formatter.args + + for i = 1, #extend_args do + table.insert(args, extend_args[i]) + end + + return { + exe = prettier_instance, + args = args, + stdin = true + } + end, +} + +require("formatter.config").set_defaults { + logging = false, + filetype = O.formatters.filetype, +} + if not require("lv-utils").check_lsp_client_active "cssls" then local capabilities = vim.lsp.protocol.make_client_capabilities() capabilities.textDocument.completion.completionItem.snippetSupport = true |