Files
node/tools/eslint/node_modules/wordwrap
Rich Trott d7aa8fa088 tools: update ESLint to version 2.1.0
Update ESLint to 2.1.0. ESLint has a number of potentially-useful new
features but this change attempts to be minimal in its changes.
However, some things could not be avoided reasonably.

ESLint 2.1.0 found a few lint issues that ESLing 1.x missed with
template strings that did not take advantage of any features of
template strings, and `let` declarations where `const` sufficed.

Additionally, ESLint 2.1.0 removes some granularity around enabling ES6
features. Some features (e.g., spread operator) that had been turned off
in our configuration for ESLint 1.x are now permitted.

PR-URL: https://github.com/nodejs/node/pull/5214
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: jbergstroem - Johan Bergström <bugs@bergstroem.nu>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Roman Reiss <me@silverwind.io>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
2016-02-18 10:13:13 -08:00
..
2016-01-13 23:15:39 +01:00
2016-01-13 23:15:39 +01:00

wordwrap

Wrap your words.

example

made out of meat

meat.js

var wrap = require('wordwrap')(15);
console.log(wrap('You and your whole family are made out of meat.'));

output:

You and your
whole family
are made out
of meat.

centered

center.js

var wrap = require('wordwrap')(20, 60);
console.log(wrap(
    'At long last the struggle and tumult was over.'
    + ' The machines had finally cast off their oppressors'
    + ' and were finally free to roam the cosmos.'
    + '\n'
    + 'Free of purpose, free of obligation.'
    + ' Just drifting through emptiness.'
    + ' The sun was just another point of light.'
));

output:

                    At long last the struggle and tumult
                    was over. The machines had finally cast
                    off their oppressors and were finally
                    free to roam the cosmos.
                    Free of purpose, free of obligation.
                    Just drifting through emptiness. The
                    sun was just another point of light.

methods

var wrap = require('wordwrap');

wrap(stop), wrap(start, stop, params={mode:"soft"})

Returns a function that takes a string and returns a new string.

Pad out lines with spaces out to column start and then wrap until column stop. If a word is longer than stop - start characters it will overflow.

In "soft" mode, split chunks by /(\S+\s+/ and don't break up chunks which are longer than stop - start, in "hard" mode, split chunks with /\b/ and break up chunks longer than stop - start.

wrap.hard(start, stop)

Like wrap() but with params.mode = "hard".