Terminal control/Clear the screen: Difference between revisions
Content added Content deleted
Puppydrum64 (talk | contribs) m (→Sega Genesis) |
Thundergnat (talk | contribs) m (syntax highlighting fixup automation) |
||
Line 9: | Line 9: | ||
{{trans|Python}} |
{{trans|Python}} |
||
To clear the screen on Windows, replace 'clear' with 'cls' |
To clear the screen on Windows, replace 'clear' with 'cls' |
||
<lang |
<syntaxhighlight lang="11l">os:(‘clear’)</syntaxhighlight> |
||
=={{header|6502 Assembly}}== |
=={{header|6502 Assembly}}== |
||
Line 23: | Line 23: | ||
SYS680 |
SYS680 |
||
</pre> |
</pre> |
||
< |
<syntaxhighlight lang="6502asm">; C64 - Terminal control: Clear the screen |
||
; *** labels *** |
; *** labels *** |
||
Line 42: | Line 42: | ||
clr .byte $93 ; the CLR control code |
clr .byte $93 ; the CLR control code |
||
; see https://en.wikipedia.org/wiki/PETSCII |
; see https://en.wikipedia.org/wiki/PETSCII |
||
</syntaxhighlight> |
|||
</lang> |
|||
===6502js/6502asm/easy6502=== |
===6502js/6502asm/easy6502=== |
||
{{works with|http://www.6502asm.com/ 6502asm.com|1.2}} |
{{works with|http://www.6502asm.com/ 6502asm.com|1.2}} |
||
{{works with|http://www.6502asm.com/beta/index.html 6502asm.com|1.5 beta}} |
{{works with|http://www.6502asm.com/beta/index.html 6502asm.com|1.5 beta}} |
||
The 6502asm.com emulator has a 32x32 pixel screen. First we fill this screen with random colored pixels, wait for a keypress and then "clear" the screen (fill it with black pixels). |
The 6502asm.com emulator has a 32x32 pixel screen. First we fill this screen with random colored pixels, wait for a keypress and then "clear" the screen (fill it with black pixels). |
||
< |
<syntaxhighlight lang="6502asm">; 6502asm.com - Clear the screen |
||
lda #$00 ; store the start address of the screen ($200) |
lda #$00 ; store the start address of the screen ($200) |
||
Line 78: | Line 78: | ||
inx |
inx |
||
bne clearscreen |
bne clearscreen |
||
</syntaxhighlight> |
|||
</lang> |
|||
===Nintendo Entertainment System=== |
===Nintendo Entertainment System=== |
||
It's best to do this during forced blank (i.e. display is inactive), as this loop is most likely too slow to finish before vBlank is over. This code assumes that your game's character ROM has a "blank" tile at tile index $00. If it doesn't, use whatever index you consider to be a "blank tile." Also, this only clears the top-left nametable, which is all the user can see if no scrolling has taken place. If the scroll position of the screen isn't (0,0), there will still be graphics left over on screen. |
It's best to do this during forced blank (i.e. display is inactive), as this loop is most likely too slow to finish before vBlank is over. This code assumes that your game's character ROM has a "blank" tile at tile index $00. If it doesn't, use whatever index you consider to be a "blank tile." Also, this only clears the top-left nametable, which is all the user can see if no scrolling has taken place. If the scroll position of the screen isn't (0,0), there will still be graphics left over on screen. |
||
< |
<syntaxhighlight lang="6502asm">clearVRAM: |
||
PHA |
PHA |
||
LDA #$20 ;load the vram address of the top-left nametable |
LDA #$20 ;load the vram address of the top-left nametable |
||
Line 97: | Line 97: | ||
DEX |
DEX |
||
BNE loop |
BNE loop |
||
RTS</ |
RTS</syntaxhighlight> |
||
=={{header|68000 Assembly}}== |
=={{header|68000 Assembly}}== |
||
Line 104: | Line 104: | ||
The registers <code>D0</code>, <code>D1</code>, and <code>A0</code> will be clobbered after returning, so keep that in mind. |
The registers <code>D0</code>, <code>D1</code>, and <code>A0</code> will be clobbered after returning, so keep that in mind. |
||
< |
<syntaxhighlight lang="68000devpac">JSR $C004C2 ;clear the FIX layer |
||
JSR $C004C8 ;clear hardware sprites</ |
JSR $C004C8 ;clear hardware sprites</syntaxhighlight> |
||
===Sega Genesis=== |
===Sega Genesis=== |
||
Line 119: | Line 119: | ||
< |
<syntaxhighlight lang="68000devpac">dma_fill: |
||
;input: |
;input: |
||
;D2.L = what address to write to. |
;D2.L = what address to write to. |
||
Line 173: | Line 173: | ||
move.w #$8F02,(vdp_ctrl) ;set auto-inc back to 2 |
move.w #$8F02,(vdp_ctrl) ;set auto-inc back to 2 |
||
MOVEM.L (SP)+,D3-D7 |
MOVEM.L (SP)+,D3-D7 |
||
RTR</ |
RTR</syntaxhighlight> |
||
=={{header|8080 Assembly}}== |
=={{header|8080 Assembly}}== |
||
Line 183: | Line 183: | ||
output, as CP/M was the de facto standard operating system for 8080-based systems. |
output, as CP/M was the de facto standard operating system for 8080-based systems. |
||
< |
<syntaxhighlight lang="8080asm">putch: equ 2 ; CP/M 'putchar' syscall |
||
bdos: equ 5 ; CP/M BDOS entry point |
bdos: equ 5 ; CP/M BDOS entry point |
||
FF: equ 12 ; ASCII form feed |
FF: equ 12 ; ASCII form feed |
||
Line 189: | Line 189: | ||
mvi c,putch ; Print character (syscall goes in C register) |
mvi c,putch ; Print character (syscall goes in C register) |
||
mvi e,FF ; Form feed (argument goes in E register) |
mvi e,FF ; Form feed (argument goes in E register) |
||
jmp bdos ; Call CP/M BDOS and quit</ |
jmp bdos ; Call CP/M BDOS and quit</syntaxhighlight> |
||
=={{header|AArch64 Assembly}}== |
=={{header|AArch64 Assembly}}== |
||
{{works with|as|Raspberry Pi 3B version Buster 64 bits}} |
{{works with|as|Raspberry Pi 3B version Buster 64 bits}} |
||
<syntaxhighlight lang="aarch64 assembly"> |
|||
<lang AArch64 Assembly> |
|||
/* ARM assembly AARCH64 Raspberry PI 3B */ |
/* ARM assembly AARCH64 Raspberry PI 3B */ |
||
/* program clearScreen.s */ |
/* program clearScreen.s */ |
||
Line 248: | Line 248: | ||
/* for this file see task include a file in language AArch64 assembly */ |
/* for this file see task include a file in language AArch64 assembly */ |
||
.include "../includeARM64.inc" |
.include "../includeARM64.inc" |
||
</syntaxhighlight> |
|||
</lang> |
|||
=={{header|Action!}}== |
=={{header|Action!}}== |
||
< |
<syntaxhighlight lang="action!">proc Main() |
||
Put(125) |
Put(125) |
||
return</ |
return</syntaxhighlight> |
||
Line 260: | Line 260: | ||
For systems with ANSI terminal handling: |
For systems with ANSI terminal handling: |
||
< |
<syntaxhighlight lang="ada">with Ada.Text_IO; |
||
procedure CLS is |
procedure CLS is |
||
begin |
begin |
||
Ada.Text_IO.Put(ASCII.ESC & "[2J"); |
Ada.Text_IO.Put(ASCII.ESC & "[2J"); |
||
end CLS;</ |
end CLS;</syntaxhighlight> |
||
=={{header|ALGOL 68}}== |
=={{header|ALGOL 68}}== |
||
{{works with|ALGOL 68G|Any - tested with release 2.8.3.win32}} |
{{works with|ALGOL 68G|Any - tested with release 2.8.3.win32}} |
||
Uses the Algol 68G interface to the curses library. |
Uses the Algol 68G interface to the curses library. |
||
< |
<syntaxhighlight lang="algol68">curses start; # needed before any screen clearing, positioning etc. # |
||
curses clear # clear the screen #</ |
curses clear # clear the screen #</syntaxhighlight> |
||
=={{header|ARM Assembly}}== |
=={{header|ARM Assembly}}== |
||
{{works with|as|Raspberry Pi}} |
{{works with|as|Raspberry Pi}} |
||
<syntaxhighlight lang="arm assembly"> |
|||
<lang ARM Assembly> |
|||
/* ARM assembly Raspberry PI */ |
/* ARM assembly Raspberry PI */ |
||
Line 342: | Line 342: | ||
bx lr @ return |
bx lr @ return |
||
</syntaxhighlight> |
|||
</lang> |
|||
=={{header|Arturo}}== |
=={{header|Arturo}}== |
||
<lang |
<syntaxhighlight lang="rebol">clear</syntaxhighlight> |
||
=={{header|AutoHotkey}}== |
=={{header|AutoHotkey}}== |
||
Reference: http://www.autohotkey.com/forum/topic76532.html |
Reference: http://www.autohotkey.com/forum/topic76532.html |
||
<lang |
<syntaxhighlight lang="ahk">RunWait %comspec% /c cls</syntaxhighlight> |
||
=={{header|AWK}}== |
=={{header|AWK}}== |
||
< |
<syntaxhighlight lang="awk">system("clear")</syntaxhighlight> |
||
=={{header|Axe}}== |
=={{header|Axe}}== |
||
<lang |
<syntaxhighlight lang="axe">ClrHome</syntaxhighlight> |
||
=={{header|BaCon}}== |
=={{header|BaCon}}== |
||
<lang |
<syntaxhighlight lang="freebasic">CLEAR</syntaxhighlight> |
||
=={{header|BASIC}}== |
=={{header|BASIC}}== |
||
Line 366: | Line 366: | ||
{{works with|ZX Spectrum Basic}} |
{{works with|ZX Spectrum Basic}} |
||
{{works with|BBC BASIC}} |
{{works with|BBC BASIC}} |
||
<lang |
<syntaxhighlight lang="qbasic">CLS</syntaxhighlight> |
||
==={{header|Applesoft BASIC}}=== |
==={{header|Applesoft BASIC}}=== |
||
<lang |
<syntaxhighlight lang="applesoftbasic">HOME</syntaxhighlight> |
||
==={{header|Aquarius BASIC}}=== |
==={{header|Aquarius BASIC}}=== |
||
<lang |
<syntaxhighlight lang="aquarius basic">PRINT CHR$(11);</syntaxhighlight> |
||
==={{header|Atari BASIC}}=== |
==={{header|Atari BASIC}}=== |
||
<lang |
<syntaxhighlight lang="atari basic">PRINT CHR$(125);</syntaxhighlight> |
||
==={{header|BASIC256}}=== |
==={{header|BASIC256}}=== |
||
< |
<syntaxhighlight lang="basic256"> cls |
||
#Borra la ventana de texto</ |
#Borra la ventana de texto</syntaxhighlight> |
||
y |
y |
||
< |
<syntaxhighlight lang="basic256"> clg |
||
#Borra la ventana de gráficos</ |
#Borra la ventana de gráficos</syntaxhighlight> |
||
==={{header|BBC BASIC}}=== |
==={{header|BBC BASIC}}=== |
||
<lang |
<syntaxhighlight lang="bbcbasic"> CLS</syntaxhighlight> |
||
or |
or |
||
<lang |
<syntaxhighlight lang="bbcbasic"> VDU 12</syntaxhighlight> |
||
or |
or |
||
< |
<syntaxhighlight lang="bbcbasic"> PRINT CHR$(12);</syntaxhighlight> |
||
==={{header|Commodore BASIC}}=== |
==={{header|Commodore BASIC}}=== |
||
<lang |
<syntaxhighlight lang="commodore basic">PRINT CHR$(147);</syntaxhighlight> |
||
{{works with|Commodore BASIC|3.5,7.0}} |
{{works with|Commodore BASIC|3.5,7.0}} |
||
(Also works on a VIC-20 with the SuperExpander cartridge) |
(Also works on a VIC-20 with the SuperExpander cartridge) |
||
<lang |
<syntaxhighlight lang="basic">SCNCLR</syntaxhighlight> |
||
==={{header|GW-BASIC}}=== |
==={{header|GW-BASIC}}=== |
||
<lang |
<syntaxhighlight lang="qbasic">10 CLS</syntaxhighlight> |
||
==={{header|IS-BASIC}}=== |
==={{header|IS-BASIC}}=== |
||
<lang |
<syntaxhighlight lang="is-basic">100 CLEAR SCREEN</syntaxhighlight> |
||
==={{header|PureBasic}}=== |
==={{header|PureBasic}}=== |
||
Clears the whole console content using the current background color. |
Clears the whole console content using the current background color. |
||
<lang |
<syntaxhighlight lang="purebasic">ClearConsole()</syntaxhighlight> |
||
==={{header|True BASIC}}=== |
==={{header|True BASIC}}=== |
||
< |
<syntaxhighlight lang="truebasic">CLEAR |
||
END</ |
END</syntaxhighlight> |
||
=={{header|Batch File}}== |
=={{header|Batch File}}== |
||
<lang |
<syntaxhighlight lang="command">CLS</syntaxhighlight> |
||
=={{header|beeswax}}== |
=={{header|beeswax}}== |
||
Line 421: | Line 421: | ||
Using the ANSI escape sequence <code>Esc[2J</code>. |
Using the ANSI escape sequence <code>Esc[2J</code>. |
||
<lang |
<syntaxhighlight lang="beeswax">_3F..}`[2J`</syntaxhighlight> |
||
=={{header|Befunge}}== |
=={{header|Befunge}}== |
||
Assuming a terminal with support for ANSI escape sequences. |
Assuming a terminal with support for ANSI escape sequences. |
||
< |
<syntaxhighlight lang="befunge">"J2["39*,,,,@</syntaxhighlight> |
||
=={{header|Blast}}== |
=={{header|Blast}}== |
||
<lang |
<syntaxhighlight lang="blast">clear</syntaxhighlight> |
||
=={{header|Blue}}== |
=={{header|Blue}}== |
||
Line 435: | Line 435: | ||
Linux/x86 |
Linux/x86 |
||
< |
<syntaxhighlight lang="blue">global _start |
||
: syscall ( num:eax -- result:eax ) syscall ; |
: syscall ( num:eax -- result:eax ) syscall ; |
||
Line 449: | Line 449: | ||
: clear-screen ( -- ) s" \033[2J\033[H" print ; |
: clear-screen ( -- ) s" \033[2J\033[H" print ; |
||
: _start ( -- noret ) clear-screen bye ;</ |
: _start ( -- noret ) clear-screen bye ;</syntaxhighlight> |
||
=={{header|Bracmat}}== |
=={{header|Bracmat}}== |
||
<lang |
<syntaxhighlight lang="bracmat">sys$cls&</syntaxhighlight> |
||
=={{header|C}} / {{header|C++}}== |
=={{header|C}} / {{header|C++}}== |
||
Line 459: | Line 459: | ||
If perhaps clear screen isn't used, call the function <code>cls</code> to do the trick. |
If perhaps clear screen isn't used, call the function <code>cls</code> to do the trick. |
||
< |
<syntaxhighlight lang="c">void cls(void) { |
||
printf("\33[2J"); |
printf("\33[2J"); |
||
}</ |
}</syntaxhighlight> |
||
Here is the cheaty way no one likes, only works on Windows. |
Here is the cheaty way no one likes, only works on Windows. |
||
< |
<syntaxhighlight lang="c">#include <stdio.h> |
||
#include <stdlib.h> |
#include <stdlib.h> |
||
Line 472: | Line 472: | ||
getchar(); |
getchar(); |
||
system("cls"); |
system("cls"); |
||
}</ |
}</syntaxhighlight> |
||
For Unix-likes, changing the above <code>system("cls");</code> to <code>system("clear");</code> usually works, however the <code>getchar();</code> perhaps doesn't always work as expected if you press anything other than return. This is because of the raw vs. cooked terminal mode thing. |
For Unix-likes, changing the above <code>system("cls");</code> to <code>system("clear");</code> usually works, however the <code>getchar();</code> perhaps doesn't always work as expected if you press anything other than return. This is because of the raw vs. cooked terminal mode thing. |
||
=={{header|C sharp|C#}}== |
=={{header|C sharp|C#}}== |
||
<lang |
<syntaxhighlight lang="csharp">System.Console.Clear();</syntaxhighlight> |
||
Works on all .NET Core platforms. Throws an exception if output has been redirected to a file. |
Works on all .NET Core platforms. Throws an exception if output has been redirected to a file. |
||
=={{header|COBOL}}== |
=={{header|COBOL}}== |
||
< |
<syntaxhighlight lang="cobol"> PROGRAM-ID. blank-terminal. |
||
DATA DIVISION. |
DATA DIVISION. |
||
Line 491: | Line 491: | ||
GOBACK |
GOBACK |
||
.</ |
.</syntaxhighlight> |
||
=={{header|Comal}}== |
=={{header|Comal}}== |
||
<lang |
<syntaxhighlight lang="comal">PAGE</syntaxhighlight> |
||
=={{header|Common Lisp}}== |
=={{header|Common Lisp}}== |
||
< |
<syntaxhighlight lang="lisp"> |
||
(format t "~C[2J" #\Esc) |
(format t "~C[2J" #\Esc) |
||
</syntaxhighlight> |
|||
</lang> |
|||
or it could be done passing the 'clear' command to the shell |
or it could be done passing the 'clear' command to the shell |
||
< |
<syntaxhighlight lang="lisp"> |
||
(defun sh (cmd) |
(defun sh (cmd) |
||
"A multi-implementation function equivalent for the C function system" |
"A multi-implementation function equivalent for the C function system" |
||
Line 509: | Line 509: | ||
#+clozure (ccl:run-program "/bin/sh" (list "-c" cmd) :input nil :output *standard-output*)) |
#+clozure (ccl:run-program "/bin/sh" (list "-c" cmd) :input nil :output *standard-output*)) |
||
(sh "clear") |
(sh "clear") |
||
</syntaxhighlight> |
|||
</lang> |
|||
==={{header|ncurses}}=== |
==={{header|ncurses}}=== |
||
When the ncurses terminal library is used, characters are displayed on an alternate screen. Clearing that alternate screen does not clear the main screen of the terminal from which ncurses was started. To interface ncurses from Lisp, the ''croatoan'' library is used. |
When the ncurses terminal library is used, characters are displayed on an alternate screen. Clearing that alternate screen does not clear the main screen of the terminal from which ncurses was started. To interface ncurses from Lisp, the ''croatoan'' library is used. |
||
< |
<syntaxhighlight lang="lisp">(defun clear-test () |
||
;; starting ncurses enters the alternate screen buffer of the terminal |
;; starting ncurses enters the alternate screen buffer of the terminal |
||
(with-screen (scr :input-echoing nil :input-blocking t) |
(with-screen (scr :input-echoing nil :input-blocking t) |
||
Line 523: | Line 523: | ||
(refresh scr) |
(refresh scr) |
||
(get-char scr))) |
(get-char scr))) |
||
;; leaving ncurses returns the terminal to the main screen buffer</ |
;; leaving ncurses returns the terminal to the main screen buffer</syntaxhighlight> |
||
=={{header|D}}== |
=={{header|D}}== |
||
< |
<syntaxhighlight lang="d">extern (C) nothrow { |
||
void disp_open(); |
void disp_open(); |
||
void disp_move(int, int); |
void disp_move(int, int); |
||
Line 538: | Line 538: | ||
disp_eeop(); |
disp_eeop(); |
||
disp_close(); |
disp_close(); |
||
}</ |
}</syntaxhighlight> |
||
=={{header|Dc}}== |
=={{header|Dc}}== |
||
===Using external "clear" binary=== |
===Using external "clear" binary=== |
||
Dc's command to execute shell commands can only be the last command of a line. That's no problem with multi line Dc programs but not very helpful in Dc oneliners: |
Dc's command to execute shell commands can only be the last command of a line. That's no problem with multi line Dc programs but not very helpful in Dc oneliners: |
||
<lang |
<syntaxhighlight lang="dc">!clear</syntaxhighlight> |
||
Luckily there is a loophole: |
Luckily there is a loophole: |
||
<lang |
<syntaxhighlight lang="dc">[ !clear ] x</syntaxhighlight> |
||
===Using a terminal control sequence=== |
===Using a terminal control sequence=== |
||
Line 551: | Line 551: | ||
could be to home the cursor ("ESC[H", "1B 5B 48") and then clear to the end of the |
could be to home the cursor ("ESC[H", "1B 5B 48") and then clear to the end of the |
||
screen ("ESC[J", "1B 5B 4A"). |
screen ("ESC[J", "1B 5B 4A"). |
||
<lang |
<syntaxhighlight lang="dc">16i 1B5B481B5B4A P</syntaxhighlight> |
||
=={{header|Delphi}}== |
=={{header|Delphi}}== |
||
{{libheader| System.SysUtils}} |
{{libheader| System.SysUtils}} |
||
Line 557: | Line 557: | ||
===Stand alone function=== |
===Stand alone function=== |
||
Copy of David Heffrnan on stackoverflow [https://stackoverflow.com/questions/29794559/delphi-console-xe7-clearscreen]. |
Copy of David Heffrnan on stackoverflow [https://stackoverflow.com/questions/29794559/delphi-console-xe7-clearscreen]. |
||
<syntaxhighlight lang="delphi"> |
|||
<lang Delphi> |
|||
uses |
uses |
||
System.SysUtils, |
System.SysUtils, |
||
Line 581: | Line 581: | ||
NumWritten)); |
NumWritten)); |
||
Win32Check(SetConsoleCursorPosition(stdout, Origin)); |
Win32Check(SetConsoleCursorPosition(stdout, Origin)); |
||
end;</ |
end;</syntaxhighlight> |
||
===Library System.Console from Jens Borrisholt=== |
===Library System.Console from Jens Borrisholt=== |
||
{{libheader| System.Console}} |
{{libheader| System.Console}} |
||
The System.Console can be found here[https://github.com/JensBorrisholt/DelphiConsole/tree/master/Console] |
The System.Console can be found here[https://github.com/JensBorrisholt/DelphiConsole/tree/master/Console] |
||
<lang |
<syntaxhighlight lang="delphi">console.Clear;</syntaxhighlight> |
||
=={{header|Elena}}== |
=={{header|Elena}}== |
||
ELENA 3.4 : |
ELENA 3.4 : |
||
< |
<syntaxhighlight lang="elena">public program() |
||
{ |
{ |
||
console.clear() |
console.clear() |
||
}</ |
}</syntaxhighlight> |
||
=={{header|Erlang}}== |
=={{header|Erlang}}== |
||
<syntaxhighlight lang="erlang"> |
|||
<lang Erlang> |
|||
clear()->io:format(os:cmd("clear")). |
clear()->io:format(os:cmd("clear")). |
||
</syntaxhighlight> |
|||
</lang> |
|||
=={{header|Euphoria}}== |
=={{header|Euphoria}}== |
||
<lang |
<syntaxhighlight lang="euphoria">clear_screen()</syntaxhighlight> |
||
=={{header|F_Sharp|F#}}== |
=={{header|F_Sharp|F#}}== |
||
< |
<syntaxhighlight lang="fsharp">open System |
||
Console.Clear()</ |
Console.Clear()</syntaxhighlight> |
||
=={{header|Forth}}== |
=={{header|Forth}}== |
||
<lang |
<syntaxhighlight lang="forth">page</syntaxhighlight> |
||
=={{header|Fortran}}== |
=={{header|Fortran}}== |
||
'''Fortran 2008''': |
'''Fortran 2008''': |
||
< |
<syntaxhighlight lang="fortran">program clear |
||
character(len=:), allocatable :: clear_command |
character(len=:), allocatable :: clear_command |
||
clear_command = "clear" !"cls" on Windows, "clear" on Linux and alike |
clear_command = "clear" !"cls" on Windows, "clear" on Linux and alike |
||
call execute_command_line(clear_command) |
call execute_command_line(clear_command) |
||
end program</ |
end program</syntaxhighlight> |
||
=== Intel Fortran on Windows === |
=== Intel Fortran on Windows === |
||
Using console functions, one can also clear the screen without using a system command. See also ''[https://msdn.microsoft.com/en-us/library/ms682022.aspx Clearing the Screen]'' on MSDN. |
Using console functions, one can also clear the screen without using a system command. See also ''[https://msdn.microsoft.com/en-us/library/ms682022.aspx Clearing the Screen]'' on MSDN. |
||
< |
<syntaxhighlight lang="fortran">program clear |
||
use kernel32 |
use kernel32 |
||
implicit none |
implicit none |
||
Line 647: | Line 647: | ||
if (SetConsoleCursorPosition(hConsole, coordScreen) == 0) return |
if (SetConsoleCursorPosition(hConsole, coordScreen) == 0) return |
||
end subroutine |
end subroutine |
||
end program</ |
end program</syntaxhighlight> |
||
=== GNU Fortran on Windows === |
=== GNU Fortran on Windows === |
||
The preceding program can be compiled with GNU Fortran, with the following interface module for Windows API. |
The preceding program can be compiled with GNU Fortran, with the following interface module for Windows API. |
||
< |
<syntaxhighlight lang="fortran">module kernel32 |
||
use iso_c_binding |
use iso_c_binding |
||
implicit none |
implicit none |
||
Line 748: | Line 748: | ||
end interface |
end interface |
||
end module |
end module |
||
</syntaxhighlight> |
|||
</lang> |
|||
=={{header|FreeBASIC}}== |
=={{header|FreeBASIC}}== |
||
< |
<syntaxhighlight lang="freebasic">' FB 1.05.0 Win64 |
||
' FreeBASIC has a built in Cls command which clears the console on Windows |
' FreeBASIC has a built in Cls command which clears the console on Windows |
||
Line 758: | Line 758: | ||
Shell("Cls") |
Shell("Cls") |
||
Sleep</ |
Sleep</syntaxhighlight> |
||
=={{header|Furor}}== |
=={{header|Furor}}== |
||
<syntaxhighlight lang="go"> |
|||
<lang go> |
|||
cls |
cls |
||
</syntaxhighlight> |
|||
</lang> |
|||
Yet another solution: |
Yet another solution: |
||
<syntaxhighlight lang="go"> |
|||
<lang go> |
|||
."\z" |
."\z" |
||
</syntaxhighlight> |
|||
</lang> |
|||
Line 774: | Line 774: | ||
===External command=== |
===External command=== |
||
Probably most reliable way to clear the screen. |
Probably most reliable way to clear the screen. |
||
< |
<syntaxhighlight lang="go">package main |
||
import ( |
import ( |
||
Line 785: | Line 785: | ||
c.Stdout = os.Stdout |
c.Stdout = os.Stdout |
||
c.Run() |
c.Run() |
||
}</ |
}</syntaxhighlight> |
||
===ANSI escape code=== |
===ANSI escape code=== |
||
Simplest, if your terminal supports the ANSI code you want. |
Simplest, if your terminal supports the ANSI code you want. |
||
< |
<syntaxhighlight lang="go">package main |
||
import "fmt" |
import "fmt" |
||
Line 795: | Line 795: | ||
func main() { |
func main() { |
||
fmt.Print("\033[2J") |
fmt.Print("\033[2J") |
||
}</ |
}</syntaxhighlight> |
||
===Ncurses=== |
===Ncurses=== |
||
More complex, but works across multiple terminal types. |
More complex, but works across multiple terminal types. |
||
{{libheader|curses}} |
{{libheader|curses}} |
||
< |
<syntaxhighlight lang="go">package main |
||
import ( |
import ( |
||
Line 823: | Line 823: | ||
// GetChar() allows you to see the effect of the program before it exits. |
// GetChar() allows you to see the effect of the program before it exits. |
||
s.GetChar() // press any key to continue |
s.GetChar() // press any key to continue |
||
}</ |
}</syntaxhighlight> |
||
=={{header|GUISS}}== |
=={{header|GUISS}}== |
||
This will only work if the terminal is sitting at a prompt. |
This will only work if the terminal is sitting at a prompt. |
||
<lang |
<syntaxhighlight lang="guiss">Window:Terminal,Type:clear[enter]</syntaxhighlight> |
||
=={{header|Haskell}}== |
=={{header|Haskell}}== |
||
<syntaxhighlight lang="haskell"> |
|||
<lang Haskell> |
|||
import System.Console.ANSI |
import System.Console.ANSI |
||
main = clearScreen |
main = clearScreen |
||
</syntaxhighlight> |
|||
</lang> |
|||
=={{header|Icon}} and {{header|Unicon}}== |
=={{header|Icon}} and {{header|Unicon}}== |
||
Example works for both Icon and Unicon. Determine which system command to call by querying &features at run time. Alternately, the related preprocessor symbols can be used to select the operating system. |
Example works for both Icon and Unicon. Determine which system command to call by querying &features at run time. Alternately, the related preprocessor symbols can be used to select the operating system. |
||
< |
<syntaxhighlight lang="icon">procedure main () |
||
if &features == "MS Windows" then system("cls") # Windows |
if &features == "MS Windows" then system("cls") # Windows |
||
else if &features == "UNIX" then system("clear") # Unix |
else if &features == "UNIX" then system("clear") # Unix |
||
end</ |
end</syntaxhighlight> |
||
=={{header|J}}== |
=={{header|J}}== |
||
Note: this is specific the java+gdi based J ide. |
Note: this is specific the java+gdi based J ide. |
||
<lang |
<syntaxhighlight lang="j">smwrite_jijs_ ''</syntaxhighlight> |
||
=={{header|Java}}== |
=={{header|Java}}== |
||
Using the ANSI escape sequence: |
Using the ANSI escape sequence: |
||
< |
<syntaxhighlight lang="java">public class Clear |
||
{ |
{ |
||
public static void main (String[] args) |
public static void main (String[] args) |
||
Line 856: | Line 856: | ||
System.out.print("\033[2J"); |
System.out.print("\033[2J"); |
||
} |
} |
||
}</ |
}</syntaxhighlight> |
||
An alternative sequence: |
An alternative sequence: |
||
< |
<syntaxhighlight lang="java">public class Clear |
||
{ |
{ |
||
public static void main (String[] args) |
public static void main (String[] args) |
||
Line 864: | Line 864: | ||
System.out.print("\033\143"); |
System.out.print("\033\143"); |
||
} |
} |
||
}</ |
}</syntaxhighlight> |
||
=={{header|jq}}== |
=={{header|jq}}== |
||
< |
<syntaxhighlight lang="jq">"\u001B[2J"</syntaxhighlight> |
||
'''Example''': |
'''Example''': |
||
< |
<syntaxhighlight lang="sh">$ jq -n '"\u001B[2J"'</syntaxhighlight> |
||
=={{header|Jsish}}== |
=={{header|Jsish}}== |
||
Using ANSI terminal control codes. |
Using ANSI terminal control codes. |
||
< |
<syntaxhighlight lang="javascript">/* Terminal Control, clear the screen, in Jsish */ |
||
function cls() { printf('\u001b[2J'); } |
function cls() { printf('\u001b[2J'); } |
||
Line 882: | Line 882: | ||
cls() ==> ^[[2Jundefined |
cls() ==> ^[[2Jundefined |
||
=!EXPECTEND!= |
=!EXPECTEND!= |
||
*/</ |
*/</syntaxhighlight> |
||
{{out}} |
{{out}} |
||
Line 889: | Line 889: | ||
=={{header|Julia}}== |
=={{header|Julia}}== |
||
< |
<syntaxhighlight lang="julia"> |
||
println("\33[2J") |
println("\33[2J") |
||
</syntaxhighlight> |
|||
</lang> |
|||
=={{header|Kotlin}}== |
=={{header|Kotlin}}== |
||
{{works with|Ubuntu|14.04}} |
{{works with|Ubuntu|14.04}} |
||
< |
<syntaxhighlight lang="scala">// version 1.1.2 |
||
fun main(args: Array<String>) { |
fun main(args: Array<String>) { |
||
println("\u001Bc") // Esc + c |
println("\u001Bc") // Esc + c |
||
}</ |
}</syntaxhighlight> |
||
=={{header|Lasso}}== |
=={{header|Lasso}}== |
||
< |
<syntaxhighlight lang="lasso">local( |
||
esc = decode_base64('Gw==') |
esc = decode_base64('Gw==') |
||
) |
) |
||
stdout(#esc + '[2J')</ |
stdout(#esc + '[2J')</syntaxhighlight> |
||
=={{header|Logo}}== |
=={{header|Logo}}== |
||
<lang |
<syntaxhighlight lang="logo">cleartext</syntaxhighlight> |
||
There is a separate command to reset the turtle graphics window. |
There is a separate command to reset the turtle graphics window. |
||
< |
<syntaxhighlight lang="logo">clearscreen |
||
cs ; abbreviation for clearscreen |
cs ; abbreviation for clearscreen |
||
clean ; like cs, but doesn't reset turtle position</ |
clean ; like cs, but doesn't reset turtle position</syntaxhighlight> |
||
=={{header|Lua}}== |
=={{header|Lua}}== |
||
===Unix, Linux=== |
===Unix, Linux=== |
||
< |
<syntaxhighlight lang="lua">os.execute( "clear" )</syntaxhighlight> |
||
===Windows=== |
===Windows=== |
||
< |
<syntaxhighlight lang="lua">os.execute( "cls" )</syntaxhighlight> |
||
=={{header|M2000 Interpreter}}== |
=={{header|M2000 Interpreter}}== |
||
We can clear the screen with Form, Cls, Window statements. Each one perform something on the console form except clear it. Form change the size of letters using the size of window. Window change all. Cls change the background color, or use the same (is optional) and optional can set the line for the split screen (from that line we have scrolling). Also we can use Linespace statement (in twips) to set the line space. Statement Form set linespace automatic to give space between lines to full use of the window. |
We can clear the screen with Form, Cls, Window statements. Each one perform something on the console form except clear it. Form change the size of letters using the size of window. Window change all. Cls change the background color, or use the same (is optional) and optional can set the line for the split screen (from that line we have scrolling). Also we can use Linespace statement (in twips) to set the line space. Statement Form set linespace automatic to give space between lines to full use of the window. |
||
<syntaxhighlight lang="m2000 interpreter"> |
|||
<lang M2000 Interpreter> |
|||
Module Checkit { |
Module Checkit { |
||
Pen 14 ' yellow |
Pen 14 ' yellow |
||
Line 959: | Line 959: | ||
} |
} |
||
checkit |
checkit |
||
</syntaxhighlight> |
|||
</lang> |
|||
=={{header|Mathematica}}/{{header|Wolfram Language}}== |
=={{header|Mathematica}}/{{header|Wolfram Language}}== |
||
Delegating to clear on terminal enabled OS(Mac Os, Linux) |
Delegating to clear on terminal enabled OS(Mac Os, Linux) |
||
< |
<syntaxhighlight lang="mathematica">Run["clear"];</syntaxhighlight> |
||
=={{header|Nanoquery}}== |
=={{header|Nanoquery}}== |
||
<lang |
<syntaxhighlight lang="nanoquery">cls</syntaxhighlight> |
||
=={{header|Nemerle}}== |
=={{header|Nemerle}}== |
||
Exactly as [[Terminal_control/Clear_the_screen#C.23|C#]]. Because of possible (probable) ambiguity, this is one time it may be prudent to use: |
Exactly as [[Terminal_control/Clear_the_screen#C.23|C#]]. Because of possible (probable) ambiguity, this is one time it may be prudent to use: |
||
<lang |
<syntaxhighlight lang="nemerle">Console.Clear();</syntaxhighlight> |
||
rather than importing the <tt>Console</tt> class with <tt>using System.Console;</tt> and calling as: |
rather than importing the <tt>Console</tt> class with <tt>using System.Console;</tt> and calling as: |
||
<lang |
<syntaxhighlight lang="nemerle">Clear();</syntaxhighlight> |
||
=={{header|NewLISP}}== |
=={{header|NewLISP}}== |
||
<syntaxhighlight lang="newlisp"> |
|||
<lang NewLISP> |
|||
(! "clear") |
(! "clear") |
||
</syntaxhighlight> |
|||
</lang> |
|||
In the newLISP command shell, this syntax is also proper: |
In the newLISP command shell, this syntax is also proper: |
||
<syntaxhighlight lang="newlisp"> |
|||
<lang NewLISP> |
|||
!clear |
!clear |
||
</syntaxhighlight> |
|||
</lang> |
|||
=={{header|Nim}}== |
=={{header|Nim}}== |
||
< |
<syntaxhighlight lang="nim"> |
||
import terminal |
import terminal |
||
eraseScreen() #puts cursor at down |
eraseScreen() #puts cursor at down |
||
setCursorPos(0, 0) |
setCursorPos(0, 0) |
||
</syntaxhighlight> |
|||
</lang> |
|||
=={{header|NS-HUBASIC}}== |
=={{header|NS-HUBASIC}}== |
||
<lang |
<syntaxhighlight lang="ns-hubasic">10 CLS</syntaxhighlight> |
||
=={{header|OCaml}}== |
=={{header|OCaml}}== |
||
Line 998: | Line 998: | ||
Using the library [http://forge.ocamlcore.org/projects/ansiterminal/ ANSITerminal]: |
Using the library [http://forge.ocamlcore.org/projects/ansiterminal/ ANSITerminal]: |
||
< |
<syntaxhighlight lang="ocaml">#load "unix.cma" |
||
#directory "+ANSITerminal" |
#directory "+ANSITerminal" |
||
#load "ANSITerminal.cma" |
#load "ANSITerminal.cma" |
||
Line 1,004: | Line 1,004: | ||
let () = |
let () = |
||
erase Screen</ |
erase Screen</syntaxhighlight> |
||
=={{header|Octave}}== |
=={{header|Octave}}== |
||
<lang |
<syntaxhighlight lang="octave"> system clear;</syntaxhighlight> |
||
<lang |
<syntaxhighlight lang="octave"> system('clear');</syntaxhighlight> |
||
=={{header|Pascal}}== |
=={{header|Pascal}}== |
||
<lang |
<syntaxhighlight lang="pascal">clrscr;</syntaxhighlight> |
||
<lang |
<syntaxhighlight lang="pascal">page(output); { UCSD Pascal }</syntaxhighlight> |
||
=={{header|Perl}}== |
=={{header|Perl}}== |
||
Assuming some ANSI terminal, easiest way is call your system's clear command: |
Assuming some ANSI terminal, easiest way is call your system's clear command: |
||
<lang |
<syntaxhighlight lang="perl">system('clear')</syntaxhighlight> |
||
If it's needed often: |
If it's needed often: |
||
< |
<syntaxhighlight lang="perl">$clear = `clear`; # clear simply prints some escape sequence, cache it |
||
#... later: |
#... later: |
||
print $clear;</ |
print $clear;</syntaxhighlight> |
||
We can also obtain the sequence using the Term::Cap module: |
We can also obtain the sequence using the Term::Cap module: |
||
< |
<syntaxhighlight lang="perl">use Term::Cap; |
||
$terminal = Term::Cap->Tgetent(); |
$terminal = Term::Cap->Tgetent(); |
||
$clear = $terminal->Tputs('cl'); |
$clear = $terminal->Tputs('cl'); |
||
print $clear;</ |
print $clear;</syntaxhighlight> |
||
< |
<syntaxhighlight lang="perl">#on Windows using Powershell or WT.exe |
||
system('cls');</ |
system('cls');</syntaxhighlight> |
||
=={{header|Phix}}== |
=={{header|Phix}}== |
||
<!--< |
<!--<syntaxhighlight lang="phix">(phixonline)--> |
||
<span style="color: #7060A8;">clear_screen</span><span style="color: #0000FF;">()</span> |
<span style="color: #7060A8;">clear_screen</span><span style="color: #0000FF;">()</span> |
||
<!--</ |
<!--</syntaxhighlight>--> |
||
=={{header|PicoLisp}}== |
=={{header|PicoLisp}}== |
||
<lang |
<syntaxhighlight lang="picolisp">(call 'clear)</syntaxhighlight> |
||
=={{header|Pike}}== |
=={{header|Pike}}== |
||
< |
<syntaxhighlight lang="pike">int main() { |
||
Process.system("clear"); |
Process.system("clear"); |
||
return 0; |
return 0; |
||
}</ |
}</syntaxhighlight> |
||
Use "cls" instead of "clear" for Windows |
Use "cls" instead of "clear" for Windows |
||
=={{header|PowerShell}}== |
=={{header|PowerShell}}== |
||
<lang |
<syntaxhighlight lang="powershell">Clear-Host</syntaxhighlight> |
||
=={{header|ProDOS}}== |
=={{header|ProDOS}}== |
||
<lang |
<syntaxhighlight lang="prodos">clearscurrentscreentext</syntaxhighlight> |
||
=={{header|Python}}== |
=={{header|Python}}== |
||
Line 1,063: | Line 1,063: | ||
To clear the screen on Windows, replace 'clear' with 'cls' |
To clear the screen on Windows, replace 'clear' with 'cls' |
||
< |
<syntaxhighlight lang="python">import os |
||
os.system("clear")</ |
os.system("clear")</syntaxhighlight> |
||
Or similar to C example (won't work in Winsows console, since it does not recognize ANSI sequences): |
Or similar to C example (won't work in Winsows console, since it does not recognize ANSI sequences): |
||
< |
<syntaxhighlight lang="python">print "\33[2J"</syntaxhighlight> |
||
On Windows, using functions from the kernel32 DLL: |
On Windows, using functions from the kernel32 DLL: |
||
< |
<syntaxhighlight lang="python">from ctypes import * |
||
STD_OUTPUT_HANDLE = -11 |
STD_OUTPUT_HANDLE = -11 |
||
Line 1,109: | Line 1,109: | ||
windll.kernel32.SetConsoleCursorPosition(h, scr) |
windll.kernel32.SetConsoleCursorPosition(h, scr) |
||
clear_console()</ |
clear_console()</syntaxhighlight> |
||
=={{header|Quackery}}== |
=={{header|Quackery}}== |
||
Line 1,118: | Line 1,118: | ||
On some platforms the screen will not be cleared until the output buffer is flushed e.g. by a cr/lf. |
On some platforms the screen will not be cleared until the output buffer is flushed e.g. by a cr/lf. |
||
< |
<syntaxhighlight lang="quackery"> [ $ &print("\33[2J",end='')& python ] is clearscreen</syntaxhighlight> |
||
=={{header|R}}== |
=={{header|R}}== |
||
< |
<syntaxhighlight lang="r">cat("\33[2J")</syntaxhighlight> |
||
Or with system calls |
Or with system calls |
||
< |
<syntaxhighlight lang="r"># Unix |
||
system("clear") |
system("clear") |
||
# Windows |
# Windows |
||
system("cls")</ |
system("cls")</syntaxhighlight> |
||
=={{header|Racket}}== |
=={{header|Racket}}== |
||
< |
<syntaxhighlight lang="racket"> |
||
#lang racket |
#lang racket |
||
(require (planet neil/charterm:3:0)) |
(require (planet neil/charterm:3:0)) |
||
(with-charterm |
(with-charterm |
||
(void (charterm-clear-screen))) |
(void (charterm-clear-screen))) |
||
</syntaxhighlight> |
|||
</lang> |
|||
=={{header|Raku}}== |
=={{header|Raku}}== |
||
(formerly Perl 6) |
(formerly Perl 6) |
||
<lang |
<syntaxhighlight lang="raku" line>sub clear { print qx[clear] } |
||
clear;</ |
clear;</syntaxhighlight> |
||
=={{header|Retro}}== |
=={{header|Retro}}== |
||
<lang |
<syntaxhighlight lang="retro">clear</syntaxhighlight> |
||
=={{header|REXX}}== |
=={{header|REXX}}== |
||
Line 1,173: | Line 1,173: | ||
<br>The intent of the program's boilerplate code is to be able to be executed under most REXXes under most operating systems without changing the boilerplate REXX code. |
<br>The intent of the program's boilerplate code is to be able to be executed under most REXXes under most operating systems without changing the boilerplate REXX code. |
||
< |
<syntaxhighlight lang="rexx">/*REXX boilerplate determines how to clear screen (under various REXXes)*/ |
||
trace off; parse arg ! /*turn off tracing; get C.L. args*/ |
trace off; parse arg ! /*turn off tracing; get C.L. args*/ |
||
if !all(arg()) then exit /*Doc request? Show, then exit.*/ |
if !all(arg()) then exit /*Doc request? Show, then exit.*/ |
||
Line 1,188: | Line 1,188: | ||
!rex: parse upper version !ver !vernum !verdate .; !brexx='BY'==!vernum; !kexx='KEXX'==!ver; !pcrexx='REXX/PERSONAL'==!ver|'REXX/PC'==!ver; !r4='REXX-R4'==!ver; !regina='REXX-REGINA'==left(!ver,11); !roo='REXX-ROO'==!ver; call !env; return |
!rex: parse upper version !ver !vernum !verdate .; !brexx='BY'==!vernum; !kexx='KEXX'==!ver; !pcrexx='REXX/PERSONAL'==!ver|'REXX/PC'==!ver; !r4='REXX-R4'==!ver; !regina='REXX-REGINA'==left(!ver,11); !roo='REXX-ROO'==!ver; call !env; return |
||
!sys: !cms=!sys=='CMS'; !os2=!sys=='OS2'; !tso=!sys=='TSO'|!sys=='MVS'; !vse=!sys=='VSE'; !dos=pos('DOS',!sys)\==0|pos('WIN',!sys)\==0|!sys=='CMD'; !crx=left(!sys,6)=='DOSCRX'; call !rex; return |
!sys: !cms=!sys=='CMS'; !os2=!sys=='OS2'; !tso=!sys=='TSO'|!sys=='MVS'; !vse=!sys=='VSE'; !dos=pos('DOS',!sys)\==0|pos('WIN',!sys)\==0|!sys=='CMD'; !crx=left(!sys,6)=='DOSCRX'; call !rex; return |
||
!var: call !fid; if !kexx then return space(dosenv(arg(1))); return space(value(arg(1),,!env))</ |
!var: call !fid; if !kexx then return space(dosenv(arg(1))); return space(value(arg(1),,!env))</syntaxhighlight> |
||
===Regina=== |
===Regina=== |
||
Line 1,195: | Line 1,195: | ||
=={{header|Ring}}== |
=={{header|Ring}}== |
||
<lang |
<syntaxhighlight lang="ring">system('clear')</syntaxhighlight> |
||
=={{header|Ruby}}== |
=={{header|Ruby}}== |
||
<lang |
<syntaxhighlight lang="ruby">system 'clear'</syntaxhighlight> |
||
Or, without reliance on the command line: |
Or, without reliance on the command line: |
||
(equivalent to <code>`clear`</code>) |
(equivalent to <code>`clear`</code>) |
||
< |
<syntaxhighlight lang="ruby">puts "\e[H\e[2J"</syntaxhighlight> |
||
=={{header|Rust}}== |
=={{header|Rust}}== |
||
< |
<syntaxhighlight lang="rust">print!("\x1B[2J");</syntaxhighlight> |
||
Or using casting: |
Or using casting: |
||
< |
<syntaxhighlight lang="rust">print!("{}[2J", 27 as char);</syntaxhighlight> |
||
=={{header|Scala}}== |
=={{header|Scala}}== |
||
{{libheader|Scala}} |
{{libheader|Scala}} |
||
< |
<syntaxhighlight lang="scala">object Cls extends App {print("\033[2J")}</syntaxhighlight> |
||
=={{header|Seed7}}== |
=={{header|Seed7}}== |
||
Line 1,224: | Line 1,224: | ||
since not all terminals accept them. |
since not all terminals accept them. |
||
< |
<syntaxhighlight lang="seed7">$ include "seed7_05.s7i"; |
||
include "console.s7i"; |
include "console.s7i"; |
||
Line 1,237: | Line 1,237: | ||
# the program waits until Return/Enter is pressed. |
# the program waits until Return/Enter is pressed. |
||
readln; |
readln; |
||
end func;</ |
end func;</syntaxhighlight> |
||
=={{header|Sidef}}== |
=={{header|Sidef}}== |
||
Using a cached-function: |
Using a cached-function: |
||
< |
<syntaxhighlight lang="ruby">func clear { print(static x = `clear`) }; |
||
clear();</ |
clear();</syntaxhighlight> |
||
Directly invoking the `clear` command: |
Directly invoking the `clear` command: |
||
<lang |
<syntaxhighlight lang="ruby">Sys.run('clear');</syntaxhighlight> |
||
Alternatively, without reliance on the command line: |
Alternatively, without reliance on the command line: |
||
< |
<syntaxhighlight lang="ruby">print "\e[3J\e[H\e[2J";</syntaxhighlight> |
||
=={{header|Smalltalk}}== |
=={{header|Smalltalk}}== |
||
<lang |
<syntaxhighlight lang="smalltalk">Transcript clear.</syntaxhighlight> |
||
=={{header|SmileBASIC}}== |
=={{header|SmileBASIC}}== |
||
Line 1,257: | Line 1,257: | ||
===Text screen only=== |
===Text screen only=== |
||
To clear just the text screen: |
To clear just the text screen: |
||
<lang |
<syntaxhighlight lang="smilebasic">CLS</syntaxhighlight> |
||
===All screens=== |
===All screens=== |
||
Clearing all of the screens, and resetting display options can be done with: |
Clearing all of the screens, and resetting display options can be done with: |
||
<lang |
<syntaxhighlight lang="smilebasic">ACLS</syntaxhighlight> |
||
=={{header|SPL}}== |
=={{header|SPL}}== |
||
<lang |
<syntaxhighlight lang="spl">#.clear()</syntaxhighlight> |
||
=={{header|Standard ML}}== |
=={{header|Standard ML}}== |
||
{{works with|Unix}} |
{{works with|Unix}} |
||
< |
<syntaxhighlight lang="sml">fun clearScreen () = |
||
let |
let |
||
val strm = TextIO.openOut (Posix.ProcEnv.ctermid ()) |
val strm = TextIO.openOut (Posix.ProcEnv.ctermid ()) |
||
Line 1,273: | Line 1,273: | ||
TextIO.output (strm, "\^[[H\^[[2J"); |
TextIO.output (strm, "\^[[H\^[[2J"); |
||
TextIO.closeOut strm |
TextIO.closeOut strm |
||
end</ |
end</syntaxhighlight> |
||
=={{header|Stata}}== |
=={{header|Stata}}== |
||
Line 1,281: | Line 1,281: | ||
=={{header|Tcl}}== |
=={{header|Tcl}}== |
||
This only works on systems with ANSI terminal handling, i.e., Unix platforms. |
This only works on systems with ANSI terminal handling, i.e., Unix platforms. |
||
< |
<syntaxhighlight lang="tcl">puts -nonewline "\033\[2J" |
||
flush stdout</ |
flush stdout</syntaxhighlight> |
||
=={{header|UNIX Shell}}== |
=={{header|UNIX Shell}}== |
||
Line 1,290: | Line 1,290: | ||
{{works with|Bourne Shell}} |
{{works with|Bourne Shell}} |
||
< |
<syntaxhighlight lang="bash">clear |
||
# Alternative method using tput |
# Alternative method using tput |
||
tput clear</ |
tput clear</syntaxhighlight> |
||
=={{header|Visual Basic .NET}}== |
=={{header|Visual Basic .NET}}== |
||
<lang |
<syntaxhighlight lang="vbnet">System.Console.Clear()</syntaxhighlight> |
||
Works on all .NET Core platforms. Throws an exception if output has been redirected to a file. |
Works on all .NET Core platforms. Throws an exception if output has been redirected to a file. |
||
=={{header|Wren}}== |
=={{header|Wren}}== |
||
< |
<syntaxhighlight lang="ecmascript">System.print("\e[2J")</syntaxhighlight> |
||
=={{header|XPL0}}== |
=={{header|XPL0}}== |
||
< |
<syntaxhighlight lang="xpl0">code Clear=40; |
||
Clear;</ |
Clear;</syntaxhighlight> |
||
=={{header|Yabasic}}== |
=={{header|Yabasic}}== |
||
<lang |
<syntaxhighlight lang="yabasic">clear screen</syntaxhighlight> |
||
=={{header|zkl}}== |
=={{header|zkl}}== |
||
< |
<syntaxhighlight lang="zkl">System.cmd(System.isWindows and "cls" or "clear"); |
||
// or, for ANSI terminals: print("\e[2J")</ |
// or, for ANSI terminals: print("\e[2J")</syntaxhighlight> |
||
{{omit from|ACL2}} |
{{omit from|ACL2}} |