Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.27 KB | None | 0 0
  1. var gulp = require("gulp"),
  2. browserSync = require('browser-sync'),
  3. jade = require('gulp-jade'),
  4. compass = require('gulp-compass'),
  5. plumber = require('gulp-plumber'),
  6. autoprefixer = require('gulp-autoprefixer'),
  7. pathsFactory = ['dev/jade/pages/*.jade', 'dev/scss/pages/*.scss'],
  8. pathsWatch = ['dev/jade/**/*.jade', 'dev/scss/**/*.scss', 'production/css/*.css'],
  9. pathsProd = ['production/css/*.css', 'production/*.html'];
  10.  
  11. // Сервер
  12. gulp.task('server', function () {
  13. browserSync({
  14. port: 9000,
  15. server: {
  16. baseDir: 'production'
  17. }
  18. });
  19. });
  20.  
  21. // Настройка jade
  22. gulp.task('jade', function() {
  23. var YOUR_LOCALS = {}; // можно подключить JSON с данными
  24.  
  25. gulp.src(pathsFactory[0]) // Пути где лежат .jade файлы сохранены в переменную
  26. .pipe(plumber())
  27. .pipe(jade({
  28. locals: YOUR_LOCALS,
  29. pretty: '\t' // Отступы в 1 таб
  30. }))
  31. .pipe(gulp.dest('./production')); // Пути куда сохранять .html файлы
  32. });
  33.  
  34. // Настройка compass
  35. gulp.task('compass', function() {
  36. gulp.src(pathsFactory[1])
  37. .pipe(plumber())
  38. .pipe(compass({
  39. config_file: './config.rb',
  40. css: 'production/css',
  41. sass: 'dev/scss/pages'
  42. }))
  43. .pipe(gulp.dest('production/css'));
  44. });
  45.  
  46. // Автоматическое добавление префиксов CSS3
  47. gulp.task('autopref', function () {
  48. return gulp.src(pathsProd[0])
  49. .pipe(plumber())
  50. .pipe(autoprefixer({
  51. browsers: ['last 2 versions', 'IE 9'],
  52. cascade: false
  53. }))
  54. .pipe(gulp.dest('production/css'));
  55. });
  56.  
  57. // Слежка
  58. gulp.task('watch', function () {
  59. gulp.watch(pathsProd).on('change', browserSync.reload); // пути к файлам за которыми
  60. gulp.watch(pathsWatch[0], ['jade']); // нужно следить сохранены в переменные
  61. gulp.watch(pathsWatch[1], ['compass']);
  62. gulp.watch(pathsWatch[2], ['autopref']);
  63. });
  64.  
  65. // Задача по-умолчанию
  66. gulp.task('default', ['server', 'watch']);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement