stylelint-vscode
stylelint wrapper to easily integrate with Visual Studio Code language server
const stylelintVSCode = ;const TextDocument = ; async { await ; /* => [{ range: { start: {line: 2, character: 14}, end: {line: 2, character: 14} }, message: 'Expected a leading zero (number-leading-zero)', severity: 1, code: 'number-leading-zero', source: 'stylelint' }, { range: { start: {line: 3, character: 9}, end: {line: 3, character: 9} }, message: 'Unexpected named color "red" (color-no-named)', severity: 2, code: 'color-no-named', source: 'stylelint' }] */};
Installation
npm install stylelint-vscode
API
const stylelintVSCode = ;
stylelintVSCode(textDocument [, options])
textDocument: TextDocument
options: Object
(directly passed to stylelint.lint
)
Return: Promise<Array<Object>>
It works like stylelint.lint
, except for:
code
andcodeFilename
option values are derived from aTextDocument
passed to the first argument.- It will be resolved with an
Array
of VS CodeDiagnostic
instances. - It will be rejected (not resolved) when it takes invalid configs.
- In this case, it joins config errors into a single error object by using array-to-error.
- It suppresses
No configuration found
error.- Doing nothing when there is no configuration is a common behavior of editor plugins.
files
option is not supported.
const stylelintVSCode = ; async { await ; /*=> [{ range: { start: {line: 0, character: 1}, end: {line: 0, character: 1} }, message: 'Unknown word (CssSyntaxError)', severity: 1, code: 'CssSyntaxError', source: 'stylelint' }] */};
async { try await ; catch err errname; //=> 'SyntaxError' errmessage; //=> 'Expected option value for rule "indentation"\nInvalid option value "foo" for rule "function-comma-space-before"' errreasons; /* => [ 'Expected option value for rule "indentation"', 'Invalid option value "foo" for rule "function-comma-space-before"' ] */ };
Related project
- vscode-stylelint — A VS Code extension powered by this module
License
ISC License © 2018 Shinnosuke Watanabe