diff options
Diffstat (limited to 'lua')
-rw-r--r-- | lua/core/formatter.lua | 71 | ||||
-rw-r--r-- | lua/default-config.lua | 7 | ||||
-rw-r--r-- | lua/lsp/tsserver-ls.lua | 21 | ||||
-rw-r--r-- | lua/lv-utils/init.lua | 5 | ||||
-rw-r--r-- | lua/plugins.lua | 7 |
5 files changed, 69 insertions, 42 deletions
diff --git a/lua/core/formatter.lua b/lua/core/formatter.lua index ad40dd21..50dcb654 100644 --- a/lua/core/formatter.lua +++ b/lua/core/formatter.lua @@ -11,48 +11,45 @@ if O.format_on_save then } end --- check if formatter has been defined for the language or not -local function formatter_exists(lang_formatter) - if lang_formatter == nil then - return false - end - if lang_formatter.exe == nil or lang_formatter.args == nil then - return false - end - return true -end +-- -- check if formatter has been defined for the language or not +-- local function formatter_exists(lang_formatter) +-- if lang_formatter == nil then +-- return false +-- end +-- if lang_formatter.exe == nil or lang_formatter.args == nil then +-- return false +-- end +-- return true +-- end -- returns default formatter for given language -local function formatter_return(lang_formatter) - return { - exe = lang_formatter.exe, - args = lang_formatter.args, - stdin = not (lang_formatter.stdin ~= nil), - } -end +-- local function formatter_return(lang_formatter) +-- return { +-- exe = lang_formatter.exe, +-- args = lang_formatter.args, +-- stdin = not (lang_formatter.stdin ~= nil), +-- } +-- end -- fill a table like this -> {rust: {exe:"sth",args:{"a","b"},stdin=true},go: {}...} -local formatter_filetypes = {} -for k, v in pairs(O.lang) do - if formatter_exists(v.formatter) then - local keys = v.filetypes - if keys == nil then - keys = { k } - end - for _, l in pairs(keys) do - formatter_filetypes[l] = { - function() - return formatter_return(v.formatter) - end, - } - end - end -end +-- local formatter_filetypes = {} +-- for k, v in pairs(O.lang) do +-- if formatter_exists(v.formatter) then +-- local keys = v.filetypes +-- if keys == nil then +-- keys = { k } +-- end +-- for _, l in pairs(keys) do +-- formatter_filetypes[l] = { +-- function() +-- return formatter_return(v.formatter) +-- end, +-- } +-- end +-- end +-- end -require("formatter").setup { - logging = false, - filetype = formatter_filetypes, -} +require("formatter").setup {} if not O.format_on_save then vim.cmd [[if exists('#autoformat#BufWritePost') diff --git a/lua/default-config.lua b/lua/default-config.lua index dcad7b3d..e55f44c0 100644 --- a/lua/default-config.lua +++ b/lua/default-config.lua @@ -79,6 +79,11 @@ O = { { "FileType", "qf", "set nobuflisted" }, }, + formatters = { + filetype = {}, + }, + + -- TODO move all of this into lang specific files, only require when using lang = { cmake = { formatter = { @@ -113,7 +118,7 @@ O = { docker = {}, efm = {}, elm = {}, - emmet = { active = true }, + emmet = { active = false }, elixir = {}, graphql = {}, go = { diff --git a/lua/lsp/tsserver-ls.lua b/lua/lsp/tsserver-ls.lua index d7c4ec3c..c95b7810 100644 --- a/lua/lsp/tsserver-ls.lua +++ b/lua/lsp/tsserver-ls.lua @@ -1,3 +1,24 @@ +vim.cmd "let proj = FindRootDirectory()" +print(vim.api.nvim_get_var "proj") +local root_dir = vim.api.nvim_get_var "proj" +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 + args = { "--stdin-filepath", vim.api.nvim_buf_get_name(0), "--single-quote" }, + stdin = true, + } + end, +} + +require("formatter.config").set_defaults { + logging = false, + filetype = O.formatters.filetype, +} + if require("lv-utils").check_lsp_client_active "tsserver" then return end diff --git a/lua/lv-utils/init.lua b/lua/lv-utils/init.lua index 55890043..d2d23cfb 100644 --- a/lua/lv-utils/init.lua +++ b/lua/lv-utils/init.lua @@ -42,6 +42,11 @@ function lv_utils.define_augroups(definitions) -- {{{1 end end +function lv_utils.unrequire(m) + package.loaded[m] = nil + _G[m] = nil +end + lv_utils.define_augroups { _general_settings = { diff --git a/lua/plugins.lua b/lua/plugins.lua index d61339ae..85db0d0d 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -82,10 +82,9 @@ return require("packer").startup(function(use) -- Formatter.nvim use { "mhartington/formatter.nvim", - config = function() - require "core.formatter" - end, - event = "BufRead", + -- config = function() + -- require "core.formatter" + -- end, } -- NvimTree |