UNPKG

gulp-armapbo

Version:

The plugin for Gulp which allows to pack ArmA pbo files from sources.

134 lines (94 loc) 3.46 kB
[![node][node-image]][node-url] [![npm][npm-image]][npm-url] [![Travis branch][travis-image]][travis-url] [![Coveralls branch][coveralls-image]][coveralls-url] [![Dependencies][david-image]][david-url] # Gulp Arma Pbo plugin The plugin's goal is to create Arma2/Arma3 pbo files from sources using [Gulp](http://gulpjs.com). ## Installation ``` npm install gulp-armapbo ``` ## Usage ``` const gulp = require('gulp'); const pbo = require('gulp-armapbo'); gulp.task('pack', () => { return gulp.src('pbo-contents/**/*') .pipe(pbo.pack({ fileName: 'my-file.pbo', extensions: [{ name: 'author', value: 'Author Name' }, { name: 'mission', value: 'Mission Name' }], compress: [ '**/*.sqf', 'mission.sqm', 'description.ext' ] })) .pipe(gulp.dest('pbo-packed/')); }); ``` ## Usage with TypeScript ``` import * as gulp from 'gulp'; import {pack, StreamOptions} from 'gulp-armapbo'; gulp.task('pack', () => { return gulp.src('pbo-contents/**/*') .pipe(pack({ fileName: 'my-file.pbo', extensions: [{ name: 'author', value: 'Author Name' }, { name: 'mission', value: 'Mission Name' }], compress: [ '**/*.sqf', 'mission.sqm', 'description.ext' ] } as StreamOptions)) .pipe(gulp.dest('pbo-packed/')); }); ``` ## Plugin API pbo.pack([options]) ### Options Required: `no` #### options.fileName Name of the pbo file to create, e.g. `someFileName.pbo`; if no value specified, the name of the `$cwd` is used Type: `string` Default: `process.cwd()` Required: `no` #### options.extensions Adds pbo file header extension fields. You are free to place any arbitrary information here. Type: array of `{name:<string>, value:<string>}` objects, e.g. `{name: 'author', value: 'Author Name' }` Default: `undefined` Required: `no` #### options.compress Files to apply data compression to Type: `string` (glob pattern) or array of `strings` (glob patterns), e.g. `compress: 'mission.sqm'` or `compress: '**/*.sqf'` or `compress: ['**/*.sqf', '**/*.hpp', 'mission.sqm']` Default: `undefined` Required: `no` #### options.verbose Print compression information to console Type: `bool` Default: `true` Required: `no` #### options.progress Print the current file compression progress to console Type: `bool` Default: `true` Required: `no` [node-url]: https://nodejs.org [node-image]: https://img.shields.io/node/v/gulp-armapbo.svg [npm-url]: https://www.npmjs.com/package/gulp-armapbo [npm-image]: https://img.shields.io/npm/v/gulp-armapbo.svg [travis-url]: https://travis-ci.org/winseros/gulp-armapbo-plugin [travis-image]: https://img.shields.io/travis/winseros/gulp-armapbo-plugin/master.svg [coveralls-url]: https://coveralls.io/github/winseros/gulp-armapbo-plugin [coveralls-image]: https://img.shields.io/coveralls/winseros/gulp-armapbo-plugin/master.svg [david-url]: https://david-dm.org/winseros/gulp-armapbo-plugin [david-image]: https://david-dm.org/winseros/gulp-armapbo-plugin/master.svg