Pieces you need: * emacs * ghcid ghcid needs to know the height of the terminal, we'll set it explicitly height = (window-height) - (scroll-margin) - 1 set this height as your term-buffer-maximum-size (setq term-buffer-maximum-size XXX) Start an ansi-term session using bash SPC-' run ghcid with this height, in your project root ghcid -c "cabal repl" -h HEIGHT turn on compilation-minor-mode in the buffer