mirror of
https://github.com/doomemacs/doomemacs
synced 2025-08-29 14:33:34 -05:00
feat(haskell): add treesit support
This commit is contained in:
@@ -28,9 +28,6 @@
|
||||
#'haskell-collapse-mode ; support folding haskell code blocks
|
||||
#'interactive-haskell-mode)
|
||||
|
||||
(when (modulep! +tree-sitter)
|
||||
(add-hook 'haskell-mode-local-vars-hook #'tree-sitter! 'append))
|
||||
|
||||
(add-to-list 'completion-ignored-extensions ".hi")
|
||||
|
||||
(map! :map haskell-mode-map
|
||||
@@ -47,6 +44,16 @@
|
||||
"H" #'haskell-hide-toggle-all))
|
||||
|
||||
|
||||
;; TODO: Mirror other haskell-mode config to ts-mode
|
||||
(use-package! haskell-ts-mode
|
||||
:when (modulep! +tree-sitter)
|
||||
:when (fboundp 'haskell-ts-mode)
|
||||
:defer t
|
||||
:init
|
||||
(set-tree-sitter! 'haskell-mode 'haskell-ts-mode
|
||||
'((haskell :url "https://github.com/tree-sitter/tree-sitter-haskell"))))
|
||||
|
||||
|
||||
(use-package! lsp-haskell
|
||||
:when (modulep! +lsp)
|
||||
:defer t
|
||||
|
@@ -5,6 +5,10 @@
|
||||
(modulep! :tools lsp))
|
||||
"This module requires (:tools lsp)")
|
||||
|
||||
(assert! (or (not (modulep! +tree-sitter))
|
||||
(modulep! :tools tree-sitter))
|
||||
"This module requires (:tools tree-sitter)")
|
||||
|
||||
(unless (executable-find "cabal")
|
||||
(warn! "Couldn't find cabal. haskell-mode may have issues."))
|
||||
|
||||
|
@@ -2,6 +2,8 @@
|
||||
;;; lang/haskell/packages.el
|
||||
|
||||
(package! haskell-mode :pin "e9c356739310332afe59b10ffa2e6c3e76f124e3")
|
||||
(when (modulep! +tree-sitter)
|
||||
(package! haskell-ts-mode :pin "b47211699944997bfb03fd88b1157dd71727bad7"))
|
||||
|
||||
(when (and (modulep! +lsp)
|
||||
(modulep! :tools lsp -eglot))
|
||||
|
Reference in New Issue
Block a user