Added hungry delete and Improved haskell experience

This commit is contained in:
Zelong Kuang
2025-12-27 16:41:42 +08:00
parent fa0aace21f
commit 87da967854
3 changed files with 20 additions and 7 deletions

View File

@@ -9,6 +9,14 @@
(setq electric-pair-inhibit-predicate 'electric-pair-conservative-inhibit) (setq electric-pair-inhibit-predicate 'electric-pair-conservative-inhibit)
(electric-pair-mode t) (electric-pair-mode t)
;; Hungry deletion
(use-package hungry-delete
:diminish
:hook (elpaca-after-init . global-hungry-delete-mode)
:init (setq hungry-delete-chars-to-skip " \t\f\v"
hungry-delete-except-modes
'(help-mode minibuffer-mode minibuffer-inactive-mode calc-mode)))
;; Yasnippet settings ;; Yasnippet settings
(use-package yasnippet (use-package yasnippet
:ensure t :ensure t

View File

@@ -2,15 +2,18 @@
(use-package haskell-mode (use-package haskell-mode
:hook (haskell-mode . (haskell-collapse-mode :hook (haskell-mode . (lambda ()
interactive-haskell-mode (haskell-collapse-mode)
haskell-doc-mode (interactive-haskell-mode)
hindent-mode)) (haskell-doc-mode)
(haskell-indent-mode)))
:mode (("\\.hs\\'" . haskell-mode)) :mode (("\\.hs\\'" . haskell-mode))
:bind ("C-c C-z" . run-haskell)
:config :config
(setq haskell-process-suggest-remove-import-lines t (setq haskell-process-suggest-remove-import-lines t
haskell-process-auto-import-loaded-modules t) haskell-process-auto-import-loaded-modules t)
(add-to-list 'completion-ignored-extensions ".hi")) (add-to-list 'completion-ignored-extensions ".hi")
(add-hook 'haskell-mode-hook #'eglot-ensure))
(provide 'init-haskell) (provide 'init-haskell)

View File

@@ -112,13 +112,15 @@
"\\*vc-.*\\**" "\\*vc-.*\\**"
"\\*diff-hl\\**" "\\*diff-hl\\**"
"^\\*macro expansion\\**" "^\\*macro expansion\\**"
"\\*Agenda Commands\\*" "\\*Org Select\\*" "\\*Capture\\*" "^CAPTURE-.*\\.org*" "\\*Agenda Commands\\*" "\\*Org Select\\*" "\\*Capture\\*" "^CAPTURE-.*\\.org*"
"\\*Gofmt Errors\\*$" "\\*Go Test\\*$" godoc-mode "\\*Gofmt Errors\\*$" "\\*Go Test\\*$" godoc-mode
"\\*docker-.+\\*" "\\*docker-.+\\*"
"\\*prolog\\*" inferior-python-mode inf-ruby-mode swift-repl-mode "\\*prolog\\*" inferior-python-mode inf-ruby-mode swift-repl-mode
"\\*rustfmt\\*$" rustic-compilation-mode rustic-cargo-clippy-mode "\\*rustfmt\\*$" rustic-compilation-mode rustic-cargo-clippy-mode
rustic-cargo-outdated-mode rustic-cargo-run-mode rustic-cargo-test-mode)) rustic-cargo-outdated-mode rustic-cargo-run-mode rustic-cargo-test-mode
"\\*haskell\\*"))
:config :config
(with-no-warnings (with-no-warnings
(defun my-popper-fit-window-height (win) (defun my-popper-fit-window-height (win)