The above fix didn't work for me. (require 'comint) is already executed when the file is loaded, as that line appears just after the ';; GHCi interface:' comment. However, what _is_ needed is a (defvar) to set the haskell-ghci-mode-map to nil, rather than void. The attached patch does this.
-- -David House, [EMAIL PROTECTED]
diff -c /home/david/sandbox/haskell-mode-2.1/haskell-ghci.el /home/david/hs/emacs/haskell-ghci.el *** /home/david/sandbox/haskell-mode-2.1/haskell-ghci.el 2006-12-28 14:16:39.000000000 +0000 --- /home/david/hs/emacs/haskell-ghci.el 2006-12-28 14:13:08.000000000 +0000 *************** *** 117,125 **** (comint-mode) (setq major-mode 'haskell-ghci-mode) (setq mode-name "Haskell GHCi") - (if haskell-ghci-mode-map - nil - (setq haskell-ghci-mode-map (copy-keymap comint-mode-map))) (use-local-map haskell-ghci-mode-map)) --- 117,122 ---- *************** *** 128,133 **** --- 125,133 ---- (require 'comint) (require 'shell) + (defvar haskell-ghci-mode-map (copy-keymap comint-mode-map) + "The keymap for use in Haskell GHCi buffers.") + (defvar haskell-ghci-process nil "The active GHCi subprocess corresponding to current buffer.") Diff finished. Thu Dec 28 14:16:55 2006