From d3f3aa3a29c5ac1fbf248eb9875ecdf565f4f8f3 Mon Sep 17 00:00:00 2001 From: Mathias Scheider Date: Fri, 27 Mar 2026 14:48:59 +0100 Subject: [PATCH] better linter --- term/.config/nvim/lua/plugins/none-ls.lua | 34 +++++++++++------------ 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/term/.config/nvim/lua/plugins/none-ls.lua b/term/.config/nvim/lua/plugins/none-ls.lua index 7012556..e8aa5ff 100644 --- a/term/.config/nvim/lua/plugins/none-ls.lua +++ b/term/.config/nvim/lua/plugins/none-ls.lua @@ -1,24 +1,24 @@ return { - "nvimtools/none-ls.nvim", - "nvimtools/none-ls-extras.nvim", + "stevearc/conform.nvim", config = function() - local null_ls = require("null-ls") - local eslint_path = "/home/mathias/.local/share/fnm/node-versions/v25.8.1/installation/bin/eslint" - - null_ls.setup({ - sources = { - null_ls.builtins.formatting.stylua, - null_ls.builtins.diagnostics.stylua, - null_ls.builtins.formatting.black, - null_ls.builtins.diagnostics.black, - null_ls.builtins.formatting.prettier, - null_ls.builtins.formatting.shfmt, - null_ls.builtins.diagnostics.shellcheck, - require("none-ls.diagnostics.eslint_d").with({ command = eslint_path }), - require("none-ls.formatting.eslint_d").with({ command = eslint_path }), + require("conform").setup({ + formatters_by_ft = { + lua = { "stylua" }, + python = { "black" }, + javascript = { "prettier", "eslint" }, + javascriptreact = { "prettier", "eslint" }, + jsx = { "prettier", "eslint" }, + typescript = { "prettier", "eslint" }, + typescriptreact = { "prettier", "eslint" }, + sh = { "shfmt" }, + }, + format_on_save = { + timeout_ms = 500, }, }) - vim.keymap.set("n", "gf", vim.lsp.buf.format, {}) + vim.keymap.set({ "n", "v" }, "lf", function() + require("conform").format({ async = true, lsp_fallback = true }) + end, { desc = "Format buffer" }) end, }