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)
 |