mirror of
https://github.com/LunarVim/LunarVim.git
synced 2025-07-23 04:05:22 +02:00
poc with local prettier working
This commit is contained in:
parent
4fad35a7e1
commit
eceb656b4b
7 changed files with 86 additions and 42 deletions
|
@ -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')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue