🔧 Updated nvim with native prettier

This commit is contained in:
tomit4 2026-03-03 09:13:25 -08:00
parent 049818537e
commit b1c8c84752
6 changed files with 121 additions and 36 deletions

View file

@ -98,7 +98,7 @@ vim.cmd([[nnoremap cmp :silent lua SetAutoCmp(Mode)]])
-- SudaWrite
-- vim.cmd([[nnoremap sw :SudaWrite]])
vim.keymap.set("n", "<leader>sw", ":SudaWrite")
-- vim.keymap.set("n", "<leader>sw", ":SudaWrite")
-- appends backslash to end of specified number of lines (min 2)
-- usage: 4<leader>b will append a backslash to the end of 4 lines
@ -185,5 +185,5 @@ vim.keymap.set("v", "<A-k>", ":m '<-2<CR>gv=gv")
-- sets 'gx' to open with default browser
vim.keymap.set("n", "gx", function()
local url = vim.fn.expand("<cfile>")
vim.system({ "librewolf", url }, { detach = true })
vim.system({ "librewolf-bin", url }, { detach = true })
end, { silent = true })

View file

@ -40,13 +40,17 @@ require("lazy").setup({
{ "nvim-lua/plenary.nvim" },
{ "tpope/vim-fugitive" },
{ "tpope/vim-surround", keys = { "cs", "ds", "ys" } },
{ "lambdalisue/suda.vim" },
-- { "lambdalisue/suda.vim" },
{ "junegunn/fzf" },
{ "junegunn/fzf.vim" },
{ "junegunn/gv.vim" },
{ "kien/ctrlp.vim" },
{ "mbbill/undotree", cmd = { "UndotreeToggle" } },
{ "mason-org/mason.nvim", event = "VeryLazy", opts = { ui = { border = "rounded" } } },
{
"mason-org/mason.nvim",
event = "VeryLazy",
opts = { ui = { border = "rounded" } },
},
{ "mason-org/mason-lspconfig.nvim", event = "VeryLazy" },
{ "neovim/nvim-lspconfig", event = { "BufReadPre", "BufNewFile" } },
{
@ -60,6 +64,9 @@ require("lazy").setup({
end,
ft = { "markdown" },
},
-- Prettier specifically installed
{ "nvimtools/none-ls.nvim" },
{ "MunifTanjim/prettier.nvim" },
-- Autocompletion/Snippets
{ "hrsh7th/nvim-cmp" },
{ "hrsh7th/cmp-buffer" },

View file

@ -113,6 +113,14 @@ vim.api.nvim_create_autocmd("BufReadPost", {
end,
})
-- automatically runs Prettier on HTML files
-- vim.api.nvim_create_autocmd("BufWritePre", {
-- pattern = "*.html",
-- callback = function()
-- vim.cmd("Prettier")
-- end,
-- })
-- Automatically closes Nvim tree if last window open
vim.cmd([[autocmd BufEnter * ++nested if winnr('$') == 1 && bufname() == 'NvimTree_' . tabpagenr() | quit | endif]])
@ -154,7 +162,7 @@ vim.g.codeium_disable_bindings = 1
vim.g.codeium_enabled = 0
-- Markdown Previewer settings
vim.g.mkdp_browser = "librewolf"
vim.g.mkdp_browser = "librewolf-bin"
vim.g.mkdp_theme = "light"
-- Create Default Mappings for NerdCommenter

View file

@ -0,0 +1,35 @@
return {
"nvimtools/none-ls.nvim",
config = function()
local group = vim.api.nvim_create_augroup("lsp_format_on_save", { clear = false })
local event = "BufWritePre" -- or "BufWritePost"
local async = event == "BufWritePost"
require("null-ls").setup({
on_attach = function(client, bufnr)
if client.supports_method("textDocument/formatting") then
vim.keymap.set("n", "<Leader>f", function()
vim.lsp.buf.format({ bufnr = vim.api.nvim_get_current_buf() })
end, { buffer = bufnr, desc = "[lsp] format" })
-- format on save
vim.api.nvim_clear_autocmds({ buffer = bufnr, group = group })
vim.api.nvim_create_autocmd(event, {
buffer = bufnr,
group = group,
callback = function()
vim.lsp.buf.format({ bufnr = bufnr, async = async })
end,
desc = "[lsp] format on save",
})
end
if client.supports_method("textDocument/rangeFormatting") then
vim.keymap.set("x", "<Leader>f", function()
vim.lsp.buf.format({ bufnr = vim.api.nvim_get_current_buf() })
end, { buffer = bufnr, desc = "[lsp] format" })
end
end,
})
end,
}

View file

@ -0,0 +1,33 @@
return {
"MunifTanjim/prettier.nvim",
config = function()
require("prettier").setup({
bin = "prettierd", -- or `'prettierd'` (v0.23.3+)
filetypes = {
"css",
"graphql",
--"html",
"javascript",
"javascriptreact",
"json",
"less",
-- "markdown",
"scss",
"typescript",
"typescriptreact",
"yaml",
},
cli_options = {
trailingComma = "all",
tabWidth = 4,
printWidth = 80,
semi = false,
jsxSingleQuote = true,
singleQuote = true,
bracketSpacing = true,
bracketSameLine = true,
arrowParens = "avoid",
},
})
end,
}