"use strict";
var jade = require('jade'),
    fs = require('fs-extra'),
    async = require('async'),
    path = require('path');


module.exports = function(ctx, done){
    if(!ctx.pages){
        return done();
    }

    async.parallel(Object.keys(ctx.pages).map(function(src){
        return function(cb){
            var dest = ctx.pages[src].dest;
            async.waterfall([
                function prepare(callback){
                    fs.mkdirs(path.dirname(dest), callback);
                },
                function read(_, callback){
                    fs.readFile(src, 'utf-8', callback);
                },
                function render(buf, callback){
                    var opts = {
                        'filename': src,
                        'url': function(p){
                            return ctx.config.url + p;
                        },
                        'pretty': true
                    };
                    jade.render(buf, opts, callback);
                },
                function write(buf, callback){
                    ctx.writeFile(dest, buf, callback);
                }
            ], cb);
        };
    }), done);
};

@@ -125,16 +125,17 @@
 th');%0A%0A%0A
+%0A
 module.e
@@ -320,18 +320,39 @@
     
-var dest =
+module.exports.render(ctx, src,
  ctx
@@ -367,16 +367,23 @@
 rc%5D.dest
+, done)
 ;%0A      
@@ -380,24 +380,102 @@
 e);%0A        
+%7D;%0A    %7D), done);%0A%7D;%0A%0Amodule.exports.render = function(ctx, src, dest, done)%7B%0A
     async.wa
@@ -484,24 +484,16 @@
 rfall(%5B%0A
-        
         
@@ -532,24 +532,16 @@
         
-        
 fs.mkdir
@@ -581,35 +581,19 @@
         
- 
-       %7D,%0A        
+%7D,%0A
         
@@ -632,24 +632,16 @@
         
-   
-     
 fs.readF
@@ -681,33 +681,19 @@
     
-        %7D,%0A      
+%7D,%0A
         
   fu
@@ -680,34 +680,32 @@
      %7D,%0A        
-  
 function render(
@@ -716,32 +716,24 @@
  callback)%7B%0A
-        
             
@@ -761,24 +761,16 @@
         
-        
 'filenam
@@ -794,24 +794,16 @@
         
- 
-       
 'url': f
@@ -814,24 +814,16 @@
 ion(p)%7B%0A
-        
         
@@ -877,35 +877,19 @@
         
-    
-    %7D,%0A        
+%7D,%0A
         
@@ -927,27 +927,11 @@
     
-      
-  
 %7D;%0A
-        
     
@@ -968,32 +968,24 @@
  callback);%0A
-        
         %7D,%0A 
@@ -991,24 +991,16 @@
         
- 
-       
 function
@@ -1034,24 +1034,16 @@
         
-   
-     
 ctx.writ
@@ -1082,55 +1082,15 @@
     
-    
-    
 %7D%0A    
-        %5D, cb);%0A        %7D;%0A    %7D)
+%5D
 , do
@@ -1088,17 +1088,16 @@
     %5D, done);%0A%7D;
-%0A

Make it accessible elsewheres