syl20bnr / spacemacs

A community-driven Emacs distribution - The best editor is neither Emacs nor Vim, it's Emacs *and* Vim!
http://spacemacs.org
GNU General Public License v3.0
23.69k stars 4.89k forks source link

In the haskell layer, disable ghc-mod messes important keybindings #3777

Closed PierreR closed 8 years ago

PierreR commented 8 years ago
How to reproduce

=> it is wrongly bound to haskell-mode-enable-process-minor-mode

As a result, if you fire a repl with ,sb, you will never get the appropriate binding for c-c c-i (or `c-c c-t). It will always respond with "C-h f haskell-mode‘ for instruction".

System Info
(asciidoc auto-completion emacs-lisp erc dash dockerfile emacs-lisp emoji extra-langs git markdown
          (haskell :variables haskell-enable-ghc-mod-support nil)
          org
          (shell :variables shell-default-term-shell "/bin/zsh" shell-default-height 30 shell-default-position 'bottom)
          salt syntax-checking spell-checking puppet python version-control yaml)
d12frosted commented 8 years ago

When I think about it - it makes sense. We force ,sb to run REPL. While C-c C-l and friends are set by ghc-mod or interactive-mode (or whatever else). So probably the best solution will be to enable haskell-interactive-mode when ghc-mod is disabled.

PierreR commented 8 years ago

I actually thought that c-c c-t and c-c c-i would be automatically rebound to haskell-process-do-type and haskell-process-do-info by spacemacs.

This was supposed to be fixed by #3345 but the associated commit only bind SPC-mht and SPC-mhi to c-c c-t/ c-c c-i (maybe under the assumption the interactive-mode would rebound these keys ?)

SPC-mht and SPC-mhishould be mapped (as before) to 'haskell-process-do-info and 'haskell-process-do-type' but only whenever an interactive-mode is at play.