API/api.medcify.app/node_modules/pm2-multimeter/README.markdown

107 lines
2.7 KiB
Markdown
Raw Normal View History

2022-09-26 06:11:44 +00:00
multimeter
==========
Control multiple ANSI progress bars on the terminal.
![multibar example output](http://substack.net/images/screenshots/multibar.png)
![multimeter](http://substack.net/images/multimeter.png)
example
=======
````javascript
var multimeter = require('multimeter');
var multi = multimeter(process);
multi.drop(function (bar) {
var iv = setInterval(function () {
var p = bar.percent();
bar.percent(p + 1);
if (p >= 100) clearInterval(iv);
}, 25);
});
````
methods
=======
var multimeter = require('multimeter');
var multi = multimeter(stream, ...)
-----------------------------------
Create a new multimeter handle on the supplied stream/process objects, which
will be passed directly to [charm](https://github.com/substack/node-charm).
If you pass in a charm object that will be used instead of creating a new one.
var bar = multi(x, y, params)
-----------------------------
Create a new progress bar at `(x,y)` with `params` which default to:
* width : 10
* before : '['
* after : '] '
* solid : { background : 'blue', foreground : 'white', text : '|' }
* empty : { background : null, foreground : null, text : ' ' }
If `y` is negative or `'-0'` it will be treated as a relative coordinate.
var bar = multi.rel(x, y, params)
---------------------------------
Create a new progress bar at an absolute `x` and relative `y` coordinate with
respect to the present `multi.offset`.
multi.drop(params, cb)
----------------------
Create a new progress bar at the present cursor location. The `bar` object will
be passed to `cb(bar)` once the cursor location has been determined.
multi.on(...), multi.removeListener(...), multi.destroy(...), multi.write(...)
------------------------------------------------------------------------------
Call event emitter functions on the underlying `charm` object.
multi.offset
------------
This getter/setter controls the positioning for relative progress bars.
Increment this value whenever you write a newline to the stream to prevent the
pending progress bars from drifting down from their original positions.
bar.percent(p, msg=p + ' %')
----------------------------
Update the progress bar to `p` percent, a value between 0 and 100, inclusive.
The text to the right of the progress bar will be set to `msg`.
bar.ratio(n, d, msg=n + ' / ' + d)
----------------------------------
Update the progress bar with a ratio, `n/d`.
The text to the right of the progress bar will be set to `msg`.
attributes
==========
multi.charm
-----------
The [charm](https://github.com/substack/node-charm) object used internally to
draw the progress bars.
install
=======
With [npm](http://npmjs.org) do:
npm install multimeter