module.exports = function(grunt) {
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
        watch: {
            files: ['*'],
            tasks: ['generate']
        }
    });

    grunt.loadNpmTasks("grunt-beep");
    grunt.loadNpmTasks('grunt-contrib-watch');

    grunt.registerTask('generate', 'Generate blog from static files', function() {
        console.log('generating..');
        if(Math.random() > 0.5) {
            grunt.log.write('\x07').write('♪');
        }
    });

    grunt.registerTask('fail', function() {
        console.log('failing');
        return false;
    });
};
@@ -409,101 +409,342 @@
     
-    if(Math.random() %3E 0.5) %7B%0A            grunt.log.write('%5Cx07').write('%E2%99%AA');%0A        %7D%0A    %7D
+%7D);%0A%0A    grunt.registerTask('preview', 'Preview generated blog', function() %7B%0A        console.log('previewing...');%0A    %7D);%0A%0A    grunt.registerTask('push', 'Push generated site to the remote', function() %7B%0A        console.log('pushing...');%0A    %7D);%0A%0A    grunt.registerTask('publish', 'Generate and push the site', %5B'generate', 'push'%5D
 );%0A%0A
@@ -815,16 +815,19 @@
 'failing
+...
 ');%0A    

Add task stubs