convert-newline

0.0.5 • Public • Published

convert-newline

Build Status Build status Coverage Status

Unify newline characters to either \n,\r\n, or \r.

Usage

String

var convertNewline = require("convert-newline");
 
var converter = convertNewline("lf").string();
converter("aaa\rbbb\r\nccc\n"); // -> "aaa\nbbb\nccc\n"

Buffer

var convertNewline = require("convert-newline");
var buffer = new Buffer("aaa\rbbb\r\nccc\n");
 
var converter = convertNewline("lf").buffer();
var newBuffer = converter(buffer);
 
newBuffer.toString(); // -> "aaa\nbbb\nccc\n"

Converting non-utf8 encoded buffers is supported.

var iconv = require("iconv-lite");
var convertNewline = require("convert-newline");
var buffer = iconv.encode(new Buffer("\r\r\n\n"), "shift_jis");
 
var converter = convertNewline("lf", "shift_jis").buffer();
var newBuffer = converter(buffer);
 
iconv.decode(newBuffer, "shift_jis"); // -> "あ\nい\nう\n"

Stream

var fs = require("fs");
var convertNewline = require("convert-newline");
var reader = fs.createReadStream("foo.txt", { encoding: "utf8" });
var writer = fs.createWriteStream("bar.txt");
 
var converter = convertNewline("lf").stream();
reader
    .pipe(converter)
    .pipe(writer);

To convert non-utf8 encoded streams, you can use iconv-lite.

var fs = require("fs");
var iconv = require("iconv-lite");
var convertNewline = require("convert-newline");
var reader = fs.createReadStream("foo.txt");
var writer = fs.createWriteStream("bar.txt");
 
var converter = convertNewline("lf").stream();
reader
    .pipe(iconv.decodeStream("shift_jis"))
    .pipe(converter)
    .pipe(iconv.encodeStream("shift_jis"))
    .pipe(writer);

API

convertNewline(newline, encoding)

newline

Target newline characters. Either "lf", "crlf", or "cr".

encoding

Optional. The encoding of the buffer.

Supported encodings are listed on the iconv-lite wiki.

Readme

Keywords

none

Package Sidebar

Install

npm i convert-newline

Weekly Downloads

3,384

Version

0.0.5

License

MIT

Last publish

Collaborators

  • takenspc