grunt-haml-php
Process HAML templates using MtHaml, a PHP port of Haml., (*1)
Getting Started
This plugin requires Grunt ~0.4.1
, (*2)
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:, (*3)
npm install grunt-haml-php --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:, (*4)
grunt.loadNpmTasks('grunt-haml-php');
The "haml" task
This plugin requires composer in order to install PHP dependencies. Please follow the installation instructions before installing this plugin., (*5)
Overview
In your project's Gruntfile, add a section named haml
to the data object passed into grunt.initConfig()
., (*6)
grunt.initConfig({
haml: {
options: {
// Task-specific options go here.
},
your_target: {
// Target-specific file lists and/or options go here.
},
},
})
Options
options.target
Type: String
Default value: php
, (*7)
Set the target output generated by MtHaml. Valid options are php
and twig
., (*8)
options.writeError
Type: Boolean
Default value: true
, (*9)
If enabled, write any compile errors to the output file. Otherwise do nothing., (*10)
options.enableDynamicAttributes
Type: Boolean
Default value: true
, (*11)
Controls the enable_dynamic_attrs
option of MtHaml. Disabling this removes the requirement for the MtHaml runtime., (*12)
Usage Examples
Simple file mapping
grunt.initConfig({
haml: {
compile: {
files: {
'dest/file1.html': ['src/file1.haml'],
},
},
},
})
All haml files
This example compiles all haml files in a directory and adds a php extension., (*13)
grunt.initConfig({
haml: {
compile: {
files: [{
expand: true,
src: ['src/templates/**/*.haml'],
dest: 'dest/templates',
ext: '.php'
}],
},
},
})
Contributing
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., (*14)
Release History
- 12/9/2013 - v0.2.1 - Catch all php errors, regardless of system settings
- 11/20/2013 - v0.2.0 - Add option for writing errors to output file
- 11/14/2013 - v0.1.0 - Initial release.