wip: notes
This commit is contained in:
48
gulpfile.js
Normal file
48
gulpfile.js
Normal file
@@ -0,0 +1,48 @@
|
||||
const { watch, src, dest, parallel, series } = require("gulp")
|
||||
const asciidoctor = require("@asciidoctor/gulp-asciidoctor")
|
||||
const grayMatter = require("gulp-gray-matter")
|
||||
const tap = require("gulp-tap")
|
||||
const rename = require("gulp-rename")
|
||||
|
||||
function convertAdoc () {
|
||||
return src("notes/**/*.adoc")
|
||||
.pipe(grayMatter())
|
||||
.pipe(asciidoctor({
|
||||
standalone: false
|
||||
}))
|
||||
.pipe(tap(function(file) {
|
||||
file.contents = Buffer.concat([
|
||||
new Buffer("---\nasciiDoctor: true\ntemplateEngineOverride: false\n---\n"),
|
||||
file.contents
|
||||
])
|
||||
}))
|
||||
.pipe(dest("notes"))
|
||||
}
|
||||
|
||||
function extractFrontMatterFromAdoc () {
|
||||
return src("notes/**/*.adoc")
|
||||
.pipe(grayMatter())
|
||||
.pipe(tap(function(file) {
|
||||
file.contents = new Buffer(JSON.stringify(file.data))
|
||||
}))
|
||||
.pipe(rename(function(path) {
|
||||
path.extname = ".11tydata.json";
|
||||
}))
|
||||
.pipe(dest("notes"))
|
||||
}
|
||||
|
||||
function processAdoc (cb) {
|
||||
parallel(
|
||||
convertAdoc,
|
||||
extractFrontMatterFromAdoc)(cb)
|
||||
}
|
||||
|
||||
function watchAdoc () {
|
||||
watch('notes/**/*.adoc', processAdoc)
|
||||
};
|
||||
|
||||
exports.processAdoc = processAdoc;
|
||||
|
||||
exports.default = parallel(
|
||||
processAdoc,
|
||||
watchAdoc)
|
||||
Reference in New Issue
Block a user