stylelint-lsp
v2.0.0
Published
A stylelint language server
Downloads
822
Maintainers
Readme
stylelint-lsp
stylelint-lsp is an implementation of the Language Server Protocol for stylelint. It supports the following features:
- Document formatting, like running
stylelint --fix
on the file. - Commands to disable stylelint rules inline, above the line, for the entire file, or surrounding a block.
- Linting on change or on save
Formatting (ie, stylelint --fix
) can be configured to run automatically on
save, in response to format requests, or run manually using a command.
Client Implementations
- coc-stylelintplus: a client for coc.nvim
- nvim-lspconfig: configs for neovim's built-in lsp support
Settings
- autoFixOnFormat (default
false
) - automatically apply fixes in response to format requests. - autoFixOnSave (default
false
) - automatically apply fixes on save. - config (default
null
) - stylelint config to use. - configFile (default
null
) - path to stylelint config file. - enable (default
true
) - if false, disable linting and auto-formatting. - validateOnSave (default
false
) - lint on save. - validateOnType (default
true
) - lint after changes.
If neither config nor configFile are specified, stylelint will attempt to automatically find a config file based on the location of the file you are editing.
If both validateOnSave and validateOnType are set to false
, no
linting will occur but auto-fixes can still be applied if you have it enabled.
validateOnSave is automatically enabled if you enable autoFixOnSave
because revalidation must occur after fixes are applied. You may wish to
explicitly turn on validateOnSave if you are using another editor extension
that will make changes to the file on save, otherwise, diagnostic messages from
stylelint may be out-of-date after a save (ie, may point to the wrong line or
may have been fixed by the automatic changes on save, etc).
Note that v2 of stylelint-lsp no longer supports configOverrides because the latest version of stylelint no longer supports it.
Inspiration
Some ideas were borrowed from vscode-eslint and coc-eslint.