185 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			185 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|  | # ansi-escapes [](https://travis-ci.org/sindresorhus/ansi-escapes)
 | ||
|  | 
 | ||
|  | > [ANSI escape codes](http://www.termsys.demon.co.uk/vtansi.htm) for manipulating the terminal
 | ||
|  | 
 | ||
|  | 
 | ||
|  | ## Install
 | ||
|  | 
 | ||
|  | ``` | ||
|  | $ npm install ansi-escapes | ||
|  | ``` | ||
|  | 
 | ||
|  | 
 | ||
|  | ## Usage
 | ||
|  | 
 | ||
|  | ```js | ||
|  | const ansiEscapes = require('ansi-escapes'); | ||
|  | 
 | ||
|  | // Moves the cursor two rows up and to the left | ||
|  | process.stdout.write(ansiEscapes.cursorUp(2) + ansiEscapes.cursorLeft); | ||
|  | //=> '\u001B[2A\u001B[1000D' | ||
|  | ``` | ||
|  | 
 | ||
|  | 
 | ||
|  | ## API
 | ||
|  | 
 | ||
|  | ### cursorTo(x, [y])
 | ||
|  | 
 | ||
|  | Set the absolute position of the cursor. `x0` `y0` is the top left of the screen. | ||
|  | 
 | ||
|  | ### cursorMove(x, [y])
 | ||
|  | 
 | ||
|  | Set the position of the cursor relative to its current position. | ||
|  | 
 | ||
|  | ### cursorUp(count)
 | ||
|  | 
 | ||
|  | Move cursor up a specific amount of rows. Default is `1`. | ||
|  | 
 | ||
|  | ### cursorDown(count)
 | ||
|  | 
 | ||
|  | Move cursor down a specific amount of rows. Default is `1`. | ||
|  | 
 | ||
|  | ### cursorForward(count)
 | ||
|  | 
 | ||
|  | Move cursor forward a specific amount of rows. Default is `1`. | ||
|  | 
 | ||
|  | ### cursorBackward(count)
 | ||
|  | 
 | ||
|  | Move cursor backward a specific amount of rows. Default is `1`. | ||
|  | 
 | ||
|  | ### cursorLeft
 | ||
|  | 
 | ||
|  | Move cursor to the left side. | ||
|  | 
 | ||
|  | ### cursorSavePosition
 | ||
|  | 
 | ||
|  | Save cursor position. | ||
|  | 
 | ||
|  | ### cursorRestorePosition
 | ||
|  | 
 | ||
|  | Restore saved cursor position. | ||
|  | 
 | ||
|  | ### cursorGetPosition
 | ||
|  | 
 | ||
|  | Get cursor position. | ||
|  | 
 | ||
|  | ### cursorNextLine
 | ||
|  | 
 | ||
|  | Move cursor to the next line. | ||
|  | 
 | ||
|  | ### cursorPrevLine
 | ||
|  | 
 | ||
|  | Move cursor to the previous line. | ||
|  | 
 | ||
|  | ### cursorHide
 | ||
|  | 
 | ||
|  | Hide cursor. | ||
|  | 
 | ||
|  | ### cursorShow
 | ||
|  | 
 | ||
|  | Show cursor. | ||
|  | 
 | ||
|  | ### eraseLines(count)
 | ||
|  | 
 | ||
|  | Erase from the current cursor position up the specified amount of rows. | ||
|  | 
 | ||
|  | ### eraseEndLine
 | ||
|  | 
 | ||
|  | Erase from the current cursor position to the end of the current line. | ||
|  | 
 | ||
|  | ### eraseStartLine
 | ||
|  | 
 | ||
|  | Erase from the current cursor position to the start of the current line. | ||
|  | 
 | ||
|  | ### eraseLine
 | ||
|  | 
 | ||
|  | Erase the entire current line. | ||
|  | 
 | ||
|  | ### eraseDown
 | ||
|  | 
 | ||
|  | Erase the screen from the current line down to the bottom of the screen. | ||
|  | 
 | ||
|  | ### eraseUp
 | ||
|  | 
 | ||
|  | Erase the screen from the current line up to the top of the screen. | ||
|  | 
 | ||
|  | ### eraseScreen
 | ||
|  | 
 | ||
|  | Erase the screen and move the cursor the top left position. | ||
|  | 
 | ||
|  | ### scrollUp
 | ||
|  | 
 | ||
|  | Scroll display up one line. | ||
|  | 
 | ||
|  | ### scrollDown
 | ||
|  | 
 | ||
|  | Scroll display down one line. | ||
|  | 
 | ||
|  | ### clearScreen
 | ||
|  | 
 | ||
|  | Clear the terminal screen. (Viewport) | ||
|  | 
 | ||
|  | ### clearTerminal
 | ||
|  | 
 | ||
|  | Clear the whole terminal, including scrollback buffer. (Not just the visible part of it) | ||
|  | 
 | ||
|  | ### beep
 | ||
|  | 
 | ||
|  | Output a beeping sound. | ||
|  | 
 | ||
|  | ### link(text, url)
 | ||
|  | 
 | ||
|  | Create a clickable link. | ||
|  | 
 | ||
|  | [Supported terminals.](https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda) Use [`supports-hyperlinks`](https://github.com/jamestalmage/supports-hyperlinks) to detect link support. | ||
|  | 
 | ||
|  | ### image(input, [options])
 | ||
|  | 
 | ||
|  | Display an image. | ||
|  | 
 | ||
|  | *Currently only supported on iTerm2 >=3* | ||
|  | 
 | ||
|  | See [term-img](https://github.com/sindresorhus/term-img) for a higher-level module. | ||
|  | 
 | ||
|  | #### input
 | ||
|  | 
 | ||
|  | Type: `Buffer` | ||
|  | 
 | ||
|  | Buffer of an image. Usually read in with `fs.readFile()`. | ||
|  | 
 | ||
|  | #### options
 | ||
|  | 
 | ||
|  | ##### width
 | ||
|  | ##### height
 | ||
|  | 
 | ||
|  | Type: `string` `number` | ||
|  | 
 | ||
|  | The width and height are given as a number followed by a unit, or the word "auto". | ||
|  | 
 | ||
|  | - `N`: N character cells. | ||
|  | - `Npx`: N pixels. | ||
|  | - `N%`: N percent of the session's width or height. | ||
|  | - `auto`: The image's inherent size will be used to determine an appropriate dimension. | ||
|  | 
 | ||
|  | ##### preserveAspectRatio
 | ||
|  | 
 | ||
|  | Type: `boolean`<br> | ||
|  | Default: `true` | ||
|  | 
 | ||
|  | ### iTerm.setCwd([path])
 | ||
|  | 
 | ||
|  | Type: `string`<br> | ||
|  | Default: `process.cwd()` | ||
|  | 
 | ||
|  | [Inform iTerm2](https://www.iterm2.com/documentation-escape-codes.html) of the current directory to help semantic history and enable [Cmd-clicking relative paths](https://coderwall.com/p/b7e82q/quickly-open-files-in-iterm-with-cmd-click). | ||
|  | 
 | ||
|  | 
 | ||
|  | ## Related
 | ||
|  | 
 | ||
|  | - [ansi-styles](https://github.com/chalk/ansi-styles) - ANSI escape codes for styling strings in the terminal | ||
|  | 
 | ||
|  | 
 | ||
|  | ## License
 | ||
|  | 
 | ||
|  | MIT © [Sindre Sorhus](https://sindresorhus.com) |