wip
This commit is contained in:
@@ -61,16 +61,16 @@ to a pop up buffer."
|
||||
:force-popup current-prefix-arg))
|
||||
|
||||
(dolist (m '(emacs-lisp-mode lisp-data-mode))
|
||||
(set-repl-handler! 'emacs-lisp-mode
|
||||
(set-repl-handler! m
|
||||
#'syd/open-emacs-lisp-repl)
|
||||
(set-eval-handler! 'emacs-lisp-mode
|
||||
(set-eval-handler! m
|
||||
#'syd-emacs-lisp-eval))
|
||||
|
||||
(syd-add-hook '(emacs-lisp-mode-hook lisp-data-mode)
|
||||
(syd-add-hook '(emacs-lisp-mode-hook lisp-data-mode-hook)
|
||||
#'syd-lisp-mode)
|
||||
|
||||
;; DEPRECATED: Remove once syd-strategies is working.
|
||||
(syd-add-hook '(emacs-lisp-mode-hook help-mode-hook lisp-data-mode)
|
||||
(syd-add-hook '(emacs-lisp-mode-hook help-mode-hook lisp-data-mode-hook)
|
||||
(defun syd-emacs-set-handlers-h ()
|
||||
(setq-local syd-lookup-documentation-handlers
|
||||
(list #'syd-emacs-lisp-lookup-documentation))))
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
(use-package lsp-haskell
|
||||
:defer t
|
||||
:init
|
||||
(add-hook 'haskell-mode-local-vars-hook #'lsp 'append)
|
||||
(add-hook 'haskell-literate-mode-local-vars-hook #'lsp 'append))
|
||||
(add-hook 'haskell-mode-hook #'lsp 'append)
|
||||
(add-hook 'haskell-literate-mode-hook #'lsp 'append))
|
||||
|
||||
(provide 'syd-lang-haskell)
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
;;; syd-lang-idris2.el -*- lexical-binding: t; -*-
|
||||
|
||||
(require 'syd-handle-repl)
|
||||
(require 'syd-handle-lookup)
|
||||
|
||||
(defun syd-idris2-open-repl ()
|
||||
(interactive)
|
||||
(idris2-repl-buffer))
|
||||
|
||||
(use-package idris2-mode
|
||||
:mode "\\.idr\\'"
|
||||
:straight (:type git
|
||||
:host github
|
||||
:repo "idris-community/idris2-mode")
|
||||
:config
|
||||
;; Fixes lag when editing idris code with Evil. See
|
||||
;; https://github.com/idris-community/idris2-mode?tab=readme-ov-file#doom-emacs
|
||||
(syd-defadvice syd-idris2--fix-evil-motion-range (fn &rest args)
|
||||
"Like `evil-motion-range', but override field-beginning for performance.
|
||||
See `https://github.com/ProofGeneral/PG/issues/427'."
|
||||
:around #'evil-motion-range
|
||||
(cl-letf (((symbol-function 'field-beginning)
|
||||
(lambda (&rest args) 1)))
|
||||
(apply fn args)))
|
||||
|
||||
(add-hook 'idris2-mode-hook #'lsp)
|
||||
|
||||
(general-define-key
|
||||
:keymaps 'idris2-mode-map
|
||||
:states '(normal visual motion emacs insert)
|
||||
:major-modes t
|
||||
:prefix syd-localleader-key
|
||||
:non-normal-prefix syd-alt-localleader-key
|
||||
"l" #'idris2-load-file)
|
||||
|
||||
(set-repl-handler! 'idris2-mode
|
||||
#'syd-idris2-open-repl)
|
||||
|
||||
(set-popup-rules!
|
||||
`((,(rx bol "*idris2-notes*" eol)
|
||||
:ttl nil)
|
||||
(,(rx bol "*idris2-holes" eol)
|
||||
:ttl nil :quit t :vslot -5 :height 7))))
|
||||
|
||||
(provide 'syd-lang-idris2)
|
||||
Reference in New Issue
Block a user