Hi List,

A tool to reset the terminal.
This implementation depends on the _stty_ 'sane' settings.

Is this approach fine, or should the _stty_  __sane__ stuff be done in
__reset__
command itself.

Your inputs are welcome.

regards,
Ashwini
/* reset.c - A program to reset the terminal.
 *
 * Copyright 2014 Ashwini Kumar <ak.ashw...@gmail.com>
 * Copyright 2014 Kyungwan Han <asura...@gmail.com>
 *
 * No Standard.

USE_RESET(NEWTOY(reset, NULL, TOYFLAG_USR|TOYFLAG_BIN))

config RESET
  bool "reset"
  default n
  help
    usage: reset

    A program to reset the terminal.
*/
#define FOR_reset
#include "toys.h"

void reset_main(void)
{
  char *args[] = {"stty", "sane", NULL};

  /* \033c - reset the terminal with default setting
   * \033(B - set the G0 character set (B=US)
   * \033[2J - clear the whole screen
   * \033[0m - Reset all attributes
   */
  if (isatty(1)) xprintf("\033c\033(B\033[0m\033[J\033[?25h");
  fflush(stdout);
  // set the terminal to sane settings
  xexec(args);
}
_______________________________________________
Toybox mailing list
Toybox@lists.landley.net
http://lists.landley.net/listinfo.cgi/toybox-landley.net

Reply via email to