gulp-minify
DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/gulp-minify package

3.1.0 • Public • Published

gulp-minify

Minify JavaScript with terser.

Build Status NPM version

Note

The latest version of gulp-minify is using terser to minify files, this may cause some incompatible issues with earlier language versions for now, see https://github.com/hustxiaoc/gulp-minify/issues/27.

So gulp-minify@es5 is for the earlier language versions if your project is not ready for the ECMAScript 6 yet.

Installation

Install package with NPM and add it to your development dependencies:

npm install --save-dev gulp-minify

Usage

Basic usage: the following minifies every *.js and *.mjs files to *-min.js and *-min.mjs respectively. Note that the original files are preserved.

const minify = require('gulp-minify');
 
gulp.task('compress', function() {
  gulp.src(['lib/*.js', 'lib/*.mjs'])
    .pipe(minify())
    .pipe(gulp.dest('dist'))
});

Options can be added to control more finely what's happening, for example:

const minify = require('gulp-minify');
 
gulp.task('compress', function() {
  gulp.src('lib/*.js')
    .pipe(minify({
        ext:{
            src:'-debug.js',
            min:'.js'
        },
        exclude: ['tasks'],
        ignoreFiles: ['.combo.js', '-min.js']
    }))
    .pipe(gulp.dest('dist'))
});

Options

  • ext An object that specifies output src and minified file extensions.

    • src

      The suffix string of the filenames that output source files ends with.

    • min

      • When string: The suffix string of the filenames that output minified files ends with.
      • When Array: The regex expressions to be replaced with input filenames. For example: [/\.(.*)-source\.js$/, '$1.js']
  • exclude

    Will not minify files in the dirs.

  • noSource Will not output the source code in the dest dirs.

  • ignoreFiles

    Will not minify files which matches the pattern.

  • mangle

    Pass false to skip mangling names.

  • output

    Pass an object if you wish to specify additional output options. The defaults are optimized for best compression.

  • compress

    Pass an object to specify custom compressor options. Pass false to skip compression completely.

  • preserveComments

    A convenience option for options.output.comments. Defaults to preserving no comments.

    • all

      Preserve all comments in code blocks

    • some

      Preserve comments that start with a bang (!) or include a Closure Compiler directive (@preserve, @license, @cc_on)

    • function

      Specify your own comment preservation function. You will be passed the current node and the current comment and are expected to return either true or false.

Readme

Keywords

none

Package Sidebar

Install

npm i gulp-minify

Weekly Downloads

29,351

Version

3.1.0

License

ISC

Unpacked Size

9.42 kB

Total Files

4

Last publish

Collaborators

  • taojie