gulp-scss-lint で Sass の .scss ファイルへ Lint を実行するための環境を構築したので、その手順をご紹介します。
gulp-scss-lint は内部で scss-lint gem を利用しているため、まず scss-lint をインストールします。
gem install scss_lint
もしくは bundler を利用している場合は、
Gemfile
source "http://rubygems.org"
gem "scss_lint", "0.54.0"
というようなファイルを追加して bundle install しましょう。
scss-lint をインストールしたら、次は gulp-scss-lint をインストールしましょう。
npm install gulp-scss-lint --save-dev
特定のディレクトリ以下の .scss ファイルに対して Lint 実行する gulp タスクのサンプルコードは以下の通りです。
const gulp = require('gulp');
const scssLint = require('scss-lint');
const ROOT_DIR = '/app';
gulp.task('scss-lint', () => {
return gulp.src(
[
`${ROOT_DIR}/hoge/assets/stylesheets/*.scss`,
`${ROOT_DIR}/fuga/assets/stylesheets/*.scss`,
])
.pipe(scssLint({
'maxBuffer': 10000
})
);
});
lint 導入直後はエラーや警告が大量に出ると思うので、その場合は maxBuffer に大きい値を指定するとよいです。
僕は Atom エディタを使ってるので linter-scss-lint パッケージもインストールしました。
apm install linter-scss-lint
以上です。