word-wrap
Advanced tools
Comparing version 1.2.3 to 1.2.4
@@ -19,3 +19,3 @@ /** | ||
* The string to use at the beginning of each line. | ||
* @default ´ ´ (two spaces) | ||
* @default ´´ (none) | ||
*/ | ||
@@ -51,2 +51,2 @@ indent?: string; | ||
} | ||
} | ||
} |
21
index.js
/*! | ||
* word-wrap <https://github.com/jonschlinkert/word-wrap> | ||
* | ||
* Copyright (c) 2014-2017, Jon Schlinkert. | ||
* Copyright (c) 2014-2023, Jon Schlinkert. | ||
* Released under the MIT License. | ||
*/ | ||
function trimEnd(str) { | ||
let lastCharPos = str.length - 1; | ||
let lastChar = str[lastCharPos]; | ||
while(lastChar === ' ' || lastChar === '\t') { | ||
lastChar = str[--lastCharPos]; | ||
} | ||
return str.substring(0, lastCharPos + 1); | ||
} | ||
function trimTabAndSpaces(str) { | ||
const lines = str.split('\n'); | ||
const trimmedLines = lines.map((line) => trimEnd(line)); | ||
return trimmedLines.join('\n'); | ||
} | ||
module.exports = function(str, options) { | ||
@@ -17,3 +32,3 @@ options = options || {}; | ||
? options.indent | ||
: ' '; | ||
: ''; | ||
@@ -40,3 +55,3 @@ var newline = options.newline || '\n' + indent; | ||
if (options.trim === true) { | ||
result = result.replace(/[ \t]*$/gm, ''); | ||
result = trimTabAndSpaces(result); | ||
} | ||
@@ -43,0 +58,0 @@ return result; |
{ | ||
"name": "word-wrap", | ||
"description": "Wrap words to a specified length.", | ||
"version": "1.2.3", | ||
"version": "1.2.4", | ||
"homepage": "https://github.com/jonschlinkert/word-wrap", | ||
@@ -6,0 +6,0 @@ "author": "Jon Schlinkert (https://github.com/jonschlinkert)", |
@@ -5,2 +5,4 @@ # word-wrap [![NPM version](https://img.shields.io/npm/v/word-wrap.svg?style=flat)](https://www.npmjs.com/package/word-wrap) [![NPM monthly downloads](https://img.shields.io/npm/dm/word-wrap.svg?style=flat)](https://npmjs.org/package/word-wrap) [![NPM total downloads](https://img.shields.io/npm/dt/word-wrap.svg?style=flat)](https://npmjs.org/package/word-wrap) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/word-wrap.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/word-wrap) | ||
Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support. | ||
## Install | ||
@@ -54,3 +56,3 @@ | ||
Default: `` (two spaces) | ||
Default: `` (none) | ||
@@ -128,28 +130,23 @@ The string to use at the beginning of each line. | ||
### Related projects | ||
<details> | ||
<summary><strong>Contributing</strong></summary> | ||
* [common-words](https://www.npmjs.com/package/common-words): Updated list (JSON) of the 100 most common words in the English language. Useful for… [more](https://github.com/jonschlinkert/common-words) | [homepage](https://github.com/jonschlinkert/common-words "Updated list (JSON) of the 100 most common words in the English language. Useful for excluding these words from arrays.") | ||
* [shuffle-words](https://www.npmjs.com/package/shuffle-words): Shuffle the words in a string and optionally the letters in each word using the… [more](https://github.com/jonschlinkert/shuffle-words) | [homepage](https://github.com/jonschlinkert/shuffle-words "Shuffle the words in a string and optionally the letters in each word using the Fisher-Yates algorithm. Useful for creating test fixtures, benchmarking samples, etc.") | ||
* [unique-words](https://www.npmjs.com/package/unique-words): Return the unique words in a string or array. | [homepage](https://github.com/jonschlinkert/unique-words "Return the unique words in a string or array.") | ||
* [wordcount](https://www.npmjs.com/package/wordcount): Count the words in a string. Support for english, CJK and Cyrillic. | [homepage](https://github.com/jonschlinkert/wordcount "Count the words in a string. Support for english, CJK and Cyrillic.") | ||
Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). | ||
### Contributing | ||
</details> | ||
Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). | ||
<details> | ||
<summary><strong>Running Tests</strong></summary> | ||
### Contributors | ||
Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: | ||
| **Commits** | **Contributor** | | ||
| --- | --- | | ||
| 43 | [jonschlinkert](https://github.com/jonschlinkert) | | ||
| 2 | [lordvlad](https://github.com/lordvlad) | | ||
| 2 | [hildjj](https://github.com/hildjj) | | ||
| 1 | [danilosampaio](https://github.com/danilosampaio) | | ||
| 1 | [2fd](https://github.com/2fd) | | ||
| 1 | [toddself](https://github.com/toddself) | | ||
| 1 | [wolfgang42](https://github.com/wolfgang42) | | ||
| 1 | [zachhale](https://github.com/zachhale) | | ||
```sh | ||
$ npm install && npm test | ||
``` | ||
### Building docs | ||
</details> | ||
<details> | ||
<summary><strong>Building docs</strong></summary> | ||
_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ | ||
@@ -163,10 +160,31 @@ | ||
### Running tests | ||
</details> | ||
Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: | ||
### Related projects | ||
```sh | ||
$ npm install && npm test | ||
``` | ||
You might also be interested in these projects: | ||
* [common-words](https://www.npmjs.com/package/common-words): Updated list (JSON) of the 100 most common words in the English language. Useful for… [more](https://github.com/jonschlinkert/common-words) | [homepage](https://github.com/jonschlinkert/common-words "Updated list (JSON) of the 100 most common words in the English language. Useful for excluding these words from arrays.") | ||
* [shuffle-words](https://www.npmjs.com/package/shuffle-words): Shuffle the words in a string and optionally the letters in each word using the… [more](https://github.com/jonschlinkert/shuffle-words) | [homepage](https://github.com/jonschlinkert/shuffle-words "Shuffle the words in a string and optionally the letters in each word using the Fisher-Yates algorithm. Useful for creating test fixtures, benchmarking samples, etc.") | ||
* [unique-words](https://www.npmjs.com/package/unique-words): Returns an array of unique words, or the number of occurrences of each word in… [more](https://github.com/jonschlinkert/unique-words) | [homepage](https://github.com/jonschlinkert/unique-words "Returns an array of unique words, or the number of occurrences of each word in a string or list.") | ||
* [wordcount](https://www.npmjs.com/package/wordcount): Count the words in a string. Support for english, CJK and Cyrillic. | [homepage](https://github.com/jonschlinkert/wordcount "Count the words in a string. Support for english, CJK and Cyrillic.") | ||
### Contributors | ||
| **Commits** | **Contributor** | | ||
| --- | --- | | ||
| 47 | [jonschlinkert](https://github.com/jonschlinkert) | | ||
| 7 | [OlafConijn](https://github.com/OlafConijn) | | ||
| 2 | [aashutoshrathi](https://github.com/aashutoshrathi) | | ||
| 2 | [doowb](https://github.com/doowb) | | ||
| 2 | [lordvlad](https://github.com/lordvlad) | | ||
| 2 | [hildjj](https://github.com/hildjj) | | ||
| 1 | [danilosampaio](https://github.com/danilosampaio) | | ||
| 1 | [2fd](https://github.com/2fd) | | ||
| 1 | [leonard-thieu](https://github.com/leonard-thieu) | | ||
| 1 | [mohd-akram](https://github.com/mohd-akram) | | ||
| 1 | [toddself](https://github.com/toddself) | | ||
| 1 | [wolfgang42](https://github.com/wolfgang42) | | ||
| 1 | [zachhale](https://github.com/zachhale) | | ||
### Author | ||
@@ -176,8 +194,9 @@ | ||
* [github/jonschlinkert](https://github.com/jonschlinkert) | ||
* [twitter/jonschlinkert](https://twitter.com/jonschlinkert) | ||
* [GitHub Profile](https://github.com/jonschlinkert) | ||
* [Twitter Profile](https://twitter.com/jonschlinkert) | ||
* [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) | ||
### License | ||
Copyright © 2017, [Jon Schlinkert](https://github.com/jonschlinkert). | ||
Copyright © 2023, [Jon Schlinkert](https://github.com/jonschlinkert). | ||
Released under the [MIT License](LICENSE). | ||
@@ -187,2 +206,2 @@ | ||
_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on June 02, 2017._ | ||
_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on July 18, 2023._ |
Sorry, the diff of this file is not supported yet
11829
94
201