| <!-- |
| **************************************************************************** |
| * Copyright 2018,2020 Thomas E. Dickey * |
| * Copyright 1998-2016,2017 Free Software Foundation, Inc. * |
| * * |
| * Permission is hereby granted, free of charge, to any person obtaining a * |
| * copy of this software and associated documentation files (the * |
| * "Software"), to deal in the Software without restriction, including * |
| * without limitation the rights to use, copy, modify, merge, publish, * |
| * distribute, distribute with modifications, sublicense, and/or sell * |
| * copies of the Software, and to permit persons to whom the Software is * |
| * furnished to do so, subject to the following conditions: * |
| * * |
| * The above copyright notice and this permission notice shall be included * |
| * in all copies or substantial portions of the Software. * |
| * * |
| * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * |
| * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * |
| * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * |
| * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * |
| * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * |
| * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * |
| * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * |
| * * |
| * Except as contained in this notice, the name(s) of the above copyright * |
| * holders shall not be used in advertising or otherwise to promote the * |
| * sale, use or other dealings in this Software without prior written * |
| * authorization. * |
| **************************************************************************** |
| * @Id: clear.1,v 1.23 2020/02/02 23:34:34 tom Exp @ |
| * these would be fallbacks for DS/DE, |
| * but groff changed the meaning of the macros. |
| --> |
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> |
| <HTML> |
| <HEAD> |
| <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> |
| <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> |
| <TITLE>clear 1</TITLE> |
| <link rel="author" href="mailto:bug-ncurses@gnu.org"> |
| <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
| </HEAD> |
| <BODY> |
| <H1 class="no-header">clear 1</H1> |
| <PRE> |
| <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG> General Commands Manual <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG> |
| |
| |
| |
| |
| </PRE><H2><a name="h2-NAME">NAME</a></H2><PRE> |
| <STRONG>clear</STRONG> - clear the terminal screen |
| |
| |
| </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE> |
| <STRONG>clear</STRONG> [<STRONG>-T</STRONG><EM>type</EM>] [<STRONG>-V</STRONG>] [<STRONG>-x</STRONG>] |
| |
| |
| </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> |
| <STRONG>clear</STRONG> clears your screen if this is possible, including its scrollback |
| buffer (if the extended "E3" capability is defined). <STRONG>clear</STRONG> looks in |
| the environment for the terminal type given by the environment variable |
| <STRONG>TERM</STRONG>, and then in the <STRONG>terminfo</STRONG> database to determine how to clear the |
| screen. |
| |
| <STRONG>clear</STRONG> writes to the standard output. You can redirect the standard |
| output to a file (which prevents <STRONG>clear</STRONG> from actually clearing the |
| screen), and later <STRONG>cat</STRONG> the file to the screen, clearing it at that |
| point. |
| |
| |
| </PRE><H2><a name="h2-OPTIONS">OPTIONS</a></H2><PRE> |
| <STRONG>-T</STRONG> <EM>type</EM> |
| indicates the <EM>type</EM> of terminal. Normally this option is unneces- |
| sary, because the default is taken from the environment variable |
| <STRONG>TERM</STRONG>. If <STRONG>-T</STRONG> is specified, then the shell variables <STRONG>LINES</STRONG> and <STRONG>COL-</STRONG> |
| <STRONG>UMNS</STRONG> will also be ignored. |
| |
| <STRONG>-V</STRONG> reports the version of ncurses which was used in this program, and |
| exits. The options are as follows: |
| |
| <STRONG>-x</STRONG> do not attempt to clear the terminal's scrollback buffer using the |
| extended "E3" capability. |
| |
| |
| </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> |
| A <STRONG>clear</STRONG> command appeared in 2.79BSD dated February 24, 1979. Later |
| that was provided in Unix 8th edition (1985). |
| |
| AT&T adapted a different BSD program (<STRONG>tset</STRONG>) to make a new command |
| (<STRONG>tput</STRONG>), and used this to replace the <STRONG>clear</STRONG> command with a shell script |
| which calls <STRONG>tput</STRONG> <STRONG>clear</STRONG>, e.g., |
| |
| /usr/bin/tput ${1:+-T$1} clear 2> /dev/null |
| exit |
| |
| In 1989, when Keith Bostic revised the BSD <STRONG>tput</STRONG> command to make it sim- |
| ilar to the AT&T <STRONG>tput</STRONG>, he added a shell script for the <STRONG>clear</STRONG> command: |
| |
| exec tput clear |
| |
| The remainder of the script in each case is a copyright notice. |
| |
| The ncurses <STRONG>clear</STRONG> command began in 1995 by adapting the original BSD |
| <STRONG>clear</STRONG> command (with terminfo, of course). |
| |
| The <STRONG>E3</STRONG> extension came later: |
| |
| <STRONG>o</STRONG> In June 1999, xterm provided an extension to the standard control |
| sequence for clearing the screen. Rather than clearing just the |
| visible part of the screen using |
| |
| printf '\033[2J' |
| |
| one could clear the <EM>scrollback</EM> using |
| |
| printf '\033[<STRONG>3</STRONG>J' |
| |
| This is documented in <EM>XTerm</EM> <EM>Control</EM> <EM>Sequences</EM> as a feature origi- |
| nating with xterm. |
| |
| <STRONG>o</STRONG> A few other terminal developers adopted the feature, e.g., PuTTY in |
| 2006. |
| |
| <STRONG>o</STRONG> In April 2011, a Red Hat developer submitted a patch to the Linux |
| kernel, modifying its console driver to do the same thing. The |
| Linux change, part of the 3.0 release, did not mention xterm, |
| although it was cited in the Red Hat bug report (#683733) which led |
| to the change. |
| |
| <STRONG>o</STRONG> Again, a few other terminal developers adopted the feature. But |
| the next relevant step was a change to the <STRONG>clear</STRONG> program in 2013 to |
| incorporate this extension. |
| |
| <STRONG>o</STRONG> In 2013, the <STRONG>E3</STRONG> extension was overlooked in <STRONG>tput</STRONG> with the "clear" |
| parameter. That was addressed in 2016 by reorganizing <STRONG>tput</STRONG> to |
| share its logic with <STRONG>clear</STRONG> and <STRONG>tset</STRONG>. |
| |
| |
| </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE> |
| Neither IEEE Std 1003.1/The Open Group Base Specifications Issue 7 |
| (POSIX.1-2008) nor X/Open Curses Issue 7 documents tset or reset. |
| |
| The latter documents <STRONG>tput</STRONG>, which could be used to replace this utility |
| either via a shell script or by an alias (such as a symbolic link) to |
| run <STRONG>tput</STRONG> as <STRONG>clear</STRONG>. |
| |
| |
| </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> |
| <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> |
| |
| This describes <STRONG>ncurses</STRONG> version 6.2 (patch 20200212). |
| |
| |
| |
| <STRONG><A HREF="clear.1.html">clear(1)</A></STRONG> |
| </PRE> |
| <div class="nav"> |
| <ul> |
| <li><a href="#h2-NAME">NAME</a></li> |
| <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li> |
| <li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li> |
| <li><a href="#h2-OPTIONS">OPTIONS</a></li> |
| <li><a href="#h2-HISTORY">HISTORY</a></li> |
| <li><a href="#h2-PORTABILITY">PORTABILITY</a></li> |
| <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li> |
| </ul> |
| </div> |
| </BODY> |
| </HTML> |