Banner.js单行/多行注释横幅获取工具

联合创作 · 2023-09-22 03:20

Banner.js

向文件中添加注释。 基于 package.json 获取单行/多行注释横幅。

安装

npm install bannerjs --save

单行结果:

/*! bannerjs v1.0.8 | MIT (c) 2016 kenny wang <wowohoo@qq.com> | https://github.com/jaywcjlove/bannerjs */

多行结果:

/*!
 * bannerjs v1.0.0
 * Add a banner to a string. Get one-line/multi-line comment banner based on package.json.
 * 
 * Copyright (c) 2016 kenny wang <wowohoo@qq.com>
 * https://github.com/jaywcjlove/bannerjs
 *
 * Licensed under the MIT license.
 */

Structure

package.json中应定义以下键:

{
  "name": "bannerjs",
  "version": "1.0.0",
  "description": "Add a banner to a string. Get one-line/multi-line comment banner based on package.json.",
  "license": "MIT",
  "author": {
    "name": "kenny wang"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/jaywcjlove/bannerjs.git"
  }
}

author 值可以被定义为对象或简单的字符串。

使用

设置

  • bannerjs.multibanner(option) 多行注释

  • bannerjs.onebanner(option) 单行注释

var banner = require('bannerjs');
bannerjs.multibanner({
  author:"banner.js",
  homepage:"http://....",
  name:"banner.js",
  license:"MIT",
  version:1.2.3,
  description:"description"
})

在gulp中使用

  • bannerjs.multibanner() 多行注释

  • bannerjs.onebanner() 单行注释

var gulp = require('gulp');
var banner = require('gulp-banner');
var bannerjs = require('bannerjs');

gulp.task('default', function() {
    gulp.src('./test.js')
        .pipe(banner(bannerjs.multibanner()))
        .pipe(gulp.dest('dist/'));
});

在Node中使用

var fs = require('fs');
var banner = require('bannerjs');
var uglify = require('uglify-js')

var code = fs.readFileSync('src/test.js', 'utf-8')
var minified = banner.onebanner() + '\n' + uglify.minify(code, {
  fromString: true,
  output: {
    ascii_only: true
  }
}).code;
fs.writeFileSync('src/test.js', minified);

命令行帮助

Usage: bannerjs

Pipe Usage: bannerjs

Options:

 -m --multi     Output multi-line results
 -o --one       Output one-line results

你可以在Linux/Mac命令行中使用

cat my-js.js | bannerjs -o | uglify-js > my-js.min.js

在Npm Script中使用

{
  "scripts":{
    "build:min": "cat my-js.js | uglifyjs | bannerjs -o > dist/my-js.min.js",
    "build:dist": "cat my-js.js | bannerjs -m | uglifyjs -b beautify=true --comments 'all' > dist/my-js.js "
  }
}

许可协议

MIT license

浏览 5
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报