Use @purcell's cleaner code from https://github.com/haskell/haskell-mode/issues/318#issuecomment-52351893