1.0.1 • Published 8 years ago
gulp-pug-globbing v1.0.1
gulp-pug-globbing
Globbing with pug the easy way.
Expands pug include and extends statements to allow globbing and placeholders.
Based on gulp-css-globbing.
Install
Install gulp-pug-globbing as a development dependency using npm:
npm install --save-dev gulp-pug-globbingUsage without options
gulpfile
var pug = require('gulp-pug');
var pugGlobbing = require('gulp-pug-globbing');
gulp.task('pug', function(){
gulp.src(['src/index.pug'])
.pipe(pugGlobbing())
.pipe(pug())
.pipe(gulp.dest('build'));
});src/index.pug
//- ...
include ../foo/bar/**/*.pug
//- ...Advanced example
gulp task
gulp.task('pug', function(){
gulp.src(['src/views/**/*.pug'])
.pipe(pugGlobbing({
placeholder: {
'modules': 'src/modules/**/*.pug',
'layout': 'src/layout/**/*',
'default-template': 'src/layout/templates/default.pug',
}
ignore: [
'src/views',
'src/layout/templates'
]
}))
.pipe(pug())
.pipe(gulp.dest('build'));
});page
extends {default-template}
block includes
include ../../utilities/**/*.pug
include ../../base/*.pug
include {modules}
include {layout}
block container
h1 Hello World!template to extend
block includes
doctype html
html
head
meta(charset='utf-8')
title Hello?
body
block containerOptions
gulp-pug-globbing can be called with an options object:
gulp.task('pug', function(){
gulp.src(['src/index.pug'])
.pipe(pugGlobbing({
placeholder: {
'base': 'src/pug/base/*.pug',
'modules': 'src/pug/modules/**/*.pug',
'layout': 'src/pug/layout/**/*',
'default-template': 'src/pug/layout/templates/default.pug',
}
ignore: ['src/pug/layout/templates']
}))
.pipe(pug())
.pipe(gulp.dest('build'));
});ignore
Type: String or Array
Folders gulp-pug-globbing should ignore.
Default: []
placeholder
Type: Object
Placeholders to use within pug files, e.g. {modules}.
Default: {}