gulp-listfiles
v0.1.0
Published
Create a list of files and perform an action on each file in the list then write the results to a file.
Downloads
92
Readme
gulp-listfiles
Create a list of files and perform an action on each file in the list then write the results to a file.
Getting Started
This plugin is a gulp version of grunt-listfiles.
If you haven't used Gulp before, be sure to check out the Getting Started guide, as it explains how to create a Gulpfile as well as install and use Gulp plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install gulp-listfiles --save-dev
Options
filename
Type: String
Default: unnamed.txt
Destination filename.
banner
Type: String
Default: null
Prefix the destination file with the given banner, with a linebreak inbetween.
footer
Type: String
Default: null
Postfix the destination file with the given footer, with a prepended linebreak.
eol
Type: String
Choices: 'lf'
, 'cr'
, 'crlf'
Default: 'lf'
The linefeed character you would like to use for the destination file.
prefix
Type: String
Default: null
A prefix string to prepend to each file that is found.
postfix
Type: String
Default: null
A postfix string to append to each file that is found.
postfixLastLine
Type: String
Default: null
A postfix string to append to the last file that is found.
replacements
Type: Array
Default: []
This option will hold all your pattern/replacement pairs. A pattern/replacement pair should contain key:value pairs containing:
- pattern
String
orRegex
- replacement
String
orFunction
var listfiles = require('gulp-listfiles');
var options = {
filename: 'output.txt',
replacements: [{
pattern: /\/(asdf|qwer)\//ig,
replacement: '"$1"'
}, {
pattern: ',',
replacement: ';'
}, {
pattern: /(file)(_)([\S]*?)(_)(test)/gi,
replacement: function (match, p1, p2, p3, p4, p5, offset, string) {
return [p1, p3, p5].join('-');
}
}]
};
gulp.task('listfiles', function () {
return gulp.src(['src/**/*.js'], {read: false})
.pipe(listfiles(options))
.pipe(gulp.dest('tmp'));
Note
If specifying a function as a parameter for the replacemnt please see the documentation at https://developer.mozilla.org for more details. If the pattern is a string, only the first occurrence will be replaced, as stated on String.prototype.replace.
Usage Examples
Example Config
var listfiles = require('gulp-listfiles');
var options = {
filename: 'output.txt',
banner: '/**\n' +
' * list files banner\n' +
' */\n' +
'{\n' +
'\t[',
footer: '\t]\n' +
'}',
eol: 'crlf',
prefix: '\t\t\'',
postfix: '\',',
postfixLastLine: '\''
};
gulp.task('listfiles', function () {
return gulp.src(['src/**/*.js'], {read: false})
.pipe(listfiles(options))
.pipe(gulp.dest('tmp/'));
Contributing
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Gulp.
Release History
- 2016-05-30 v0.1.0 Initial release.