branch: elpa/idris-mode commit 8a3229cfe96b18bcf31c1850dc4aa4864ace9fd0 Merge: ef6768244b c84ed5a733 Author: Jan de Muijnck-Hughes <j...@users.noreply.github.com> Commit: GitHub <nore...@github.com>
Merge pull request #589 from keram/minor-impro Apply minor improvements to codebase --- idris-commands.el | 29 ++++++++++++++++++----------- idris-settings.el | 10 +++++----- inferior-idris.el | 2 +- 3 files changed, 24 insertions(+), 17 deletions(-) diff --git a/idris-commands.el b/idris-commands.el index c1c8f3bfcd..c068305808 100644 --- a/idris-commands.el +++ b/idris-commands.el @@ -122,15 +122,16 @@ idris-set-current-pretty-print-width) :group 'idris) -(defun idris-possibly-make-dirty (beginning end _length) +(defun idris-possibly-make-dirty (_beginning _end _length) + (idris-make-dirty)) ;; If there is a load-to-here marker and a currently loaded region, only ;; make the buffer dirty when the change overlaps the loaded region. - (if (and idris-load-to-here idris-loaded-region-overlay) - (when (member idris-loaded-region-overlay - (overlays-in beginning end)) - (idris-make-dirty)) - ;; Otherwise just make it dirty. - (idris-make-dirty))) + ;; (if (and idris-load-to-here idris-loaded-region-overlay) + ;; (when (member idris-loaded-region-overlay + ;; (overlays-in beginning end)) + ;; (idris-make-dirty)) + ;; ;; Otherwise just make it dirty. + ;; (idris-make-dirty))) (defun idris-update-loaded-region (fc) @@ -289,10 +290,10 @@ Idris process. This sets the load position to point, if there is one." (setq idris-currently-loaded-buffer nil) (idris-switch-working-directory srcdir) (let ((result - (if idris-load-to-here - (idris-eval `(:load-file ,fn - ,(idris-get-line-num idris-load-to-here))) - (idris-eval `(:load-file ,fn))))) + (idris-eval + (if idris-load-to-here + `(:load-file ,fn ,(idris-get-line-num idris-load-to-here)) + `(:load-file ,fn))))) (idris-update-options-cache) (setq idris-currently-loaded-buffer (current-buffer)) (idris-make-clean) @@ -939,6 +940,10 @@ type-correct, so loading will fail." (let ((bufs (list :connection :repl :proof-obligations :proof-shell :proof-script :log :info :notes :holes :tree-viewer))) (dolist (b bufs) (idris-kill-buffer b)))) +(defun idris-remove-event-hooks () + "Remove Idris event hooks set after connection with Idris established." + (dolist (h idris-event-hooks) (remove-hook 'idris-event-hooks h))) + (defun idris-pop-to-repl () "Go to the REPL, if one is open." (interactive) @@ -987,6 +992,8 @@ https://github.com/clojure-emacs/cider" (setq idris-loaded-region-overlay nil))) (idris-prover-end) (idris-kill-buffers) + (idris-remove-event-hooks) + (setq idris-process-current-working-directory nil) (setq idris-protocol-version 0 idris-protocol-version-minor 0))) diff --git a/idris-settings.el b/idris-settings.el index 4eabb7c5ac..6d56629e4b 100644 --- a/idris-settings.el +++ b/idris-settings.el @@ -66,8 +66,8 @@ (defcustom idris-semantic-source-highlighting t "If non-nil, use the Idris compiler's semantic source -information to highlight Idris code. If `debug', log failed - highlighting to buffer `*Messages*'." +information to highlight Idris code. +If `debug', log failed highlighting to buffer `*Messages*'." :group 'idris :type '(choice (boolean :tag "Enable") (const :tag "Debug" debug))) @@ -299,10 +299,10 @@ Set to `nil' for no banner." "File to save the persistent REPL history to. By default we assume Idris' default configuration home is: - + $HOME/.idris/idris-history.eld. - -If you have installed/configured Idris differently, or are + +If you have installed/configured Idris differently, or are using Idris2, then you may wish to customise this variable." :type 'string diff --git a/inferior-idris.el b/inferior-idris.el index 8c2ae7b89c..6eaf1823db 100644 --- a/inferior-idris.el +++ b/inferior-idris.el @@ -270,7 +270,7 @@ directory variables.") (defvar idris-continuation-counter 1 "Continuation serial number counter.") -(defvar idris-event-hooks) +(defvar idris-event-hooks '()) (defun idris-dispatch-event (event process) (or (run-hook-with-args-until-success 'idris-event-hooks event)