[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/geiser-racket 1e62c8f 151/191: Let's make it *any* submodu
From: |
Philip Kaludercic |
Subject: |
[nongnu] elpa/geiser-racket 1e62c8f 151/191: Let's make it *any* submodule |
Date: |
Sun, 1 Aug 2021 18:32:19 -0400 (EDT) |
branch: elpa/geiser-racket
commit 1e62c8fb5b429d7dcbee92ae80388f6279ba93bc
Author: Jose Antonio Ortega Ruiz <jao@gnu.org>
Commit: Jose Antonio Ortega Ruiz <jao@gnu.org>
Let's make it *any* submodule
So the new functions are named geiser-racket-*-submodules, and by
default all submodule forms are hidden.
Now that we have the helpers in geiser-edit, we could have a generic
command in geiser-mode to change the visibility of form at point.
---
elisp/geiser-racket.el | 50 ++++++++++++++++++++++++++++++++------------------
1 file changed, 32 insertions(+), 18 deletions(-)
diff --git a/elisp/geiser-racket.el b/elisp/geiser-racket.el
index 9e00c4d..435fb39 100644
--- a/elisp/geiser-racket.el
+++ b/elisp/geiser-racket.el
@@ -373,24 +373,38 @@ using start-geiser, a procedure in the geiser/server
module."
;;; 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))
+(defvar geiser-racket--submodule-history ())
+
+(defun geiser-racket--submodule-form (name)
+ (format "module[+*]? %s"
+ (cond ((eq 1 name) "")
+ ((numberp name)
+ (read-string "Submodule name: " nil
+ 'geiser-racket--submodule-history))
+ ((stringp name) name)
+ t "")))
+
+(defun geiser-racket-toggle-submodules (&optional name)
+ "Toggle visibility of submodule forms.
+
+Use a prefix to be asked for a submodule name."
+ (interactive "p")
+ (geiser-edit--toggle-visibility (geiser-racket--submodule-form name)))
+
+(defun geiser-racket-show-submodules (&optional name)
+ "Unconditionally shows all submodule forms.
+
+Use a prefix to be asked for a submodule name."
+ (interactive "p")
+ (cond ((eq 1 name) (geiser-edit--show-all))
+ (t (geiser-edit--show (geiser-racket--submodule-form name)))))
+
+(defun geiser-racket-hide-submodules (&optional name)
+ "Unconditionally hides all visible submodules.
+
+Use a prefix to be asked for a submodule name."
+ (interactive "p")
+ (geiser-edit--hide (geiser-racket--submodule-form name)))
;;; Implementation definition:
- [nongnu] elpa/geiser-racket a22f8e2 117/191: Indentation rule for match/values (Diogo F.S. Ramos), (continued)
- [nongnu] elpa/geiser-racket a22f8e2 117/191: Indentation rule for match/values (Diogo F.S. Ramos), Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket 3e306cf 112/191: Racket: indentation for `local'., Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket b86cf1f 116/191: Configurable keyword case sensitivity, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket e4707d2 105/191: racket: autodoc for PLAI's define-type, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket 90c38d6 121/191: A better solution to the funky filename problem, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket cc2b8a3 126/191: Racket: fixing help when REPL is in a module, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket c897d9e 130/191: Racket: fixing error backtrace cleansing, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket 3d41f16 133/191: Racket: correct font-lock for define/match, again, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket e855c05 135/191: racket: , enter submodules, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket 023cb2b 137/191: racket: indentation for module*, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket 1e62c8f 151/191: Let's make it *any* submodule,
Philip Kaludercic <=
- [nongnu] elpa/geiser-racket a608b02 150/191: Racket: new commands to show and hide test submodules, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket 14330b4 148/191: Racket: not loading errortrace by default, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket 44740d1 152/191: Syntax error fixed, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket 5e0fced 161/191: Possible fix for scanning problem, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket bde687f 153/191: Scheme version checks, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket f9b1681 159/191: Font lock `define-syntax-rule' like `define' procedures, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket 87662a1 164/191: Not cleaning the image cache before displaying images, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket e989bba 165/191: Add 'geiser-syntax--simple-keywords', Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket 279714a 157/191: Racket: fix for recompilation of typed/racket modules, Philip Kaludercic, 2021/08/01
- [nongnu] elpa/geiser-racket 05f692b 184/191: geiser-racket.el to top-level to easy elpa definition, Philip Kaludercic, 2021/08/01