htmlcommenttemplate
HTML files updater with Comment format Template Tags.
Install
$ npm install htmlcommenttemplate
Usage
var htmlcommenttemplate = require( "htmlcommenttemplate" );htmlcommenttemplate( pathToTemplatesDir )( pathToHTMLFile(s) );
returns promise instance object( Q promise - http://documentup.com/kriskowal/q/ )
var updating = htmlcommenttemplate( pathToTemplatesDir )( pathToHTMLFile(s) );updating.then( function( result ){ result.success // []string (path of updated file)} );
Example
├── Templates
│ ├── analytics.tmpl
│ └── base.tmpl
└── htdocs
├── index.html
└── resources
├── dummy.css
├── dummy.gif
└── dummy.js
sources
index.html
<!-- InstanceBegin template="/Templates/base.tmpl" --> <!-- InstanceBeginEditable name="main" --> /index.html <!-- InstanceEndEditable --> <!-- InstanceEnd -->
analytics.tmpl
<!-- TemplateBeginEditable name="doc_info" --> <!-- TemplateEndEditable --> <!-- TemplateBeginEditable name="head" --><!-- TemplateEndEditable --> <!-- TemplateBeginEditable name="body" --><!-- TemplateEndEditable --> <!-- Google Analytics: change UA-XXXXX-X to be your site's ID. -->
base.tmpl
<!-- InstanceBegin template="/Templates/analytics.tmpl" --> <!-- InstanceBeginEditable name="doc_info" --> <!-- TemplateBeginEditable name="doc_info" --> Document <!-- TemplateEndEditable --> <!-- InstanceEndEditable --> <!-- InstanceBeginEditable name="head" --> <!-- InstanceEndEditable --> <!-- InstanceBeginEditable name="body" --> common header HOME <!-- TemplateBeginEditable name="main" --><!-- TemplateEndEditable --> <!-- TemplateBeginEditable name="aside" --> HOME <!-- TemplateEndEditable --> common footer <!-- InstanceEndEditable --> <!-- InstanceEnd -->
╭( ・ㅂ・)و グッ !
$ node> require( "htmlcommenttemplate" )( "./Templates" )( "./htdocs/**/*.html" );
result : )
index.html
<!-- InstanceBegin template="/Templates/base.tmpl" --> <!-- InstanceBeginEditable name="doc_info" --> Document <!-- InstanceEndEditable --> <!-- InstanceBeginEditable name="head" --> <!-- InstanceEndEditable --> common header HOME <!-- InstanceBeginEditable name="main" --> /index.html <!-- InstanceEndEditable --> <!-- InstanceBeginEditable name="aside" --> HOME <!-- InstanceEndEditable --> common footer <!-- Google Analytics: change UA-XXXXX-X to be your site's ID. --> <!-- InstanceEnd -->