stylelint-processor-arbitrary-tags
A stylelint processor that allows you to lint CSS within arbitrary tags.
The module uses a regular expression to identify code within the specified tags, then passes the code on to stylelint.
By default, it looks for code within <style>
tags (see default options below). But you can change the regular expression to find code within other tags, like {% highlight css %}...{% endhighlight %}
for Jekyll templates, or /* start css */.../* end css */
within a JS file, or who knows what else.
Install
npm install @mapbox/stylelint-processor-arbitrary-tags
Options
startTag
Type: string
that's RegExp-ready
Default:
'[^`\'"]<style[\\s\\S]*?>'
endTag
Type: string
that's RegExp-ready
Default:
'</\\s*?style>'
body
Type: string
that's RegExp-ready
Default:
'[\\s\\S]*?'
fileFilterRegex
Type: array<RegExp|string>
that's an array of regular expressions or strings that describe files that you want to be processed with this module.
Matches will be processed; files that do not match will not be.
Given the following value, only .html
files will be processed:
fileFilterRegex: [/\.html$/]
You can also use regular expression strings instead of regular expression literals. This is necessary if you are using yaml-based configuration and can't use regular expression literals. Yaml variant of example above:
- fileFilterRegex:
- '\.html$'
This is useful when you want to create different settings for HTML and markdown, for instance.
When empty ([]
), every file will pass through the filter and be processed by this module.
Default:
[]
Caveats
Do not use this processor with the no-empty-source
rule. If you do, you will have warnings whenever a file does not contain any matches for your regular expression.