compiled articles in gulp

This commit is contained in:
didier amyot committed 2016-03-13 21:48:53 -04:00
1 parent 3f75921194
commit 80f4a937b6
3 files changed
+57 -1

No files matched your search

+36 -1
View File
@@ -2,11 +2,16 @@ var gulp = require('gulp');
var bower = require('gulp-bower');
var help = require('gulp-task-listing');
var clean = require('gulp-clean');
var toml = require('gulp-toml');
var sass = require('gulp-sass');
var rename = require("gulp-rename");
var yaml = require('gulp-yaml');
var template = require('gulp-template');
var wrapper = require('gulp-wrapper');
var rename = require("gulp-rename");
var webserver = require('gulp-webserver');
var marked = require('marked');
var _ = require('lodash');
gulp.task('help', help);
@@ -48,8 +53,36 @@ gulp.task('template-dev', function () {
.pipe(gulp.dest('.'));
});
gulp.task('compile-articles', function(){
gulp.task('default', ['bower', 'sass', 'compile-results']);
var transformArticle = function(article){
var isMarkdownKey = /markdown/i;
_.each(article, function(section, sectionName){
_.each(section, function(value, key){
if(isMarkdownKey.test(key) && _.isString(value)){
section[key] = marked(value);
}
});
});
return JSON.stringify(article, null, 4);
};
gulp.src('data/articles/**/*.toml.md')
.pipe(toml({to: transformArticle}))
.pipe(wrapper({
header: "define(['m', '_'], function (m, _ ) {\nreturn ",
footer: ';\n});\n'
}))
.pipe(rename(function(path){
path.basename = path.basename.replace(/\.toml$/i, '');
path.extname = '.js';
return path;
}))
.pipe(gulp.dest('./script/articles/'));
});
gulp.task('default', ['bower', 'sass', 'compile-results', 'compile-articles']);
gulp.task('prod', ['default', 'template-prod']);
@@ -63,8 +96,10 @@ gulp.task('webserver', function(){
}));
});
gulp.task('dev', ['default', 'webserver', 'template-dev', 'bower'], function(){
gulp.watch('./scss/*.scss', ['sass']);
gulp.watch('*.tmpl.html', ['template-dev']);
gulp.watch('./data/articles/**/*', ['compile-articles']);
return gulp.watch('./data/*.yaml', ['compile-results']);
});