Skip to content

jamesallardice/grunt-append-sourcemapping

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

grunt-append-sourcemapping

A Grunt task to append JavaScript sourcemapping URL comments to files. The Google Closure Compiler does not currently append the necessary sourcemapping URL comment to the output it produces, even when you ask it to generate a source map with the create_source_map option. This Grunt plugin will add that comment for you.

Installation

Just install via npm like usual:

npm install grunt-append-sourcemapping

Usage

This task assumes that you are using the Closure Compiler to handle JavaScript minification and source map generation. Chances are, you're using the grunt-closure-compiler plugin to do that, so you'll probably have a task in your Grunt file that looks something like this:

grunt.initConfig({
    "closure-compiler": {
        includeSourcemap: {
            js: [
                "inputFile.js",
                "inputFile2.js"
            ],
            jsOutputFile: "build/lib.min.js",
            options: {
                create_source_map: "build/lib.min.js.map",
                source_map_format: "V3"
            }
        }
    }
});

To append a sourcemapping URL comment at the end of the minified file, you need to tell Grunt to load the new task and then add another section to your config:

grunt.loadNpmTasks("grunt-append-sourcemapping"); // Load the task
grunt.initConfig({
    "closure-compiler": {
        // Closure compiler configuration
    },
    "append-sourcemapping": {
        main: {
            files: {
                "build/lib.min.js": "lib.min.js.map"
            }
        }
    } 
});

This will append the following comment to the end of lib.min.js (see this jQuery bug ticket for full details on why the wrapping multiline comment is necessary - in short, it's a workaround for an Internet Explorer issue):

/*
//@ sourceMappingURL=lib.min.js.map
*/

You can specify any number of files in the files property, and as this is a Grunt multitask you can specify different targets too.

About

Grunt task to append sourcemapping URL comments to JavaScript files

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published