uglify-save-license
Tiny license detector module for the comments
option of UglifyJS
Installation
Install Node and run this command in the root of your project:
npm install uglify-save-license
Usage
First of all, load the uglify-save-license
module.
var saveLicense = require('uglify-save-license');
Pass this module to the comments
option.
var result = UglifyJS.minify('file1.js', {
output: {
comments: saveLicense
}
});
Pass this module to the preserveComments
option.
grunt.initConfig({
uglify: {
my_target: {
options: {
preserveComments: saveLicense
},
src: ['src/app.js'],
dest: 'dest/app.min.js'
}
}
});
How does it works
Coming soon.
Examples
CLI tool example
Main script (uglify-example.js
)
#!/usr/bin/env node
var UglifyJS = require('uglify-js'),
saveLicense = require('uglify-save-license');
var minified = UglifyJS.minify(process.argv[2], {
output: {
comments: saveLicense
}
}).code;
console.log(minified);
Target uncompressed file
(function(win, doc){
var string = 'Hello World! :' + doc.title;
console.log(string);
}(window, document));
Command
node uglify-example.js [TARGET_FILE_NAME]
Output
!function(o,l){var n="Hello World! :"+l.title;console.log(n)}(window,document);
module.exports = (grunt) ->
grunt.loadNpmTasks 'grunt-contrib-uglify'
grunt.loadNpmTasks 'grunt-contrib-concat'
grunt.loadNpmTasks 'grunt-contrib-clean'
saveLicense = require 'uglify-save-license'
grunt.initConfig
uglify:
target:
options:
preserveComments: saveLicense
files: [
expand: true
flatten: true
cwd: 'path/to/src'
src: ["**/*.js"]
dest: 'tmp/'
]
concat:
script:
src: ['tmp/*.js']
dest: 'path/to/build/app.js'
clean:
tmpfiles: ['tmp']
grunt.registerTask 'default' ['uglify', 'concat', 'clean']
License
Copyright (c) 2013 Shinnosuke Watanabe All rights reserved.
Licensed under the MIT license.