Advertisement
Guest User

Untitled

a guest
May 25th, 2015
280
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.07 KB | None | 0 0
  1. var gulp = require('gulp'); // Gulp itself
  2. var less = require('gulp-less'); // Compiling LESS
  3. var watch = require('gulp-watch'); // Watch for files that changed
  4. var filter = require('gulp-filter'); // Filters the pipeline
  5. var plumber = require('gulp-plumber'); // Handles errors without breaking pipeline
  6. var minifyCss = require('gulp-minify-css'); // Minify CSS
  7. var sourcemaps = require('gulp-sourcemaps'); // Generates source maps
  8. var autoprefixer = require('gulp-autoprefixer'); // Post process CSS
  9. var browserSync = require('browser-sync').create(); // Live reload server
  10.  
  11. // Paths to LESS files and destination for CSS
  12. // [Note: we are bypassing LESS files prepended with
  13. // an underscore which are files that we only import
  14. // to other LESS files]
  15. var paths = {
  16. less: ['public/less/*.less','!public/less/_*.less'],
  17. dest: ['public/stylesheets']
  18. };
  19.  
  20. // By default 'gulp' would run this task
  21. gulp.task('default', ['less']);
  22.  
  23. // This task 'gulp less' will compile all LESS files from the
  24. // LESS directory
  25. gulp.task('less', function(done) {
  26. return gulp.src(paths.less)
  27. .pipe(plumber())
  28. .pipe(sourcemaps.init())
  29. .pipe(less({
  30. paths: ['.']
  31. }))
  32. .pipe(minifyCss())
  33. .pipe(autoprefixer({ cascade: false }))
  34. .pipe(sourcemaps.write('source', {includeContent: true}))
  35. .pipe(gulp.dest(paths.dest[0]))
  36. .on('end', done);
  37. });
  38.  
  39. // This task 'gulp watch' will start a server, opens in the browser, and
  40. // compile LESS files as they are changed
  41. gulp.task('watch', function() {
  42. browserSync.init({
  43. // Please change this proxy to the file path you use for local dev
  44. proxy: "<YOUR LOCAL DEV PATH>"
  45. });
  46. return gulp.src(paths.less)
  47. .pipe(watch(paths.less, {verbose: true}))
  48. .pipe(plumber())
  49. .pipe(sourcemaps.init())
  50. .pipe(less({
  51. paths: ['.']
  52. }))
  53. .pipe(minifyCss())
  54. .pipe(autoprefixer({ cascade: false }))
  55. .pipe(sourcemaps.write('source', {includeContent: true}))
  56. .pipe(gulp.dest(paths.dest[0]))
  57. .pipe(filter('**/*.css'))
  58. .pipe(browserSync.reload({stream: true}));
  59. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement