     :init
     (eval-after-load 'company '(add-to-list 'company-backends 'company-tern))))
 
+(use-package haskell-mode
+  :defer t
+  :config
+  (turn-on-haskell-indent))
+
+(use-package haskell-doc
+ :ensure haskell-mode
+ :hook (haskell-mode . haskell-doc-mode))
+
+(use-package hindent
+ :hook (haskell-mode . hindent-mode)
+ :init
+ (setq hindent-reformat-buffer-on-save t))
+
+(defvar-local my/intero-disabled nil)
+
 (use-package intero
-  :defer t)
-
-(use-package hindent
-  :defer t
-  :init
-  (setq hindent-reformat-buffer-on-save t))
-
-(use-package haskell-mode
-  :defer t
-  :config
-  (add-hook 'haskell-mode-hook (lambda ()
-                                 (turn-on-haskell-doc-mode)
-                                 (turn-on-haskell-indent)
-                                 (intero-mode)
-                                 (hindent-mode))))
+ :hook (haskell-mode . my/intero-mode)
+ :init
+ (defun my/intero-mode ()
+   (if (not (bound-and-true-p my/intero-disabled))
+       (intero-mode))))
 
 (use-package elm-mode
   :defer t

  :bind (("C-c o" . hydra-org/body))
  :commands hydra-org/body
  :init
  (setq org-agenda-files (list "~/code/agenda")
        org-log-done 'time)
  :config
  (defhydra hydra-org ()

 '(git-gutter:separator-sign "|")
 '(package-selected-packages
   (quote
    (tidal go-mode protobuf-mode god-mode god org-mode docker-compose-mode arduino-mode company-arduino dockerfile-mode treemacs-projectile treemacs hindent intero-mode intero flycheck-elm toml-mode markdown-mode+ yaml-mode swiper ivy fsharp-mode omnisharp csharp-mode elm-mode typescript-mode tern flycheck company mu4e-alert rbenv nvm xclip web-mode use-package tide spaceline smex rainbow-delimiters purescript-mode psc-ide projectile prodigy popwin nix-mode multiple-cursors modalka minibuffer-line magit load-dir json-mode js2-mode ivy-hydra hc-zenburn-theme haskell-mode git-gutter fill-column-indicator exwm elfeed counsel company-tern company-quickhelp ace-window))))
(custom-set-faces
 ;; custom-set-faces was added by Custom.
 ;; If you edit it by hand, you could mess it up, so be careful.
