CoolFace
Datasetpublic

basant307/AI_Governance_Project

sourceHugging Faceapache-2.0updated 2mo agoView on Hugging Face
0likes48downloads
readme.md154 linesDownload Raw Back to cli-truncate
1# cli-truncate2 3> Truncate a string to a specific width in the terminal4 5Gracefully handles [ANSI escapes](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors_and_Styles). Like a string styled with [`chalk`](https://github.com/chalk/chalk). It also supports Unicode surrogate pairs and fullwidth characters.6 7## Install8 9```sh10npm install cli-truncate11```12 13## Usage14 15```js16import cliTruncate from 'cli-truncate';17 18cliTruncate('unicorn', 4);19//=> 'uni…'20 21// Truncate at different positions22cliTruncate('unicorn', 4, {position: 'start'});23//=> '…orn'24 25cliTruncate('unicorn', 4, {position: 'middle'});26//=> 'un…n'27 28cliTruncate('unicorns rainbow dragons', 6, {position: 'end'});29//=> 'unico…'30 31cliTruncate('\u001B[31municorn\u001B[39m', 4);32//=> '\u001B[31muni…\u001B[39m'33 34> [!NOTE]35> When truncating styled text (ANSI escapes), the truncation character inherits the style at the breaking point for `position: 'start'` and `position: 'end'`. This does not apply to `position: 'middle'`.36 37// Truncate Unicode surrogate pairs38cliTruncate('uni\uD83C\uDE00corn', 5);39//=> 'uni\uD83C\uDE00…'40 41// Truncate fullwidth characters42cliTruncate('안녕하세요', 3);43//=> '안…'44 45// Truncate the paragraph to the terminal width46const paragraph = 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.';47cliTruncate(paragraph, process.stdout.columns);48//=> 'Lorem ipsum dolor sit amet, consectetuer adipiscing…'49```50 51## API52 53### cliTruncate(text, columns, options?)54 55#### text56 57Type: `string`58 59The text to truncate.60 61#### columns62 63Type: `number`64 65The number of columns to occupy in the terminal.66 67#### options68 69Type: `object`70 71##### position72 73Type: `string`\74Default: `'end'`\75Values: `'start' | 'middle' | 'end'`76 77The position to truncate the string.78 79##### space80 81Type: `boolean`\82Default: `false`83 84Add a space between the text and the ellipsis.85 86```js87import cliTruncate from 'cli-truncate';88 89cliTruncate('unicorns', 5, {space: false});90//=> 'unic…'91 92cliTruncate('unicorns', 5, {space: true});93//=> 'uni …'94 95cliTruncate('unicorns', 6, {position: 'start', space: true});96//=> '… orns'97 98cliTruncate('unicorns', 7, {position: 'middle', space: true});99//=> 'uni … s'100```101 102##### preferTruncationOnSpace103 104Type: `boolean`\105Default: `false`106 107Truncate the string from a whitespace if it is within 3 characters from the actual breaking point.108 109```js110import cliTruncate from 'cli-truncate';111 112cliTruncate('unicorns rainbow dragons', 20, {position: 'start', preferTruncationOnSpace: true});113//=> '…rainbow dragons'114 115// Without preferTruncationOnSpace116cliTruncate('unicorns rainbow dragons', 20, {position: 'start'});117//=> '…rns rainbow dragons'118 119cliTruncate('unicorns rainbow dragons', 20, {position: 'middle', preferTruncationOnSpace: true});120//=> 'unicorns…dragons'121 122cliTruncate('unicorns rainbow dragons', 6, {position: 'end', preferTruncationOnSpace: true});123//=> 'unico…'124 125// preferTruncationOnSpace has no effect if space isn't found within 3 characters126cliTruncate('unicorns rainbow dragons', 6, {position: 'middle', preferTruncationOnSpace: true});127//=> 'uni…ns'128```129 130##### truncationCharacter131 132Type: `string`\133Default: `…`134 135The character to use at the breaking point.136 137```js138import cliTruncate from 'cli-truncate';139 140cliTruncate('unicorns', 5, {position: 'end'});141//=> 'unic…'142 143cliTruncate('unicorns', 5, {position: 'end', truncationCharacter: '.'});144//=> 'unic.'145 146cliTruncate('unicorns', 5, {position: 'end', truncationCharacter: ''});147//=> 'unico'148```149 150## Related151 152- [wrap-ansi](https://github.com/chalk/wrap-ansi) - Wordwrap a string with ANSI escape codes153- [slice-ansi](https://github.com/chalk/slice-ansi) - Slice a string with ANSI escape codes154 
basant307/AI_Governance_Project · CoolFace