Add to your Node.js dev dependencies:
npm install --savedev gulp-filelist
Add it to your gulp file:
gulp
.src(['awesome.file', 'lame.file'])
.pipe(require('gulp-filelist')('filelist.json'))
.pipe(gulp.dest('out'))
Outputs out/filelist.json
:
[
"awesome.file",
"lame.file"
]
$ npm install gulp-filelist
gulp
.src(['awesome.file', 'lame.file'])
.pipe(require('gulp-filelist')('filelist.json', { absolute: true }))
.pipe(gulp.dest('out'))
Outputs:
[
"/Users/chris/my-project/out/awesome.file",
"/Users/chris/my-project/out/lame.file"
]
gulp
.src(['awesome.file', 'lame.file'])
.pipe(require('gulp-rename')(function(path) { path.dirname = 'foo' }))
.pipe(require('gulp-filelist')('filelist.json', { relative: true }))
.pipe(gulp.dest('out'))
Outputs:
[
"foo/awesome.file",
"foo/lame.file"
]
gulp
.src(['awesome.file', 'lame.file'])
.pipe(require('gulp-filelist')('filelist.json', { flatten: true }))
.pipe(gulp.dest('out'))
Outputs:
[
"awesome.file",
"lame.file"
]
gulp
.src(['directory/awesome.file', 'directory/lame.file'])
.pipe(require('gulp-filelist')('filelist.json', { removeExtensions: true }))
.pipe(gulp.dest('out'))
Outputs:
[
"directory/awesome",
"directory/lame"
]
usage with string template
gulp
.src(['directory/awesome.file', 'directory/lame.file'])
.pipe(require('gulp-filelist')('filelist.json', { destRowTemplate: "/// <amd dependency='@filePath@'/>" }))
.pipe(gulp.dest('out'))
Outputs:
[
"/// <amd dependency='directory/awesome'/>",
"/// <amd dependency='directory/lame'/>"
]
usage with formatter function
function formatter(filePath) {
return filePath.substring(filePath.lastIndexOf('/') + 1) + ': ' + filePath + '\r\n';
}
gulp
.src(['directory/awesome.file', 'directory/lame.file'])
.pipe(require('gulp-filelist')('filelist.json', { destRowTemplate: formatter }))
.pipe(gulp.dest('out'))
Outputs:
[
"awesome: directory/awesome",
"lame: directory/lame"
]