Всем привет. Простите за вопрос, который больше просит написать код за ТСа, но не приложу ума, как сделать..
В общем, логика gulp.js такая:
Есть файлы в 3 папках ./haml/p; ./haml/l; ./haml/i
В них находятся файлы .haml. Далее, нужно собрать эти файлы в соответствующие ./_p ; ./_l ; ./_i директории, но собирает он их в одну строку. Я решил ко всему в добавок применить prettify для html. В моем коде ниже мы сохраняем каждый haml файл сначала в ./haml/html/(p|l|i), а потом prettify в нужную директорию.
В идеале, все должно выполнятся в два таска, но как это сделать я не могу додуматься.. Вот код, который работает:
var gulp = require('gulp');
var haml = require('gulp-haml');
var prettify = require('gulp-prettify');
gulp.task('layouts', function() {
gulp.src('./haml/layouts/*.haml')
.pipe(haml())
.pipe(gulp.dest('./haml/html/_layouts/'));
});
gulp.task('prettify_layouts', function(){
gulp.src('./haml/html/_layouts/*.html')
.pipe(prettify({indent_size: 2}))
.pipe(gulp.dest('./_layouts/'));
});
gulp.task('includes', function() {
gulp.src('./haml/includes/*.haml')
.pipe(haml())
.pipe(gulp.dest('./haml/html/_includes/'));
});
gulp.task('prettify_includes', function(){
gulp.src('./haml/html/_includes/*.html')
.pipe(prettify({indent_size: 2}))
.pipe(gulp.dest('./_includes/'));
});
gulp.task('posts', function() {
gulp.src('./haml/posts/*.haml')
.pipe(haml())
.pipe(gulp.dest('./haml/html/_posts/'));
});
gulp.task('prettify_posts', function(){
gulp.src('./haml/html/_posts/*.html')
.pipe(prettify({indent_size: 2}))
.pipe(gulp.dest('./_posts/'));
});
gulp.task('default', function() {
gulp.start('includes','prettify_includes', 'layouts', 'prettify_layouts', 'posts', 'prettify_posts');
});
простите за такой вопрос и помогите, пожалуйста