gulp-gray-matter
A gulp plugin for extracting data header from file contents using gray-matter.
"See the benchmarks. gray-matter is 20-30x faster than front-matter."
(@jonschlinkert)
About
gulp-gray-matter is a plugin for gulp, to extract data
headers from file contents using gray-matter.
The extracted data is set as a property of the file object for further processing.
You can customize the property name and also use nested properties (via
object-path).
If the file object already has data attached on the defined property, existing
data will be merged recursively with extracted data (using
merge). You can define a custom
function for setting data to change this behavior.
There are further custom options and of course you can also use all
gray-matter options.
Setup and usage
Install gulp-gray-matter
using npm
:
npm i gulp-gray-matter
In your gulpfile.js
:
var gulp = require('gulp'),
gulpGrayMatter = require('gulp-gray-matter');
gulp.task('default', function() {
return gulp.src('./src/**.*')
.pipe(gulpGrayMatter({ }))
.pipe(gulp.dest('./dest'));
});
A common workflow, after extracting front matter, could be using a template
rendering plugin like gulp-jade.
Options
Beside its own options, gulp-gray-matter also supports all gray-matter options:
delims
, eval
, lang
and parser
property
String
Default: 'data'
file object property for setting data. can also be a nested property name like
foo.bar.baz
.
remove
Boolean
Default: true
Whether data header should be removed from file contents or not.
trim
Boolean
Default: true
Whether file contents should be trimmed after removing file header or not.
(has no effect if options.remove
is false
.)
setData
Function
Default:
function setData(oldData, newData) {
return require('merge').recursive(oldData, newData);
}
If there is already data attached to the file object on the property defined
with options.property
, existing data will be recursively merged with extracted
data. Set your own function to change this behavior.
License
MIT © 2016 Simon Lepel
Before version 2.2.2, @jakwings was the
original author and owner of the npm package gulp-gray-matter.