Source code
Revision control
Copy as Markdown
Other Tools
module.exports = {
meta: {
type: 'suggestion',
docs: {
description:
'Indentation tabs are not allowed, even in multiline strings, due to WPT lint rules. This rule simply disallows tabs anywhere.',
},
schema: [],
},
create: context => {
const sourceCode = context.getSourceCode();
return {
Program: node => {
for (let lineIdx = 0; lineIdx < sourceCode.lines.length; ++lineIdx) {
const line = sourceCode.lines[lineIdx];
const matches = line.matchAll(/\t/g);
for (const match of matches) {
context.report({
node,
loc: { line: lineIdx + 1, column: match.index },
message: 'Tabs not allowed.',
// fixer is hard to implement, so not implemented.
});
}
}
},
};
},
};