mirror of
https://github.com/aminnairi/dotfiles.git
synced 2026-09-14 18:02:13 +02:00
added configuration for nvim lint & nvim conform
This commit is contained in:
+92
-78
@@ -178,7 +178,7 @@ require("lazy").setup({
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"williamboman/mason.nvim",
|
"williamboman/mason.nvim",
|
||||||
opts = {},
|
opts = {}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"williamboman/mason-lspconfig.nvim",
|
"williamboman/mason-lspconfig.nvim",
|
||||||
@@ -192,7 +192,9 @@ require("lazy").setup({
|
|||||||
"volar",
|
"volar",
|
||||||
"cssls",
|
"cssls",
|
||||||
"cssmodules_ls",
|
"cssmodules_ls",
|
||||||
"prismals"
|
"prismals",
|
||||||
|
"yamlls",
|
||||||
|
"marksman"
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -353,11 +355,7 @@ require("lazy").setup({
|
|||||||
lspconfig.volar.setup({
|
lspconfig.volar.setup({
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
filetypes = {
|
filetypes = {
|
||||||
"typescript",
|
"vue"
|
||||||
"javascript",
|
|
||||||
"javascriptreact",
|
|
||||||
"typescriptreact",
|
|
||||||
"vue",
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
@@ -382,97 +380,113 @@ require("lazy").setup({
|
|||||||
})
|
})
|
||||||
|
|
||||||
lspconfig.prismals.setup({
|
lspconfig.prismals.setup({
|
||||||
|
filetypes = {
|
||||||
|
"prisma"
|
||||||
|
},
|
||||||
capabilities = capabilities
|
capabilities = capabilities
|
||||||
})
|
})
|
||||||
|
|
||||||
|
lspconfig.yamlls.setup({
|
||||||
|
capabilities = capabilities,
|
||||||
|
filetypes = {
|
||||||
|
"yaml"
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
lspconfig.marksman.setup({
|
||||||
|
capabilities = capabilities,
|
||||||
|
filetypes = {
|
||||||
|
"markdown"
|
||||||
|
}
|
||||||
|
})
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"jay-babu/mason-null-ls.nvim",
|
"WhoIsSethDaniel/mason-tool-installer.nvim",
|
||||||
dependencies = {
|
dependencies = {
|
||||||
"williamboman/mason.nvim",
|
"williamboman/mason.nvim",
|
||||||
},
|
},
|
||||||
opts = {
|
opts = {
|
||||||
ensure_installed = {
|
ensure_installed = {
|
||||||
"stylua",
|
"stylua",
|
||||||
"eslint",
|
"luacheck",
|
||||||
"stylelint",
|
"stylelint",
|
||||||
"prisma"
|
"shellcheck",
|
||||||
|
"rustfmt",
|
||||||
|
"phpcbf",
|
||||||
|
"phpstan",
|
||||||
|
"jq",
|
||||||
|
"jsonlint",
|
||||||
|
"htmlbeautifier",
|
||||||
|
"eslint_d",
|
||||||
|
"blade-formatter",
|
||||||
|
"markdownlint",
|
||||||
|
"yamllint",
|
||||||
|
"ansible-lint"
|
||||||
},
|
},
|
||||||
},
|
auto_update = true,
|
||||||
|
run_on_start = true,
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"jose-elias-alvarez/null-ls.nvim",
|
"stevearc/conform.nvim",
|
||||||
event = "VeryLazy",
|
|
||||||
dependencies = {
|
dependencies = {
|
||||||
"jay-babu/mason-null-ls.nvim",
|
"WhoIsSethDaniel/mason-tool-installer.nvim",
|
||||||
},
|
},
|
||||||
config = function()
|
events = { "BufReadPre", "BufNewFile" },
|
||||||
local null_ls = require("null-ls")
|
opts = {
|
||||||
|
formatters_by_ft = {
|
||||||
|
lua = { "stylua" },
|
||||||
|
css = { "stylelint" },
|
||||||
|
sh = { "shellcheck" },
|
||||||
|
rust = { "rustfmt" },
|
||||||
|
php = { "php_cs_fixer", "phpcbf" },
|
||||||
|
json = { "jq" },
|
||||||
|
html = { "htmlbeautifier" },
|
||||||
|
javascript = { "eslint" },
|
||||||
|
typescript = { "eslint" },
|
||||||
|
javascriptreact = { "eslint" },
|
||||||
|
typescriptreact = { "eslint" },
|
||||||
|
vue = { "eslint" },
|
||||||
|
blade = { "blade-formatter" },
|
||||||
|
yaml = { "ansible_lint" }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"mfussenegger/nvim-lint",
|
||||||
|
dependencies = {
|
||||||
|
"WhoIsSethDaniel/mason-tool-installer.nvim",
|
||||||
|
},
|
||||||
|
events = { "BufReadPre", "BufWritePost" },
|
||||||
|
init = function()
|
||||||
|
local lint = require("lint")
|
||||||
|
|
||||||
null_ls.setup({
|
vim.api.nvim_create_autocmd({ "TextChanged", "TextChangedI", "BufEnter", "BufReadPre", "BufWritePost", "CursorHold", "CursorHoldI" }, {
|
||||||
sources = {
|
callback = function()
|
||||||
null_ls.builtins.formatting.stylua.with({
|
lint.try_lint()
|
||||||
filetypes = {
|
end,
|
||||||
"lua",
|
|
||||||
},
|
|
||||||
}),
|
|
||||||
-- ESLint
|
|
||||||
null_ls.builtins.formatting.eslint.with({
|
|
||||||
filetypes = {
|
|
||||||
"javascript",
|
|
||||||
"typescript",
|
|
||||||
"javascriptreact",
|
|
||||||
"typescriptreact",
|
|
||||||
"tsx",
|
|
||||||
"vue",
|
|
||||||
},
|
|
||||||
}),
|
|
||||||
null_ls.builtins.diagnostics.eslint.with({
|
|
||||||
filetypes = {
|
|
||||||
"javascript",
|
|
||||||
"typescript",
|
|
||||||
"javascriptreact",
|
|
||||||
"typescriptreact",
|
|
||||||
"tsx",
|
|
||||||
"vue",
|
|
||||||
},
|
|
||||||
}),
|
|
||||||
null_ls.builtins.code_actions.eslint.with({
|
|
||||||
filetypes = {
|
|
||||||
"javascript",
|
|
||||||
"typescript",
|
|
||||||
"javascriptreact",
|
|
||||||
"typescriptreact",
|
|
||||||
"tsx",
|
|
||||||
"vue",
|
|
||||||
},
|
|
||||||
}),
|
|
||||||
-- StyleLint
|
|
||||||
null_ls.builtins.diagnostics.stylelint.with({
|
|
||||||
filetypes = {
|
|
||||||
"scss",
|
|
||||||
"less",
|
|
||||||
"css",
|
|
||||||
"sass",
|
|
||||||
},
|
|
||||||
}),
|
|
||||||
null_ls.builtins.formatting.stylelint.with({
|
|
||||||
filetypes = {
|
|
||||||
"scss",
|
|
||||||
"less",
|
|
||||||
"css",
|
|
||||||
"sass",
|
|
||||||
},
|
|
||||||
}),
|
|
||||||
-- prisma
|
|
||||||
null_ls.builtins.formatting.prismaFmt.with({
|
|
||||||
filetypes = {
|
|
||||||
"prisma"
|
|
||||||
}
|
|
||||||
})
|
|
||||||
},
|
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
|
config = function()
|
||||||
|
local lint = require("lint")
|
||||||
|
|
||||||
|
lint.linter_by_ft = {
|
||||||
|
lua = { "luacheck" },
|
||||||
|
javascript = { "eslint" },
|
||||||
|
typescript = { "eslint" },
|
||||||
|
javascriptreact = { "eslint" },
|
||||||
|
typescriptreact = { "eslint" },
|
||||||
|
vue = { "eslint" },
|
||||||
|
sh = { "shellcheck" },
|
||||||
|
fish = { "fish" },
|
||||||
|
json = { "jsonlint", },
|
||||||
|
markdown = { "markdownlint" },
|
||||||
|
php = { "php", "phpcs", "phpstan" },
|
||||||
|
css = { "stylelint" },
|
||||||
|
yaml = { "yamllint" }
|
||||||
|
}
|
||||||
|
end
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"nvim-treesitter/nvim-treesitter",
|
"nvim-treesitter/nvim-treesitter",
|
||||||
|
|||||||
Reference in New Issue
Block a user