cutepack

0.1.1 • Public • Published

cutepack

功能简单的JS打包工具

  • 简介

把多个JS文件,压缩并依次打包进一个JS文件,压缩采用uglify-js引擎,多个模块文件打包到一个文件里,减少http请求消耗 :)

  • 安装

npm install cutepack -g
(需要node0.8版本)
老版本cutepack@0.0.1,与最新版本配置差异较大

  • 使用

方法一:配置好默认命名的cp-config.js文件,命令行运行 cutepack
方法二:新建自定义命名的文件xxx,命令行运行 cutepack xxx

cp-config.js示例:

exports.config = [
	{
	    paths:{
			src:[
				'./test1.js-n', // -n参数,表示 此文件不压缩
				'./test.js'    
			],
			tar: '../tar.js'  //输出的目标文件
		}
	},
	{
	    paths:{
			src:[
				'./test1.js-n', 
				'./test.js'    
			],
			tar: '../tar.js' 
		},
	    options:{
	        strict_semicolons: false, //设为true时,代码需要写严格的分号
	        mangle_options: {
	            //defines: { DEBUG: ['onename', 'false'], VERSION: ['string', '1.0'] },
	            except:['onename']  // 保留指定的变量名,函数名..不被修改
	        },
	        squeeze_options:{},
	        gen_options: {
	            ascii_only: false,  // pass true if you want to encode non-ASCII characters as \uXXXX.
	            inline_script: false // – pass true to escape occurrences of </script> in strings
	        }
	    }
	}	
]

说明:
paths数组 -- 为需要压缩打包的文件路径列表和目标文件路径。路径相对于cp-config.js所在的目录
options -- 为压缩参数配置,例如保留关键字,转换中文等。没特殊要求,options可以不写

  • 局限性

    1、只支持同一磁盘文件,相对路径形式,非http等线上文件。

    2、不支持css文件压缩打包,不支持整个目录打包输出。

    3、仅支持压缩打包多个指定的JS文件到一个文件中,满足最简单实用的需求。

    4、默认处理的文件并非特大文件,不会造成读写大文件导致内存溢出。

    5、没有处理常见的模块依赖。

change log

  • v0.1.1

支持多文件打包压缩到不同的目标文件,并兼容前一版本配置参数。2013/6/25 15:34:38

  • v0.1.0

配置文件名由原来的build.js改为cp-config.js,以便与其他文件做明显区分。2013/6/6 13:43:06

修改配置文件中paths字段设置。2013/6/6 13:43:06

修复压缩引擎默认去掉文件前后分号,可能引起的“undefined is not a function”错误。2013/6/14 17:57:48

  • v0.0.1

build.js中增加options配置项,可指定压缩时不改变某些关键词,转义非ASCII字符为\uXXXX字符形式。 2012-10-29

可配置参数-n,不压缩某文件(例如已经压缩过的文件,不需要重复压缩) 2012-10-26

最初功能实现 2012-10-22

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
0.1.10latest

Version History

VersionDownloads (Last 7 Days)Published
0.1.10
0.1.00
0.0.10
0.0.20

Package Sidebar

Install

npm i cutepack

Weekly Downloads

0

Version

0.1.1

License

BSD

Last publish

Collaborators

  • warmhug