Namby Pamby Magicians

    lbl

    0.1.0 • Public • Published

    lbl NPM version Build Status Dependency Status

    Process stdin, line by line, sort of like AWK but 100% JS

    Prerequisites

    • There are a couple of handy globals available
      • $ is an alias for global
      • log is an alias for console.log
      • chalk is available for adding color to ouput

    Installation

    $ npm install lbl --global

    Usage

    Usage
     
      $ lbl <Options> <STDIN>
     
    Options
     
      # Pass processing functions on CLI 
      -a, --after     function to run after processing lines [optional]
      -b, --before    function to run before processing lines [optional]
      -e, --each      function to run on each line [required]
     
      # Or, use a node module file with processing functions: 
      # before(), after(), each() 
      -r, --require   module file with functions
     
      -h, --help      show this usage info
      --version       show the current version installed
     
    Examples
     
      $ cat ./data/x.file | lbl -r ./scripts/X.js
      <<BEGIN>>
      > XX
      > Matched 1 from 3
     
      $ printf 'x\\nXX\\nxXx' | lbl -e 'x => { n++; if (x.match(/^X/)) { log(chalk.yellow('> ') + x); f++; } }' -b '() => { $.n = 0; $.f = 0; log('<<BEGIN>>'); }' -a '() => { log('> Matched ' + f + ' from ' + n); }'
      <<BEGIN>>
      > XX
      > Matched 1 from 3

    Sample Module File

    'use strict';
    /* global $, log, chalk, n:true, f:true */
     
    module.exports = {
      each: x => {
        n++;
        if (x.match(/^X/)) {
          log(chalk.yellow('') + x);
          f++;
        }
      },
      before: () => {
        $.n = 0;
        $.f = 0;
        log('<<BEGIN>>');
      },
      after: () => {
        log('> Matched ' + f + ' from ' + n);
      }
    };

    License

    ISC © Buster Collings

    Install

    npm i lbl

    DownloadsWeekly Downloads

    1

    Version

    0.1.0

    License

    ISC

    Unpacked Size

    9.04 kB

    Total Files

    7

    Last publish

    Collaborators

    • buster