gulp-count
Count files in vinyl streams. Log pretty messages.
This plugin solves a similar problem to gulp-debug but is designed as an actual permanent part of your workflow, not just a debug tool (though it still makes a great debug tool!). As such, it provides more control over logging to customize as needed.
Usage
First, install gulp-count
as a development dependency:
> npm install --save-dev gulp-count
Then, add it to your gulpfile.js
:
var count = ; gulp;
API
gulp-count can be called with a string message template, an options object, or both.
gulp // logs "36 files" // logs "36 HTML files" // logs each path and "found 36 pages"
count(options?)
count(message, options?)
options.message: boolean | string = "<%= files %>"
Template string for total count message, passed through gutil.template
.
Template can use two variables:
counter
- the number of files encountered in this stream,files
- a correctly pluralized string of the format "X file[s]" where X iscounter
.
The template also expands the shorthand "##"
to "<%= counter %>"
.
An explicit false
value will disable the message (use logFiles
or logEmpty
instead).
options.logFiles: boolean | string = false
Whether to log each file path as it is encountered. options.cwd
determines base path for logging.
If a string is provided then it is used as the message template. Template receives two variables:
file
- the current Vinyl file instancepath
- file path resolved relative tooptions.cwd
and colored yellow.
options.logEmpty: boolean | string = false
Whether to log the message when the stream is empty.
If a string is provided then it is used as the message template and receives the same variables as options.message
.
Setting { message: false, logEmpty: true }
will log if and only if the stream is empty.
options.title: string
String prepended to every message to distinguish the output of multiple instances logging at once. A falsy value will print nothing.
options.cwd: string = ""
Current working directory against which file paths are resolved in template strings.
options.logger: (message) => any = gutil.log
Logger function, called with each formatted message. Defaults to gulp-util's log(msg...)
function.
License
MIT © Palantir Technologies