Version 13 of Clear screen

Updated 2007-03-13 15:50:34

I just want to clear the screen sounds like such a simple thing. Why is it difficult? Because there are so many types of screens! Are we talking about a terminal emulator program, like xterm, rxvt, telnet? Are we talking about a physical terminal on a serial line (vt220)? Is it a line printer???? Is it a Tk text widget?

Here are a few ways:

    exec clear >@ stdout        ; # Most unix systems should have a clear command

    puts \x1B\[2J               ; # for Solaris xterm - VERY terminal specific

    eval exec [auto_execok cls] ; # Most windows systems should have a cls

    exec command /c cls         ; # DOS?

    exec >&@stdout $::env(COMSPEC) /c cls    ; # Win95

    $t delete 1.0 end           ;# Tk text widget

Bruce Hartweg suggests [L1 ] for a Windows system:

    eval exec >&@stdout <@stdin [auto_execok cls]

Pretty neat tricks ;) -- Ro


Angel Sosa: In addition the following examples clears the whole screen (on which platforms and for what kinds of machines?)

  puts \x1b\[H\x1b\[2J

This initializes and clears the screen on a unix system with some sort of terminfo/termcap/curses library installation: :

  exec tput clear >@ stdout

[ Category Text Screen | GSoC2007 Tcl/Tk Application ]