X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2Fwin32-dlls.xml;h=be56591abaaa21c48b28caca5a6a324390dff042;hb=1ed54200532d9a9b1b58ac914dae28c1ecb48699;hp=959f7ce1b65f67a1c9690343c1e5c8d45e95682f;hpb=0065d5ab628975892cea1ec7303f968c3338cbe1;p=ghc-hetmet.git
diff --git a/docs/users_guide/win32-dlls.xml b/docs/users_guide/win32-dlls.xml
index 959f7ce..be56591 100644
--- a/docs/users_guide/win32-dlls.xml
+++ b/docs/users_guide/win32-dlls.xml
@@ -4,7 +4,7 @@
-Starting GHC on Win32 platforms
+Starting GHC on Windows platforms
The installer that installs GHC on Win32 also sets up the file-suffix associations
@@ -36,6 +36,45 @@ Notice how the "%1" argument is quoted (or not).
+
+Running GHCi on Windows
+
+ We recommend running GHCi in a standard Windows console:
+ select the GHCi option from the start menu item
+ added by the GHC installer, or use
+ Start->Run->cmd to get a Windows console and
+ invoke ghci from there (as long as it's in your
+ PATH).
+
+ If you run GHCi in a Cygwin or MSYS shell, then the Control-C
+ behaviour is adversely affected. In one of these environments you
+ should use the ghcii.sh script to start GHCi,
+ otherwise when you hit Control-C you'll be returned to the shell
+ prompt but the GHCi process will still be running. However, even
+ using the ghcii.sh script, if you hit Control-C
+ then the GHCi process will be killed immediately, rather than
+ letting you interrupt a running program inside GHCi as it should.
+ This problem is caused by the fact that the Cygwin and MSYS shell
+ environments don't pass Control-C events to non-Cygwin child
+ processes, because in order to do that there needs to be a Windows
+ console.
+
+ There's an exception: you can use a Cygwin shell if the
+ CYGWIN environment variable does
+ not contain tty. In this
+ mode, the Cygwin shell behaves like a Windows console shell and
+ console events are propagated to child processes. Note that the
+ CYGWIN environment variable must be set
+ before starting the Cygwin shell; changing it
+ afterwards has no effect on the shell.
+
+ This problem doesn't just affect GHCi, it affects any
+ GHC-compiled program that wants to catch console events. See the
+ GHC.ConsoleHandler
+ module.
+
+
Interacting with the terminal