Big update!Introducing GitHub Bot Commands. Learn more
Socket
Log inBook a demo

cli-truncate

Package Overview
Dependencies
2
Maintainers
1
Versions
9
Issues
File Explorer

Advanced tools

cli-truncate

Truncate a string to a specific width in the terminal

    3.1.0latest

Version published
Maintainers
1
Weekly downloads
13,688,919
decreased by-11.43%

Weekly downloads

Changelog

Source

https://github.com/sindresorhus/cli-truncate/compare/v3.0.0...v3.1.0

Readme

Source

cli-truncate

Truncate a string to a specific width in the terminal

Gracefully handles ANSI escapes. Like a string styled with chalk. It also supports Unicode surrogate pairs and fullwidth characters.

Install

$ npm install cli-truncate

Usage

import cliTruncate from 'cli-truncate'; cliTruncate('unicorn', 4); //=> 'uni…' // Truncate at different positions cliTruncate('unicorn', 4, {position: 'start'}); //=> '…orn' cliTruncate('unicorn', 4, {position: 'middle'}); //=> 'un…n' cliTruncate('unicorns rainbow dragons', 6, {position: 'end'}) //=> 'unico…' cliTruncate('\u001B[31municorn\u001B[39m', 4); //=> '\u001B[31muni\u001B[39m…' // Truncate Unicode surrogate pairs cliTruncate('uni\uD83C\uDE00corn', 5); //=> 'uni\uD83C\uDE00…' // Truncate fullwidth characters cliTruncate('안녕하세요', 3); //=> '안…' // Truncate the paragraph to the terminal width const paragraph = 'Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa.'; cliTruncate(paragraph, process.stdout.columns)); //=> 'Lorem ipsum dolor sit amet, consectetuer adipiscing…'

API

cliTruncate(text, columns, options?)

text

Type: string

Text to truncate.

columns

Type: number

The number of columns to occupy in the terminal.

options

Type: object

position

Type: string
Default: 'end'
Values: 'start' 'middle' 'end'

The position to truncate the string.

space

Type: boolean
Default: false

Add a space between the text and the ellipsis.

import cliTruncate from 'cli-truncate'; cliTruncate('unicorns', 5, {space: false}); //=> 'unic…' cliTruncate('unicorns', 5, {space: true}); //=> 'uni …' cliTruncate('unicorns', 6, {position: 'start', space: true}); //=> '… orns' cliTruncate('unicorns', 7, {position: 'middle', space: true}); //=> 'uni … s'
preferTruncationOnSpace

Type: boolean
Default: false

Truncate the string from a whitespace if it is within 3 characters from the actual breaking point.

import cliTruncate from 'cli-truncate'; cliTruncate('unicorns rainbow dragons', 20, {position: 'start', preferTruncationOnSpace: true}) //=> '…rainbow dragons' // without preferTruncationOnSpace cliTruncate('unicorns rainbow dragons', 20, {position: 'start'}) //=> '…rns rainbow dragons' cliTruncate('unicorns rainbow dragons', 20, {position: 'middle', preferTruncationOnSpace: true}) //=> 'unicorns…dragons' cliTruncate('unicorns rainbow dragons', 6, {position: 'end', preferTruncationOnSpace: true}) //=> 'unico…' // preferTruncationOnSpace would have no effect if space isn't found within next 3 indexes cliTruncate('unicorns rainbow dragons', 6, {position: 'middle', preferTruncationOnSpace: true}) //=> 'uni…ns'
truncationCharacter

Type: string
Default:

The character to use at the breaking point.

import cliTruncate from 'cli-truncate'; cliTruncate('unicorns', 5, {position: 'end'}); //=> 'unic…' cliTruncate('unicorns', 5, {position: 'end', truncationCharacter: '.'}); //=> 'unic.' cliTruncate('unicorns', 5, {position: 'end', truncationCharacter: ''}); //=> 'unico'
  • wrap-ansi - Wordwrap a string with ANSI escape codes
  • slice-ansi - Slice a string with ANSI escape codes

Get professional support for this package with a Tidelift subscription
Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies.

Keywords

FAQs

What is cli-truncate?

Truncate a string to a specific width in the terminal

Is cli-truncate popular?

The npm package cli-truncate receives a total of 10,852,477 weekly downloads. As such, cli-truncate popularity was classified as popular.

Is cli-truncate well maintained?

We found that cli-truncate demonstrated a not healthy version release cadence and project activity because the last version was released a year ago.It has 1 open source maintainer collaborating on the project.

Last updated on 09 Oct 2021

Did you know?

Socket installs a Github app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.

Install Socket
Socket

Product

Subscribe to our newsletter

Get open source security insights delivered straight into your inbox. Be the first to learn about new features and product updates.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc