update-copyright

    1.0.0 • Public • Published

    update-copyright NPM version NPM monthly downloads NPM total downloads Linux Build Status

    Update a copyright statement with the current year. Also makes minor corrections.

    Install

    Install with npm:

    $ npm install --save update-copyright

    Usage

    copyright(string, options);

    Pass a string with a copyright statement to update, and it will be parsed and updated.

    var copyright = require('update-copyright');
     
    copyright('Copyright (c) 2015, Jon Schlinkert.');
    //=> 'Copyright (c) 2015-2016, Jon Schlinkert.'
     
    copyright('Copyright (c) 2012, 2015, Jon Schlinkert.');
    //=> 'Copyright (c) 2012, 2015-2016, Jon Schlinkert.'

    The current year is updated/appended to existing years. The rest of the information will stay the same unless new information is passed.

    Lazy mode

    If you're too lazy to pass anything at all, that's okay! You get a free copyright statement with the current year, using data from package.json!

    copyright();
    //=> 'Copyright (c) 2016, Jon Schlinkert.'

    Optionally fills in author

    Example

    If the author is missing it will be filled in with the author from package.json.

    copyright('Copyright (c) 2014.');
    //=> 'Copyright (c) 2014-2015, Jon Schlinkert.'

    Fixes Misspellings

    It will use the author from package.json if a misspelling seems obvious (according to its Levenshtein distance):

    copyright('Copyright (c) 2014, Jon Shlinert');
    //=> 'Copyright (c) 2014, 2016, Jon Schlinkert.'

    See the tests for more examples.

    Options

    A template is used to create the new copyright statement, and the options object is merged with the context that is passed to the template.

    context

    1. The (context) object is populated with data from the parsed (old) copyright statement
    2. The object is then updated with the current year, author from package.json, and any other data you pass on the options.

    Custom context

    This is what the context object looks like. To override anything on the context just pass the property and value on the options:

    { year: '2015',
      prefix: 'Copyright',
      symbol: '(c)',
      template: '<%= prefix %><%= symbol ? (" " + symbol + " ") : "" %><%= years %>, <%= authors %>.',
      statement: 'Copyright (c) 2015, Jon Schlinkert',
      dateRange: '2014',
      latest: '2014',
      author: 'Jon Schlinkert' }

    Example

    Pass any custom data (as shown above) on the options:

    copyright('Copyright (c) 2015.', {author: 'Foo Bar'});
    //=> 'Copyright (c) 2015-2016, Foo Bar.'

    About

    Related projects

    Contributing

    Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.

    Contributors

    Commits Contributor
    38 jonschlinkert
    1 david-w-millar

    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.6.0, on June 26, 2017.

    Install

    npm i update-copyright

    DownloadsWeekly Downloads

    283

    Version

    1.0.0

    License

    MIT

    Last publish

    Collaborators

    • avatar