config-comments
Parse argument commands/options from code comments using esprima and minimist.
Install
Install with npm:
$ npm install config-comments --save
Usage
var configComments = require('config-comments');
configComments('my-app', string[, options]);
Example
Assuming we have the following in file lib.js
:
// my-app: foo bar baz */
function foo(str) {
return str;
}
function bar(str) {
/* my-app: --disable=qux */
return str;
}
We would pass lib.js
as a string to configComments
:
var config = configComments('my-app', str);
Result
{
abc: {
_: [ 'foo', 'bar', 'baz' ],
disable: 'qux'
}
}
API
configComments(keywords, string[, options]);
Pass one or more keywords to be used for matching comments that have arguments to be parsed by minimist.
Params
-
keywords
{String|Array}: Keyword(s) to identify comments to parse. -
str
{String}: A string of valid javascript with comments to parse. -
options
{Object}: Options to pass to minimist -
returns
{Object}: Object of parsed arguments.
Requirements
In configComments
comments:
- A keyword must be the first thing in the comment. Leading whitespace is allowed.
- A comment should only have arguments that can be parsed by minimist
Related projects
You might also be interested in these projects:
- lint-deps: CLI tool that tells you when dependencies are missing from package.json and offers you a… more | homepage
- minimist: parse argument options | homepage
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Building docs
Generate readme and API documentation with [verb][]:
$ npm install verb && npm run docs
Or, if [verb][] is installed globally:
$ verb
Running tests
Install dev dependencies:
$ npm install -d && npm test
Author
Jon Schlinkert
License
Copyright © 2016, Jon Schlinkert. Released under the MIT license.
This file was generated by verb, v0.9.0, on April 20, 2016.