From de7ec62f5fde20ca1d7e53ed83a0077f8945f67c Mon Sep 17 00:00:00 2001 From: Abouzar Parvan Date: Wed, 14 Jul 2021 04:19:36 +0430 Subject: Added default formatters (#908) * added default formatters for a couple of langs * fix: sugesstions from tastyep * allow users to change default formatters * suggestion: mellow pointed out the telescope issue * we don't need to use formatter.setup --- lua/lsp/tsserver-ls.lua | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'lua/lsp') diff --git a/lua/lsp/tsserver-ls.lua b/lua/lsp/tsserver-ls.lua index c95b7810..22c58950 100644 --- a/lua/lsp/tsserver-ls.lua +++ b/lua/lsp/tsserver-ls.lua @@ -1,18 +1,23 @@ vim.cmd "let proj = FindRootDirectory()" -print(vim.api.nvim_get_var "proj") 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 + O.formatters.filetype["javascriptreact"] = { - -- vim.cmd "let root_dir " - -- prettier function() return { - exe = root_dir .. "/node_modules/.bin/prettier", - -- TODO: append to this for args don't overwrite + exe = prettier_instance, + -- TODO: allow user to override this args = { "--stdin-filepath", vim.api.nvim_buf_get_name(0), "--single-quote" }, - stdin = true, + stdin = true } end, } +O.formatters.filetype["javascript"] = O.formatters.filetype["javascriptreact"] require("formatter.config").set_defaults { logging = false, -- cgit v1.2.3