Nevertheless! Party Metaphorically

    rename
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/rename package

    1.0.4 • Public • Published

    rename

    Rename files using some transformers.


    NPM version Build Status Build Status NPM downloads

    NOTE: Rename < 0.2.0 is not the same lib, you can see renamer. 1.0.0 have a big change.

    Install

    $ npm install rename -g
    

    Usage

    Rename file using another filepath.

    rename('a.js', 'b.js');
    // => b.js

    Rename file using a transform object that contain some property.

    {
      dirname: "replace dirname",
      prefix: "add prefix before basename",
      basename: "replace dirname",
      suffix: "add prefix after basename",
      extname: "replace extname"
    }
    

    Add -debug suffix

    rename('a.js', {suffix: '-debug'});
    // => a-debug.js

    Also can use a transform function that could return a transform object.

    rename('a.js', function() {
      return {suffix: '-debug'};
    });
    // => a-debug.js

    API

    rename(filepath, transformer)

    filepath

    Filepath can be a string or object. Parse the filepath to file object if it's a string.

    File object should contain property dirname, basename and extname.

    rename({
      basename: 'a',
      extname: '.js'
    }, 'b.js');
    // => b.js

    transformer

    Transformer can be a function, string or object.

    Simple example about transform function using custom property.

    function transformer(fileObj) {
      return {
        suffix: fileObj.hash || '-debug'
      };
    }
     
    rename({
      basename: 'a',
      extname: '.js'
    }, transformer);
    // => a-debug.js
     
    rename({
      basename: 'a',
      extname: '.js',
      hash: '-123'
    }, transformer);
    // => a-123.js

    The value of transform object can be template that parsed from file object.

    rename({
      basename: 'c',
      extname: '.js',
      hash: '111'
    }, {
      suffix: '-${hash}',
    }).should.eql('c-111.js');
    

    rename.parse

    Generate a file object from a string or object.

    rename.stringify

    Generate a filepath from file object.

    LISENCE

    Copyright (c) 2017 popomore. Licensed under the MIT license.

    Keywords

    none

    Install

    npm i rename

    DownloadsWeekly Downloads

    16,684

    Version

    1.0.4

    License

    MIT

    Last publish

    Collaborators

    • hgpa
    • popomore
    • hparra