28 lines
700 B
Lua
28 lines
700 B
Lua
|
vim.api.nvim_command("packadd formatter.nvim")
|
||
|
|
||
|
local prettier = function()
|
||
|
return {
|
||
|
exe = Get_project_node_modules_path() .. "/.bin/prettier",
|
||
|
args = {"--stdin-filepath", vim.api.nvim_buf_get_name(0), '--single-quote'},
|
||
|
stdin = true
|
||
|
}
|
||
|
end
|
||
|
|
||
|
require('formatter').setup({
|
||
|
filetype = {
|
||
|
javascript = { prettier },
|
||
|
typescript = { prettier },
|
||
|
typescriptreact = { prettier },
|
||
|
}
|
||
|
})
|
||
|
|
||
|
vim.api.nvim_exec2([[
|
||
|
augroup FormatAutogroup
|
||
|
autocmd!
|
||
|
autocmd BufWritePost *.js,*.ts,*.tsx silent FormatWrite
|
||
|
augroup END
|
||
|
]], { output = true })
|
||
|
|
||
|
local bufnr = vim.fn.bufnr("%")
|
||
|
vim.api.nvim_buf_set_keymap(bufnr, 'n', '<leader>F', '<Cmd>silent Format<CR>', { noremap=true, silent=true })
|