;;; $DOOMDIR/+lang.el -*- lexical-binding: t; -*- (after! eglot (cl-defmethod eglot-register-capability (server (method (eql workspace/didChangeWatchedFiles)) id &key watchers) nil)) (setq eglot-sync-connect nil eglot-connect-timeout 60) (defun my/hs-eval () (interactive) (let* ((src (buffer-file-name)) (out (file-name-sans-extension src))) (when (zerop (call-process-shell-command (format "runghc %s" src) nil "*runghc-output*")) (let ((buf (make-comint "hs-run" out))) (display-buffer buf))))) (add-hook 'haskell-mode-hook (lambda () (local-set-key (kbd "") #'my/hs-eval)))