From 7e2edf99543b9c31a5c638d48572b25216d9c229 Mon Sep 17 00:00:00 2001 From: sudacode Date: Thu, 13 Feb 2025 17:51:52 -0800 Subject: [PATCH] update --- init.vim | 3 ++- lua/plugins.lua | 1 + plugin-confs/lsp-format.lua | 1 - plugin-confs/nvim-lint.lua | 21 +++++++++++++++++++++ 4 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 plugin-confs/nvim-lint.lua diff --git a/init.vim b/init.vim index 636fff3..fe71984 100755 --- a/init.vim +++ b/init.vim @@ -33,8 +33,9 @@ source ~/.config/nvim/plugin-confs/lsp-kind.lua source ~/.config/nvim/plugin-confs/lspconfig.lua source ~/.config/nvim/plugin-confs/lsplines.lua source ~/.config/nvim/plugin-confs/null-ls.lua -source ~/.config/nvim/plugin-confs/lsp-format.lua source ~/.config/nvim/plugin-confs/nvim-cmp.lua +source ~/.config/nvim/plugin-confs/lsp-format.lua +source ~/.config/nvim/plugin-confs/nvim-lint.lua source ~/.config/nvim/plugin-confs/luasnip.lua source ~/.config/nvim/plugin-confs/fidget.lua source ~/.config/nvim/plugin-confs/rainbow-delimiters.lua diff --git a/lua/plugins.lua b/lua/plugins.lua index 6c963a6..6bdeeee 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -277,6 +277,7 @@ require('packer').startup(function(use) use { 'neovim/nvim-lspconfig' } use { 'onsails/lspkind-nvim' } use { 'lukas-reineke/lsp-format.nvim' } + use 'mfussenegger/nvim-lint' -- DAP {{{ diff --git a/plugin-confs/lsp-format.lua b/plugin-confs/lsp-format.lua index fc70e5d..106b6a8 100644 --- a/plugin-confs/lsp-format.lua +++ b/plugin-confs/lsp-format.lua @@ -1,2 +1 @@ require("lsp-format").setup {} -require("lspconfig").gopls.setup { on_attach = require("lsp-format").on_attach } diff --git a/plugin-confs/nvim-lint.lua b/plugin-confs/nvim-lint.lua new file mode 100644 index 0000000..185b18a --- /dev/null +++ b/plugin-confs/nvim-lint.lua @@ -0,0 +1,21 @@ +require('lint').linters_by_ft = { + markdown = { 'markdownlint' }, + lua = { 'luacheck', 'luac' }, + vim = { 'vint' }, + sh = { 'shellcheck' }, + pyton = { 'pycodestyle', 'black', 'pydocstyle', 'pylint' }, + json = { 'jsonlint' }, + yaml = { 'yamllint' } +} + +vim.api.nvim_create_autocmd({ "BufWritePost" }, { + callback = function() + -- try_lint without arguments runs the linters defined in `linters_by_ft` + -- for the current filetype + require("lint").try_lint() + + -- You can call `try_lint` with a linter name or a list of names to always + -- run specific linters, independent of the `linters_by_ft` configuration + -- require("lint").try_lint("cspell") + end, +})