Skip to content

lkmorlan/gulp-ruby-sass

 
 

Repository files navigation

gulp-ruby-sass Build Status

Compiles Sass with the Sass gem and pipes the results into a gulp stream.
To compile Sass with libsass, use gulp-sass

Install

$ npm install --save-dev gulp-ruby-sass

Requires Sass >=3.4.

Usage

sass(source, options)

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'));
});

source

Type: String or Array

A file or glob pattern (source/**/*.scss) to compile. Ignores files prefixed with an underscore. Directory sources are not supported.

options

Type: Object

An object containing plugin and Sass options. Available options include:

bundleExec

Type: Boolean
Default: false

Run Sass with bundle exec.

sourcemap

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'));
});
base

Type: String

Identical to gulp.src's base option.

tempDir

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.

emitCompileError

Type: Boolean
Default: false

Emit a gulp error when Sass compilation fails.

verbose

Type: Boolean
Default: false

Log the spawned Sass or Bundler command. Useful for debugging.

Sass options

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'));
});

sass.logError(err)

A convenience function for pretty error logging.

sass.clearCache([tempDir])

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.

Issues

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.

License

MIT © Sindre Sorhus

About

Compile Sass to CSS with Ruby Sass

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 96.4%
  • CSS 3.6%