feat(emacs): Haskell additions

- Print Hoogle port on server start.
- Include _ and ' in words.
This commit is contained in:
Madeleine Sydney
2025-04-10 06:59:52 -06:00
parent 3e0ed596da
commit a0ec25e5f9

View File

@@ -24,6 +24,11 @@
(evil-append-line nil) (evil-append-line nil)
(haskell-indentation-newline-and-indent)) (haskell-indentation-newline-and-indent))
(defun syd-haskell-hoogle-start-server ()
(interactive)
(haskell-hoogle-start-server)
(message "Hoogle started on localhost:%d" haskell-hoogle-port-number))
(use-package haskell-mode (use-package haskell-mode
:mode (("\\.l?hs'" . haskell-literate-mode) :mode (("\\.l?hs'" . haskell-literate-mode)
("\\.hs'" . haskell-mode)) ("\\.hs'" . haskell-mode))
@@ -39,7 +44,7 @@
:prefix syd-localleader-key :prefix syd-localleader-key
:non-normal-prefix syd-alt-localleader-key :non-normal-prefix syd-alt-localleader-key
"c" #'haskell-cabal-visit-file "c" #'haskell-cabal-visit-file
"h s" #'haskell-hoogle-start-server "h s" #'syd-haskell-hoogle-start-server
"h q" #'haskell-hoogle-kill-server) "h q" #'haskell-hoogle-kill-server)
(:keymaps 'interactive-haskell-mode-map (:keymaps 'interactive-haskell-mode-map
:states '(normal insert) :states '(normal insert)
@@ -62,7 +67,9 @@
(syd-add-hook 'haskell-mode-local-vars-hook (syd-add-hook 'haskell-mode-local-vars-hook
;; Folding of Haskell sections. ;; Folding of Haskell sections.
#'haskell-collapse-mode #'haskell-collapse-mode
#'interactive-haskell-mode)) #'interactive-haskell-mode)
(dolist (c '(?' ?_))
(modify-syntax-entry c "w" haskell-mode-syntax-table)))
(use-package lsp-haskell (use-package lsp-haskell
:defer t :defer t