What is cli-cursor?
The cli-cursor npm package allows developers to show or hide the cursor in command-line interfaces. This can be useful when creating CLI tools or applications that require a clean, distraction-free interface, or when the cursor needs to be temporarily hidden during spinner animations or other CLI graphics.
What are cli-cursor's main functionalities?
Hide Cursor
This feature hides the cursor in the terminal. It is useful when you want to prevent the cursor from interfering with CLI graphics or output.
const cliCursor = require('cli-cursor');
cliCursor.hide(process.stdout);
Show Cursor
This feature shows the cursor in the terminal after it has been hidden. It is useful for restoring the cursor once a CLI operation that required hiding it is complete.
const cliCursor = require('cli-cursor');
cliCursor.show(process.stdout);
Toggle Cursor
This feature toggles the visibility of the cursor based on a boolean value. It provides a convenient way to switch between showing and hiding the cursor.
const cliCursor = require('cli-cursor');
const isVisible = true; // This should be a dynamic value based on the current cursor state
cliCursor.toggle(process.stdout, isVisible);
Other packages similar to cli-cursor
ansi-escapes
The ansi-escapes package provides a collection of ANSI escape codes, including codes to hide and show the cursor. It offers more general functionality for manipulating the terminal, whereas cli-cursor is specifically focused on cursor visibility.
terminal-kit
Terminal-kit is a full-featured terminal handling library that includes methods for cursor visibility, among many other terminal manipulation features. It is a more comprehensive solution compared to the focused functionality of cli-cursor.
inquirer
Inquirer is a library for creating interactive command-line user interfaces. While it does not directly provide methods to hide or show the cursor, it manages cursor visibility internally as part of its UI rendering process, which can be considered a similar functionality in a broader context.
cli-cursor
Toggle the CLI cursor
The cursor is gracefully restored if the process exits.
Install
npm install cli-cursor
Usage
import cliCursor from 'cli-cursor';
cliCursor.hide();
const unicornsAreAwesome = true;
cliCursor.toggle(unicornsAreAwesome);
API
.show(stream?)
.hide(stream?)
.toggle(force?, stream?)
force
Useful for showing or hiding the cursor based on a boolean.
stream
Type: stream.Writable
Default: process.stderr