Compiles Sass with the Sass gem and pipes the results into a gulp stream.
To compile Sass with libsass, use gulp-sass
$ npm install --save-dev gulp-ruby-sass
Requires Sass >=3.4.
Use gulp-ruby-sass instead of gulp.src
to compile Sass files.
var gulp = require('gulp');
var sass = require('gulp-ruby-sass');
gulp.task('sass', function () {
return sass('source/file.scss')
.on('error', sass.logError)
.pipe(gulp.dest('result'));
});
Type: String
or Array
A file or glob pattern (source/**/*.scss
) to compile. Ignores files prefixed with an underscore. Directory sources are not supported.
Type: Object
An object containing plugin and Sass options. Available options include:
Type: Boolean
Default: false
Run Sass with bundle exec.
Type: Boolean
Default: false
Initialize and pass Sass sourcemaps to gulp-sourcemaps. Note this option replaces Sass's sourcemap
option.
var gulp = require('gulp');
var sass = require('gulp-ruby-sass');
var sourcemaps = require('gulp-sourcemaps');
gulp.task('sass', function () {
return sass('source/file.scss', { sourcemap: true })
.on('error', sass.logError)
// For inline sourcemaps
.pipe(sourcemaps.write())
// For file sourcemaps
.pipe(sourcemaps.write('maps', {
includeContent: false,
sourceRoot: 'source'
}))
.pipe(gulp.dest('result'));
});
Type: String
Identical to gulp.src
's base
option.
Type: String
Default: the system temp directory as reported by os-tempDir
This plugin compiles Sass files to a temporary directory before pushing them through the stream. Use tempDir
to choose an alternate directory if you aren't able to use the default OS temporary directory.
Type: Boolean
Default: false
Emit a gulp error when Sass compilation fails.
Type: Boolean
Default: false
Log the spawned Sass or Bundler command. Useful for debugging.
Any additional options are passed directly to the Sass executable. The options are camelCase versions of Sass's options parsed by dargs.
Run sass -h
for a complete list of Sass options.
gulp.task('sass', function () {
return sass('source/file.scss', {
precision: 6,
stopOnError: true,
cacheLocation: './',
loadPath: [ 'library', '../../shared-components' ]
})
.on('error', sass.logError)
.pipe(gulp.dest('result'));
});
A convenience function for pretty error logging.
In rare cases you may need to clear gulp-ruby-sass's cache. This sync function deletes all files used for Sass caching. If you've set a custom temporary directory in your task you must pass it to clearCache
.
This plugin wraps the Sass gem for the gulp build system. It does not alter Sass's output in any way. Any issues with Sass output should be reported to the Sass issue tracker.
Before submitting an issue please read the contributing guidelines.
MIT © Sindre Sorhus