tasks/assemble.js
function(assemble, next) {
      grunt.verbose.writeln(('\n' + 'Assembling pages...').yellow);

      async.forEach(assemble.options.pages.slice(), function(page, done) {
        grunt.verbose.writeln(require('util').inspect(page));

        build(page, assemble, function(err, result) {
          grunt.log.write('Assembling ' + (page.dest).cyan + ' ');
          if (err) {
            grunt.verbose.write(' ');
            grunt.log.error();
            grunt.warn(err);
            done(false);
            return;
          }
          // Run any plugins for the 'render:post:page' stage
          var params = {
            grunt: grunt,       // the `grunt` object
            assemble: assemble, // the `assemble` object
            page: page,         // the raw page
            content: result     // the rendered page
          };
          assemble.plugins.runner('render:post:page', params)(function() {
            // Write the file.
            file.write(page.dest, params.content);
            grunt.verbose.writeln('Assembled ' + (page.dest).cyan + ' OK'.green);
            grunt.log.notverbose.ok();
            done();
          });
        }); // build

      }, function() {
        grunt.log.ok(((assemble.options.pages).length).toString() + ' pages assembled.');
        next(assemble);
      });
    }
function(assemble, next) {
      grunt.verbose.writeln(('\n' + 'Assembling pages...').yellow);

      async.forEach(assemble.options.pages.slice(), function(page, done) {
        grunt.verbose.writeln(require('util').inspect(page));

        build(page, assemble, function(err, result) {
          grunt.log.write('Assembling ' + (page.dest).cyan + ' ');
          if (err) {
            grunt.verbose.write(' ');
            grunt.log.error();
            grunt.warn(err);
            done(false);
            return;
          }
          // Run any plugins for the 'render:post:page' stage
          var params = {
            grunt: grunt,       // the `grunt` object
            assemble: assemble, // the `assemble` object
            page: page,         // the raw page
            content: result     // the rendered page
          };
          assemble.plugins.runner('render:post:page', params)(function() {
            // Write the file.
            file.write(page.dest, params.content);
            grunt.verbose.writeln('Assembled ' + (page.dest).cyan + ' OK'.green);
            grunt.log.notverbose.ok();
            done();
          });
        }); // build

      }, function() {
        grunt.log.ok(((assemble.options.pages).length).toString() + ' pages assembled.');
        next(assemble);
      });
    }
function ( assemble , next ) { grunt . verbose . writeln ( ( '\n' + 'Assembling pages...' ) . yellow ) ; async . forEach ( assemble . options . pages . slice ( ) , function ( page , done ) { grunt . verbose . writeln ( require ( 'util' ) . inspect ( page ) ) ; build ( page , assemble , function ( err , result ) { grunt . log . write ( 'Assembling ' + ( page . dest ) . cyan + ' ' ) ; if ( err ) { grunt . verbose . write ( ' ' ) ; grunt . log . error ( ) ; grunt . warn ( err ) ; done ( false ) ; return ; } // Run any plugins for the 'render:post:page' stage var params = { grunt : grunt , // the `grunt` object assemble : assemble , // the `assemble` object page : page , // the raw page content : result // the rendered page } ; assemble . plugins . runner ( 'render:post:page' , params ) ( function ( ) { // Write the file. file . write ( page . dest , params . content ) ; grunt . verbose . writeln ( 'Assembled ' + ( page . dest ) . cyan + ' OK' . green ) ; grunt . log . notverbose . ok ( ) ; done ( ) ; } ) ; } ) ; // build } , function ( ) { grunt . log . ok ( ( ( assemble . options . pages ) . length ) . toString ( ) + ' pages assembled.' ) ; next ( assemble ) ; } ) ; }
Render pages
@param  {[type]}   assemble [description]
@param  {Function} next     [description]
@return {[type]}            [description]
Render pages