android13/external/toybox/toys/other/reset.c

30 lines
605 B
C

/* reset.c - reset the terminal.
*
* Copyright 2015 Rob Landley <rob@landley.net>
*
* No standard.
*
* In 1979 3BSD's tset had a sleep(1) to let mechanical printer-and-ink
* terminals "settle down". We're not doing that.
USE_RESET(NEWTOY(reset, 0, TOYFLAG_USR|TOYFLAG_BIN))
config RESET
bool "reset"
default y
help
usage: reset
Reset the terminal.
*/
#include "toys.h"
void reset_main(void)
{
int fd = tty_fd();
// man 4 console_codes: reset terminal is ESC (no left bracket) c
// DEC private mode set enable wraparound sequence.
xwrite(fd<0 ? 1 : fd, "\ec\e[?7h", 2);
}