A simple tool to check for unused Sass variables in a directory.
npm install find-unused-sass-variables --save-dev
find-unused-sass-variables folder [, folder2...] --ignore "$my-var,$my-second-var" -e scss -e css
# or
fusv folder [, folder2...]
const fusv = require('find-unused-sass-variables')
// 'directory' is a folder
let unused = fusv.find('directory')
// Array of unused variables
console.log(unused.unused);
// Array<{ name: string, line: string, file: string }>
/*
* [
* {
* name = '$foo';
* file = 'file where this variable can be found';
* line = 'line of file';
* },
* {
* ....
* }
* ]
*/
console.log(unused.total);
// Total number of variables in the files
// ignoring variables
const ignoredVars = ['$my-var', '$my-second-var']
unused = fusv.find('directory', { ignore: ignoredVars })
// specifing file extensions
unused = fusv.find('directory', { fileExtensions: ['css','scss']})
// asynchronous usage
let unused = await fusv.findAsync('directory')
// or like a Promise
let unused = fusv.findAsync('directory').then(result => {
console.log(unused.unused);
})
dir
: stringoptions
: optional options Object
Returns an object with unused
and total
. unused
has the array of unused variables and total
has the sum of all variables in the files (unused and used ones).
- as
find(dir, options)
Returns a Promise which resolves result; is the same as find(dir, options)
result.
Array of strings of the variables to ignore, e.g. ['$my-var', '$my-second-var']
Array of file extensions to search for unused variables in. e.g. ['scss']
Disable or enable fusv
with the fusv-disable
and fusv-enable
comments:
$used-variable-1: #666;
// fusv-disable
$unused-variable: #coffee;
// fusv-enable
$used-variable-2: #ace;
- The tool's logic is pretty "dumb"; if you use the same name for a variable in different files or namespaces, then it won't distinguish between them.
- The tool only looks for
.scss
files currently.