What is detect-newline?
The detect-newline npm package is designed to help developers identify the type of newline character used in a string. This can be particularly useful when working with text data that originates from different operating systems, as Unix, Windows, and old Mac systems use different characters for line breaks (`\n` for Unix/Linux, `\r\n` for Windows, and `\r` for old Mac). The package provides a simple interface to detect the newline character and can also gracefully handle mixed or absent newlines.
What are detect-newline's main functionalities?
Detect the most common newline character in a string
This feature allows you to detect the most common newline character in a given string. If the string contains mixed newline characters, the most common one is returned. If there's a tie, `\n` is returned by default.
"const detectNewline = require('detect-newline');\nconst mixedNewlines = 'Hello\r\nWorld\nHello World';\nconsole.log(detectNewline(mixedNewlines)); // '\r\n'"
Detect the newline character used at the end of a string
This functionality is useful for determining the newline character at the end of a string, which can be critical for appending lines to files or data streams while maintaining consistency with the existing newline format.
"const detectNewline = require('detect-newline');\nconst stringWithNewlineAtEnd = 'Hello World\n';\nconsole.log(detectNewline(stringWithNewlineAtEnd)); // '\n'"
Other packages similar to detect-newline
eol
The eol package offers more comprehensive handling of newline characters, including detection, conversion, and normalization across different operating systems. While detect-newline focuses on detection, eol provides a broader set of tools for working with end-of-line characters.
detect-newline
Detect the dominant newline character of a string
Install
$ npm install --save detect-newline
Usage
var detectNewline = require('detect-newline');
detectNewline('foo\nbar\nbaz\r\n');
CLI
$ npm install --global detect-newline
$ detect-newline --help
Usage
detect-newline <string>
cat unicorn.txt | detect-newline
Example
detect-newline "$(printf 'Unicorns\nRainbows')"
\n
License
MIT © Sindre Sorhus