config-comments

0.3.2 • Public • Published

config-comments NPM version NPM downloads Build Status

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:

  1. A keyword must be the first thing in the comment. Leading whitespace is allowed.
  2. A comment should only have arguments that can be parsed by minimist

Related projects

You might also be interested in these projects:

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.

Package Sidebar

Install

npm i config-comments

Weekly Downloads

1

Version

0.3.2

License

MIT

Last publish

Collaborators

  • jonschlinkert