cvs commit: hugs98/libraries/Hugs IOExts.hs hugs98/src iomonad.c machdep.c machdep.h hugs98/tests/libs prodcon.output

ross 2004/01/14 06:19:12 PST Modified files: libraries/Hugs IOExts.hs src iomonad.c machdep.c machdep.h tests/libs prodcon.output Log: Change the handling of stdin (except on Win32). Hugs used to treat standard input quite strangely: turning off echo and buffering (if a terminal), with getChar echoing input chars on stdout (which makes no sense if either stdin or stdout is redirected) though hGetChar stdin and interact didn't. With this change, stdin is left alone, and there are new primitives: hIsTerminalDevice, hGetEcho and hSetEcho. One can use hSetBuffering and hSetEcho to change the modes of any handle connected to a terminal. The Hugs-only non-echoing getCh is gone. I've left Win32 alone (look for RAW_CONSOLE) because I don't know what's going on there, but I think the new behaviour would be more convenient. Revision Changes Path 1.17 +9 -4 hugs98/libraries/Hugs/IOExts.hs 1.70 +78 -20 hugs98/src/iomonad.c 1.113 +111 -37 hugs98/src/machdep.c 1.9 +11 -1 hugs98/src/machdep.h 1.6 +1 -1 hugs98/tests/libs/prodcon.output
participants (1)
-
ross@glass.cse.ogi.edu