emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/geiser-racket a608b02 150/191: Racket: new commands to sho


From: Philip Kaludercic
Subject: [nongnu] elpa/geiser-racket a608b02 150/191: Racket: new commands to show and hide test submodules
Date: Sun, 1 Aug 2021 18:32:18 -0400 (EDT)

branch: elpa/geiser-racket
commit a608b028ad475449f97d728422238c05b9bbc1a6
Author: Jose Antonio Ortega Ruiz <jao@gnu.org>
Commit: Jose Antonio Ortega Ruiz <jao@gnu.org>

    Racket: new commands to show and hide test submodules
    
    The new commands, being racket-specific, are called
    geiser-racket-{show,hide,toggle}-tests, and have no default binding in
    geiser-mode (since they don't have any meaning in Guile).
    
    The implementation is based on more generic functions in geiser-edit
    that allow hiding of any top-level form, given its name, so we will
    probably find new forms to hide in the future.
    
    Hiding is limited to top-level forms, which i think is fine for the only
    use case we have in mind right now.
---
 elisp/geiser-racket.el | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/elisp/geiser-racket.el b/elisp/geiser-racket.el
index 4fbc017..9e00c4d 100644
--- a/elisp/geiser-racket.el
+++ b/elisp/geiser-racket.el
@@ -370,6 +370,27 @@ using start-geiser, a procedure in the geiser/server 
module."
     (setq geiser-image-cache-dir
           (geiser-eval--send/result '(:eval (image-cache) geiser/user)))))
 
+
+;;; Additional commands
+
+(defconst geiser-racket--test-module "module+ test")
+
+(defun geiser-racket-toggle-tests ()
+  "Toggle visibility of test module fragments of the form (module+ test).
+
+When hidden, the test module forms are shown as an ellipsis."
+  (interactive)
+  (geiser-edit--toggle-visibility geiser-racket--test-module))
+
+(defun geiser-racket-show-tests ()
+  "Unconditionally shows all test modules."
+  (interactive)
+  (geiser-edit--show geiser-racket--test-module))
+
+(defun geiser-racket-hide-tests ()
+  "Unconditionally hides all visible test modules."
+  (interactive)
+  (geiser-edit--hide geiser-racket--test-module))
 
 
 ;;; Implementation definition:



reply via email to

[Prev in Thread] Current Thread [Next in Thread]