๐ NormalizedString provides you with a String type with consistent line-endings, guaranteed. ๐ฎ
- ๐ Guarantees consistent line endings across platforms
- โ๏ธ Automatically normalizes text to
LForCRLFformat - ๐ก๏ธ Prevents mixed or invalid newline styles
- ๐งฉ Extends base transformation logic for easy reuse
- ๐ฆ Encapsulates normalization in a single class
- ๐ Delivers ready-to-use normalized string output
Install it by executing any of the following, depending on your preferred package manager:
pnpm add @igorskyflyer/normalized-stringyarn add @igorskyflyer/normalized-stringnpm i @igorskyflyer/normalized-stringconstructor(value: string, endings: LineEndings = LineEnding.lf)value - A string to work with.
endings - The line endings to use:
-
LineEnding.lf- UNIX-like line endings (line feed), -
LineEnding.crlf- Windows line endings (carriage return + line feed).
You can also set the property value directly and the line endings will be correct.
import { NormalizedString, LineEnding } from '@igorskyflyer/normalized-string'
const loremIpsum: string =
'Lorem ipsum dolor sit amet, consectetur adipiscing elit.\r\n\r\nPellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n\nDuis in nulla ut leo lobortis venenatis.'
const lfEndings: NormalizedString = new NormalizedString(loremIpsum)
lfEndings.value = 'Hello\r\nworld!'
console.log(JSON.stringify(lfEndings.value)) // returns 'Hello\nworld'import { NormalizedString, LineEnding } from '@igorskyflyer/normalized-string'
const loremIpsum: string =
'Lorem ipsum dolor sit amet, consectetur adipiscing elit.\r\n\r\nPellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n\nDuis in nulla ut leo lobortis venenatis.'
const lfEndings: NormalizedString = new NormalizedString(loremIpsum) // LF are the default endings
const crlfEndings: NormalizedString = new NormalizedString(loremIpsum, LineEnding.crlf)
console.log(JSON.stringify(lfEndings.value)) // returns 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n\nPellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\n\nDuis in nulla ut leo lobortis venenatis.'
console.log(JSON.stringify(crlfEndings.value)) // returns 'Lorem ipsum dolor sit amet, consectetur adipiscing elit.\r\n\r\nPellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.\r\n\r\nDuis in nulla ut leo lobortis venenatis.'๐ The changelog is available here, CHANGELOG.md.
Licensed under the MIT license which is available here, MIT license.
Consider buying me a coffee. โ
Thank you for supporting my efforts! ๐๐
๐ Zing is a C# style String formatter for JavaScript that empowers Strings with positional arguments - composite formatting. ๐
๐ฅ Removes HTML code from the given string. Can even extract text-only from the given an HTML string. โจ
๐จ Provides common Color-related TypeScript types. ๐
@igorskyflyer/astro-escaped-component
๐๐ปโโ๏ธโโก๏ธ An Astro component that holds only HTML-encoded content. ๐
โ DรบรถScrรญbรฎ allows you to convert letters with diacritics to regular letters. ๐ค
Created by Igor Dimitrijeviฤ (@igorskyflyer).
