Apply XSLT stylesheets to XML documents.
This plugin requires Grunt ~0.4.1
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-xsltproc --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-xsltproc');
In your project's Gruntfile, add a section named xsltproc
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
xsltproc: {
options: {
// Task-specific options go here.
},
your_target: {
// Target-specific file lists and/or options go here.
},
},
})
Type: String
Path to the XSLT stylesheet to apply to the files.
Type: Object
Pass an object of parameter name/value pairs to the stylesheet. Parameters are passed directly to the xsltproc
call with the --param
flag.
Type: Object
Pass an object of string parameter name/value pairs to the stylesheet. Parameters are passed directly to the xsltproc
call with the --stringparam
flag.
grunt.initConfig({
xsltproc: {
options: {
stylesheet: 'test/fixtures/compiler.xsl'
},
compile: {
files: {
'tmp/compile.html': ['test/fixtures/compile.xml']
}
}
}
})
grunt.initConfig({
xsltproc: {
options: {
stylesheet: 'test/fixtures/compiler.xsl'
},
compile: {
files: [{
expand: true,
cwd: 'test/fixtures',
src: '*.xml',
dest: 'tmp',
ext: '.html'
}]
}
}
})
grunt.initConfig({
xsltproc: {
options: {
stylesheet: 'test/fixtures/compiler.xsl',
params: {
'fav': '/catalogue/album[@id="3"]/title'
}
},
compile: {
files: {
'tmp/compile.html': ['test/fixtures/compile.xml']
}
}
}
})
grunt.initConfig({
xsltproc: {
options: {
stylesheet: 'test/fixtures/compiler.xsl',
stringparams: {
'title': 'My Music'
}
},
compile: {
files: {
'tmp/compile.html': ['test/fixtures/compile.xml']
}
}
}
})
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.
- 2013-09-13 v0.2.1 Add documentation for passing in parameters. Update
package.json
. - 2013-09-13 v0.2.0 Pass params to the stylesheet via the options object.
- 2013-09-08 v0.1.0 Initial release.