Lazily load bindings properly

This commit is contained in:
Patrick Elliott 2018-07-18 08:50:55 +02:00
parent a0f800421e
commit 1f9fcd5c10

View file

@ -10,31 +10,38 @@
(def-package! hindent
:hook (haskell-mode . hindent-mode))
(after! haskell-mode
(map! :map haskell-mode-map
:localleader
:n "p" #'hindent-reformat-buffer
:v "p" #'hindent-reformat-region))
(after! intero-mode
(map! :map intero-mode-map
:localleader
:n "t" #'intero-type-at
:n "i" #'intero-info
:n "l" #'intero-repl-load
:n "e" #'intero-repl-eval-region
:v "e" #'intero-repl-eval-region
:n "a" #'intero-apply-suggestions))
(after! dante-mode
(map! :map dante-mode-map
:localleader
:n "n" "b" #'haskell-process-cabal-build
:n "c" #'haskell-cabal-visit-file
:n "t" #'dante-type-at
:n "i" #'dante-info
:n "l" #'haskell-process-load-or-reload
:n "e" #'dante-eval-block
:n "a" #'attrap-attrap))
(after! haskell-mode
(add-hook 'haskell-mode-hook #'interactive-haskell-mode)
(set-lookup-handlers! 'haskell-mode :definition #'haskell-mode-jump-to-def-or-tag)
(set-file-template! 'haskell-mode :trigger #'haskell-auto-insert-module-template :project t)
(set-repl-handler! '(haskell-mode haskell-cabal-mode literate-haskell-mode) #'+haskell-repl-buffer)
(map! :map haskell-mode-map
:localleader
:n "p" #'hindent-reformat-buffer
:v "p" #'hindent-reformat-region
(:when (featurep! +intero)
:desc "type" :n "t" #'intero-type-at
:desc "info" :n "i" #'intero-info
:desc "load" :n "l" #'intero-repl-load
:desc "eval line" :n "e" #'intero-repl-eval-region
:desc "eval region" :v "e" #'intero-repl-eval-region
:desc "apply suggestions" :n "a" #'intero-apply-suggestions)
(:when (featurep! +dante)
:n "n" "b" #'haskell-process-cabal-build
:desc "goto cabal file" :n "c" #'haskell-cabal-visit-file
:desc "type" :n "t" #'dante-type-at
:desc "info" :n "i" #'dante-info
:desc "load" :n "l" #'haskell-process-load-or-reload
:desc "eval command block >>>" :n "e" #'dante-eval-block
:desc "repair at point" :n "a" #'attrap-attrap))
(add-to-list 'completion-ignored-extensions ".hi"))