From: Ramakrishnan Muthukrishnan Date: Tue, 24 Jan 2017 05:45:25 +0000 (+0530) Subject: switch away from intero for haskell X-Git-Url: https://git.rkrishnan.org/pf/content/en/seg/bcase/simplejson/decoder.py.html?a=commitdiff_plain;h=e054ca51c642a2504355fc16762ab4f529b5c991;p=.emacs.d.git switch away from intero for haskell --- diff --git a/init.el b/init.el index 6dbc882..7c7fce3 100644 --- a/init.el +++ b/init.el @@ -65,7 +65,7 @@ (erc-autojoin-mode t) (setq erc-autojoin-channels-alist - '((".*\\.freenode.net" "#hackage" "#haskell-beginners" "#tahoe-lafs") + '((".*\\.freenode.net" "#hackage" "#tahoe-lafs") (".*\\.oftc.net" "#debian-uk" "#debian-in") ;; (".*\\.mozilla.org" "#rust-beginners") )) @@ -110,7 +110,33 @@ c-basic-offset 4) ;; haskell -;; (add-hook 'haskell-mode-hook 'intero-mode) +(setenv "PATH" (concat "~/.cabal/bin:" (getenv "PATH"))) +(add-to-list 'exec-path "~/.cabal/bin") +(add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode) + +;; haskell mode +(require 'haskell-process) +(require 'haskell-interactive-mode) +(add-hook 'haskell-mode-hook 'interactive-haskell-mode) + +(custom-set-variables + '(haskell-process-suggest-remove-import-lines t) + '(haskell-process-auto-import-loaded-modules t) + '(haskell-process-log t)) + +(define-key haskell-mode-map (kbd "C-c C-l") 'haskell-process-load-or-reload) +(define-key haskell-mode-map (kbd "C-`") 'haskell-interactive-bring) +(define-key haskell-mode-map (kbd "C-c C-t") 'haskell-process-do-type) +(define-key haskell-mode-map (kbd "C-c C-i") 'haskell-process-do-info) +(define-key haskell-mode-map (kbd "C-c C-c") 'haskell-process-cabal-build) +(define-key haskell-mode-map (kbd "C-c C-k") 'haskell-interactive-mode-clear) +(define-key haskell-mode-map (kbd "C-c c") 'haskell-process-cabal) + +;; ghc-mod +;;(autoload 'ghc-init "ghc" nil t) +;;(autoload 'ghc-debug "ghc" nil t) +;;(setq ghc-debug t) +;;(add-hook 'haskell-mode-hook (lambda () (ghc-init))) ;; hlint (add-to-list 'load-path "~/.emacs.d/hs-lint") @@ -120,6 +146,9 @@ (add-hook 'haskell-mode-hook 'my-haskell-mode-hook) +;; hindent +(add-hook 'haskell-mode-hook #'hindent-mode) + ;; gofmt (add-hook 'before-save-hook #'gofmt-before-save) (add-hook 'go-mode-hook (lambda ()