X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Fusers_guide%2Fghci.xml;h=cd2a836de3b031d24af75b6a3c3e97f0f6ee78b8;hb=1bfdc3b39bbf5ab24ca5b24fd5fc711022b32ec7;hp=9ec07c355e0ab68f1bae0f660e33a9f5ab23ee73;hpb=1b001bb3b84b9279b568b50e5330b35be33b5ac1;p=ghc-hetmet.git diff --git a/docs/users_guide/ghci.xml b/docs/users_guide/ghci.xml index 9ec07c3..cd2a836 100644 --- a/docs/users_guide/ghci.xml +++ b/docs/users_guide/ghci.xml @@ -49,6 +49,8 @@ Prelude> :browse [*]<module> display the names defined by <module> :cd <dir> change directory to <dir> :def <cmd> <expr> define a command :<cmd> + :edit <file> edit file + :edit edit last module :help, :? display this list of commands :info [<name> ...] display information about the given names :load <filename> ... load module(s) and their dependents @@ -60,12 +62,13 @@ Prelude> :set args <arg> ... set the arguments returned by System.getArgs :set prog <progname> set the value returned by System.getProgName :set prompt <prompt> set the prompt used in GHCi + :set editor <cmd> set the command used for :edit :show modules show the currently loaded modules :show bindings show the current bindings made at the prompt :ctags [<file>] create tags file for Vi (default: "tags") - :etags [<file>] create tags file for Emacs (defauilt: "TAGS") + :etags [<file>] create tags file for Emacs (default: "TAGS") :type <expr> show the type of <expr> :kind <type> show the kind of <type> :undef <cmd> undefine user-defined command :<cmd> @@ -402,7 +405,7 @@ hello - + Using <literal>do-</literal>notation at the prompt do-notationin GHCi statementsin GHCi @@ -444,7 +447,13 @@ Prelude> Show - + The automatic printing of binding results can be supressed with + (this does not + supress printing the result of non-binding statements). + . + You might want to do this to prevent the result of binding + statements from being fully evaluated by the act of printing + them, for example. Of course, you can also bind normal non-IO expressions using the let-statement: @@ -1007,6 +1016,22 @@ Prelude> :. cmds.ghci + :edit file + :edit + + + Opens an editor to edit the file + file, or the most recently loaded + module if file is omitted. The + editor to invoke is taken from the EDITOR + environment variable, or a default editor on your system if + EDITOR is not set. You can change the + editor using :set editor. + + + + + :help :help @@ -1172,6 +1197,16 @@ Prelude> :main foo bar + :set editor cmd + + + Sets the command used by :edit to + cmd. + + + + + :set prog prog :set prog @@ -1521,10 +1556,9 @@ Prelude> :set -fno-glasgow-exts Concurrent threads don't carry on running when GHCi is waiting for input. - No, they don't. This is because the Haskell binding - to the GNU readline library doesn't support reading from the - terminal in a non-blocking way, which is required to work - properly with GHC's concurrency model. + This should work, as long as your GHCi was built with + the switch, which is the default. + Consult whoever supplied your GHCi installation.