fmod

    0.0.1-w • Public • Published

    NPM

    Travis Codecov license

    WARNING 😞

    This package was in version 0.0.1 under fmod - shortcut for file modifier name and has changed to replace in next version. It turns out that FMOD is a registered trademark 😮 and I don't want troubles ☺️ 😅

    Overview

    fmod is node. file modifier.

    How it works?

    fmod Creates read stream to read from the target file in chunks, do the replacement in new file holding the updated chunk using write stream. Return array of objects contains the final results in callback function.

    Original file won't be modified instead fmod will create new file which have new data and delete the old one.

    Getting Started

    clone the repo:

    git clone git@github.com:jimmy02020/fmod.git
    cd fmod

    Using npm:

    $ npm install fmod

    Syntax

    fmod(path, objects[], callback)

    path String.

    objects[] array of objects. Each object must have two properties regex for RegExp/String to matching and replace the string that will replaced.

    The callback gets two arguments (err, report).

    Using fmod

    const fmod = require('fmod')
     
    // let's create some phrases to replace it in our file.
    const phrase1 = {
      // regex
      regex:/old/ig,
      // replace
      replace:'new'
    }
     
    // and we have to replace more.
    const phrase1 = {
      // regex
      regex:'second',
      // replace
      replace:'third'
    }
     
    fmod('/path1/path2/fileName', [phrase1, phrase1], (err, report) => {
      //
      [
        {
          isChanged: true,
          regex:/old/ig,
          replace:'new'
        },
        {
          isChanged: false, // not found so it wasn't changed
          regex:'second',
          replace:'third'
        },
       ]
      //
    });

    Or you can check specific phrase result.

    fmod('/path1/path2/fileName', [ph0, ph1, p2, ph3], (err, report) => {
      if(report[2].isChanged){
        console.log('p2 was found and changed');
      } else {
        console.log('not found');
      }
    });

    Tests

    $ npm test

    License

    This project is licensed under the MIT License

    Install

    npm i fmod

    DownloadsWeekly Downloads

    2

    Version

    0.0.1-w

    License

    'MIT'

    Last publish

    Collaborators

    • jimmy02020