base-cli-process
v0.1.19
Published
Normalizers for common argv commands handled by the base-cli plugin. Also pre-processes the given object with base-cli-schema before calling `.process()`
Downloads
83,726
Maintainers
Readme
base-cli-process
Normalizers for common argv commands handled by the base-cli plugin. Also pre-processes the given object with base-cli-schema before calling
.process()
Install
Install with npm:
$ npm install --save base-cli-process
Usage
Normalizes the given object with base-cli-schema before calling the .process
method from base-cli.
var Base = require('base');
var cli = require('base-cli-process');
var app = new Base();
app.use(cli());
var pkg = require('./package');
app.cli.process(pkg, function(err) {
if (err) throw err;
});
API
.asyncHelpers
Load and register async template helpers from a glob or filepath.
Example
$ app --asyncHelpers="foo.js"
.config
Persist a value to a namespaced config object in package.json. For example, if you're using verb
, the value would be saved to the verb
object.
Params
- {Object}: app
Example
# display the config
$ app --config
# set a boolean for the current project
$ app --config=toc
# save the cwd to use for the current project
$ app --config=cwd:foo
# save the tasks to run for the current project
$ app --config=tasks:readme
.cwd
Set the --cwd
to use in the current project.
Example
$ app --cwd=foo
.data
Define data to be used for rendering templates.
Example
$ app --data=foo:bar
# {foo: 'bar'}
$ app --data=foo.bar:baz
# {foo: {bar: 'baz'}}
$ app --data=foo:bar,baz
# {foo: ['bar', 'baz']}}
.del
Delete a value from app
.
Example
# delete a value from package.json config (e.g. `verb` object)
$ app --del=config.foo
# delete a value from in-memory options
$ app --del=option.foo
# delete a property from the global config store
$ app --del=globals.foo
.dest
Set a dest
path on app.options
.
Example
$ app --dest=foo
.enable
Enable a configuration setting. Also pass -c
to save the value to the verb.config
object in package.json.
Example
$ app --enable toc
.engines
Alias for engines
.engines
Load engines from a filepath or glob pattern.
Example
$ app --engines="./foo.js"
.get
Get a value from app
and set it on app.cache.get
in memory, allowing the value to be re-used by another command, like --set
.
Example
$ app --get=pkg.name
.help
Show a help menu.
Example
$ app --help
.helpers
Load and register async template helpers from a glob or filepath.
Example
$ app --helpers="foo.js"
.option
Set options. This is the API-equivalent of calling app.option('foo', 'bar')
.
Example
$ app --option=foo:bar
.options
Set options. This is the API-equivalent of calling app.option('foo', 'bar')
.
Example
$ app --options=foo:bar
.plugins
Load plugins from a filepath or glob pattern.
Example
$ app --plugins="./foo.js"
.run
For tasks to run, regardless of other options passed on the command line.
Example
$ app --run
.set
Set the given value, or a value was previously cached by --get
.
Example
$ app --set=pkg.name:foo
# example: persist `pkg.name` to `store.data.name`
$ app --get=pkg.name --set=store.name
.get
Get a value from app
and set it on app.cache.get
in memory, allowing the value to be re-used by another command, like --set
.
Example
$ app --get=pkg.name
.toc
Enable or disable Table of Contents rendering
Example
# enable
$ app --toc
# or
$ app --toc=true
# disable
$ app --toc=false
About
Related projects
- base-cli: Plugin for base-methods that maps built-in methods to CLI args (also supports methods from a… more | homepage
- base-config: base-methods plugin that adds a
config
method for mapping declarative configuration values to other 'base… more | homepage - base: base is the foundation for creating modular, unit testable and highly pluggable node.js applications, starting… more | homepage
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Contributors
| Commits | Contributor | | --- | --- | | 72 | jonschlinkert | | 1 | slang800 |
Building docs
(This project's readme.md is generated by verb, please don't edit the readme directly. Any changes to the readme must be made in the .verb.md readme template.)
To generate the readme, run the following command:
$ npm install -g verbose/verb#dev verb-generate-readme && verb
Running tests
Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
$ npm install && npm test
Author
Jon Schlinkert
License
Copyright © 2017, Jon Schlinkert. Released under the MIT License.
This file was generated by verb-generate-readme, v0.4.3, on March 12, 2017.