From: Eshel Yaron Date: Tue, 4 Oct 2022 11:21:42 +0000 (+0300) Subject: ADDED: new command for signaling a top-level from the Top-level Menu X-Git-Tag: v0.5.0~3 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=51139ad1784ec789d820e720023a2eb1ea991235;p=dict.git ADDED: new command for signaling a top-level from the Top-level Menu * sweeprolog.el: - sweeprolog-top-level-menu-signal: new command - sweeprolog-top-level-menu-mode-map: bind it to s --- diff --git a/sweeprolog.el b/sweeprolog.el index ef34ae8..8d4d373 100644 --- a/sweeprolog.el +++ b/sweeprolog.el @@ -2572,6 +2572,14 @@ variable at point, if any." sweeprolog-top-level-menu-mode) (sweeprolog-top-level name)) +(defun sweeprolog-top-level-menu-signal (goal) + "Signal the thread of to Top-level Menu entry at point to run GOAL." + (interactive (list (read-string "Signal goal: ?- ")) + sweeprolog-top-level-menu-mode) + (if-let ((tid (tabulated-list-get-id))) + (sweeprolog-signal-thread tid goal) + (user-error "No top-level menu entry here"))) + (defun sweeprolog-top-level-menu-kill () "Kill the buffer of to the `sweep' Top-level Menu entry at point." (interactive "" sweeprolog-top-level-menu-mode) @@ -2595,7 +2603,8 @@ variable at point, if any." :doc "Local keymap for `sweeprolog-top-level-menu-mode' buffers." "RET" #'sweeprolog-top-level-menu-go-to "k" #'sweeprolog-top-level-menu-kill - "t" #'sweeprolog-top-level-menu-new) + "t" #'sweeprolog-top-level-menu-new + "s" #'sweeprolog-top-level-menu-signal) (define-derived-mode sweeprolog-top-level-menu-mode tabulated-list-mode "sweep Top-level Menu"