Compile Sass to CSS with Ruby Sass
This is slower than gulp-sass, but more stable and feature-rich.
Issues with the output should be reported on the Sass issue tracker.
$ npm install --save-dev gulp-ruby-sass
You also need to have Ruby and Sass installed. If you're on OS X or Linux you probably already have Ruby; test with ruby -v
in your terminal. When you've confirmed you have Ruby, run gem install sass
to install Sass.
var gulp = require('gulp');
var sass = require('gulp-ruby-sass');
gulp.task('default', function () {
return gulp.src('src/scss/app.scss')
.pipe(sass({sourcemap: true, sourcemapPath: '../scss'}))
.pipe(gulp.dest('dist/css'));
});
Include all the files Sass needs to compile CSS in your gulp.src()
glob, including the Gemfile and Gemfile.lock if necessary.
Use gulp-watch to watch and recompile your files.
Note to users upgrading from < 0.6.0 versions: 0.6.0 removes a loophole that implicitly loaded all files in the same directory as the file being processed. Edit your gulp.src()
globs to include every file you need to make available to the Sass command.
Type: Boolean
Default: false
Enable Source Map. Requires Sass >= 3.3.0 and the dest
option.
Type: string
A relative path from the output CSS directory to the Sass source directory as seen by your web server.
Because gulp-ruby-sass can't know your CSS destination directory or your server setup you have to give a little extra information to help the browser find sourcemaps. Examples:
- If source is
site/scss
, destination issite/css
, and you're serving fromsite
:{ sourcemapPath: '../scss' }
. - If source is
app/styles
, destination is.tmp/styles
, and you're serving both.tmp
andapp
:{ sourcemapPath: '.' }
.
Type: Boolean
Default: false
Show a full traceback on error.
Type: Boolean
Default: false
on Windows, otherwise true
Use Unix-style newlines in written files.
Type: Boolean
Default: false
Just check syntax, don't evaluate.
Type: String
Default: nested
Output style. Can be nested
, compact
, compressed
, expanded
.
Type: Number
Default: 3
How many digits of precision to use when outputting decimal numbers.
Type: Boolean
Default: false
Silence warnings and status messages during compilation.
Type: Boolean
Default: false
Make Compass imports available and load project configuration (config.rb
located close to the gulpfile.js
).
Type: Boolean
Default: false
Emit output that can be used by the FireSass Firebug plugin.
Type: Boolean
Default: false
Emit comments in the generated CSS indicating the corresponding source line.
Type: String|Array
Add one or more Sass import paths.
Type: String|Array
Require one or more Ruby libraries before running Sass.
Type: String
Default: .sass-cache
The path to put cached Sass files.
Type: Boolean
Default: false
Don't cache to sassc files.
Type: Boolean
Default: false
Run sass
with bundle exec: bundle exec sass
. For bundler to work correctly you must add the Gemfile and Gemfile.lock to your gulp.src()
glob.
MIT © Sindre Sorhus