mirror of https://github.com/curbengh/hexo-yam
80 lines
2.5 KiB
Markdown
80 lines
2.5 KiB
Markdown
# Hexo-all-minifier
|
||
[![npm version](https://badge.fury.io/js/hexo-all-minifier.svg)](https://badge.fury.io/js/hexo-all-minifier)
|
||
[![NPM Dependencies](https://david-dm.org/unhealthy/hexo-all-minifier.svg)](https://www.npmjs.com/package/hexo-all-minifier)
|
||
|
||
All in one. Minifier & Optimization plugin for [Hexo](https://hexo.io).
|
||
Since most of the optimize plugin for [HEXO](https://hexo.io) have been deprecated, and [HEXO](https://hexo.io) has upgraded to 3.XX, so I decide to implement this plugin.
|
||
|
||
## Installation
|
||
``` bash
|
||
$ npm install hexo-all-minifier --save
|
||
```
|
||
|
||
## Components
|
||
Integrate all the official minifier plugins of HEXO and a imagemin plugin:
|
||
- [hexo-html-minifier](https://github.com/hexojs/hexo-html-minifier), which is based on [HTMLMinifier](https://github.com/kangax/html-minifier)
|
||
- [hexo-clean-css](https://github.com/hexojs/hexo-clean-css), which is based on [clean-css](https://github.com/jakubpawlowicz/clean-css)
|
||
- [hexo-uglify](https://github.com/hexojs/hexo-uglify), which is based on [UglifyJS](http://lisperator.net/uglifyjs/)
|
||
- [hexo-imagemin](https://github.com/vseventer/hexo-imagemin), which is based on [imagemin](https://github.com/imagemin/imagemin)
|
||
|
||
Thanks for their works.
|
||
|
||
## Options
|
||
``` yaml
|
||
html_minifier:
|
||
enable: true
|
||
exclude:
|
||
```
|
||
- **enable** - Enable the plugin. Defaults to `true`.
|
||
- **exclude**: Exclude files
|
||
|
||
----------
|
||
|
||
``` yaml
|
||
css_minifier:
|
||
enable: true
|
||
exclude:
|
||
- '*.min.css'
|
||
```
|
||
- **enable** - Enable the plugin. Defaults to `true`.
|
||
- **exclude**: Exclude files
|
||
|
||
----------
|
||
|
||
``` yaml
|
||
js_minifier:
|
||
enable: true
|
||
mangle: true
|
||
output:
|
||
compress:
|
||
exclude:
|
||
- '*.min.js'
|
||
```
|
||
- **enable** - Enable the plugin. Defaults to `true`.
|
||
- **mangle**: Mangle file names
|
||
- **output**: Output options
|
||
- **compress**: Compress options
|
||
- **exclude**: Exclude files
|
||
|
||
----------
|
||
|
||
```yaml
|
||
image_minifier:
|
||
enable: true
|
||
interlaced: false
|
||
multipass: false
|
||
optimizationLevel: 2
|
||
pngquant: false
|
||
progressive: false
|
||
```
|
||
- **enable** - Enable the plugin. Defaults to `true`.
|
||
- **interlaced** - Interlace gif for progressive rendering. Defaults to `false`.
|
||
- **multipass** - Optimize svg multiple times until it’s fully optimized. Defaults to `false`.
|
||
- **optimizationLevel** - Select an optimization level between 0 and 7. Defaults to `2`.
|
||
- **pngquant** - Enable [imagemin-pngquant](https://github.com/imagemin/imagemin-pngquant) plugin. Defaults to `false`.
|
||
- **progressive** - Lossless conversion to progressive. Defaults to `false`.
|
||
|
||
|
||
|
||
To be continued
|