mirror of
https://github.com/LazyVim/LazyVim.git
synced 2025-06-21 16:39:06 +02:00
feat(eslint): add option to disable eslint auto format (#4225)
## Description This adds an option to disable eslint's autoformatting. The reasons for not wanting an auto format by eslint are: 1. It is generally not recommended to use a linter as a formatter as highlighted by https://typescript-eslint.io/users/what-about-formatting/#:~:text=We%20recommend%20against%20using%20ESLint,dprint%2C%20or%20an%20equivalent%20instead 2. A personal preference not to have a linter change my code which I'm sure other people share. 3. As highlighted in the link above, eslint auto format can be quite slow. I would even argue that this should be the default, but I've left it as is in order not to break anyone's config or ruffle anyone's feathers. ## Checklist - [x] I've read the [CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md) guidelines.
This commit is contained in:
parent
fd361d07a2
commit
2d2e425d25
1 changed files with 12 additions and 0 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
if lazyvim_docs then
|
||||||
|
-- Set to false to disable auto format
|
||||||
|
vim.g.lazyvim_eslint_auto_format = true
|
||||||
|
end
|
||||||
|
|
||||||
|
local auto_format = vim.g.lazyvim_eslint_auto_format == nil or vim.g.lazyvim_eslint_auto_format
|
||||||
|
|
||||||
return {
|
return {
|
||||||
{
|
{
|
||||||
"neovim/nvim-lspconfig",
|
"neovim/nvim-lspconfig",
|
||||||
|
@ -9,11 +16,16 @@ return {
|
||||||
settings = {
|
settings = {
|
||||||
-- helps eslint find the eslintrc when it's placed in a subfolder instead of the cwd root
|
-- helps eslint find the eslintrc when it's placed in a subfolder instead of the cwd root
|
||||||
workingDirectories = { mode = "auto" },
|
workingDirectories = { mode = "auto" },
|
||||||
|
format = auto_format,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
setup = {
|
setup = {
|
||||||
eslint = function()
|
eslint = function()
|
||||||
|
if not auto_format then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
local function get_client(buf)
|
local function get_client(buf)
|
||||||
return LazyVim.lsp.get_clients({ name = "eslint", bufnr = buf })[1]
|
return LazyVim.lsp.get_clients({ name = "eslint", bufnr = buf })[1]
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue