On Jul 28, 8:08 am, Ulrich Eckhardt <eckha...@satorlaser.com> wrote: > Daniel Fetchinson wrote: > > After getting the technicalities out of the way, maybe I should have > > asked: > > > Is it only me or others would find a platform independent python API > > to clear the terminal useful? > > There are two kinds of programs: > 1. Those that process input to output. If one of those suddenly started by > clearing my screen, I'd just dump it. Also, if output is redirected to a > file or piped into another program, that is basically useless or even > hurting, since you then end up with control sequences in the file. > > 2. Those that provide a text-based interactive UI. Those typically not only > clear the screen, but also control its whole layout and content, so there > you don't only need ways to clear the screen but also to position the > cursor or draw boxes etc. In that case you need a full "curses" library. > > Summary: No, I don't see the need for such an API. > > Cheers! > > Uli > > -- > Sator Laser GmbH > Geschäftsführer: Thorsten Föcking, Amtsgericht Hamburg HR B62 932
I don't know much, but just in case the following is useful to anyone: There is a Windows program called 'ansicon', which when installed (run with '-i'), will modify all future Windows cmd shells to correctly intercept and interpret ANSI escape codes for colors, cursor movement, and: \e[#J ED: Erase Display which I presume is what is under discussion here. I understand there are other historical ANSI drivers which were responsible for achieving a similar thing under Windows, but this is the method I currently use (on XP) and am very happy with. Also, and probably less usefully, personally I do wish Python provided a cross platform mechanism for simple terminal control like clearing and colored text. Since ANSI codes are used everywhere except Windows, it would make sense to base such a system on them. So I started a pure Python implementation of a crude ANSI driver, on PyPI as 'colorama'. It does nothing on non-windows systems, but on Windows it patches sys.stdout with a stream-like object, in order to filter out ANSI codes and convert them into Win32 terminal control calls. It currently only works with colors and brightness, but I would love to extend it to cover other ANSI codes such as 'clear screen'. It is doubtless riddled with errors and misunderstandings, and I would love any feedback helping me do a better job. Best regards, Jonathan -- http://mail.python.org/mailman/listinfo/python-list