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

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

[elpa] externals/hiddenquote 0a49fca229 15/15: Add new handy hook


From: ELPA Syncer
Subject: [elpa] externals/hiddenquote 0a49fca229 15/15: Add new handy hook
Date: Wed, 26 Oct 2022 11:57:52 -0400 (EDT)

branch: externals/hiddenquote
commit 0a49fca2294f01fc455e07019efa21efcc3998c2
Author: Mauro Aranda <maurooaranda@gmail.com>
Commit: Mauro Aranda <maurooaranda@gmail.com>

    Add new handy hook
    
    * hiddenquote.el (hiddenquote-after-last-character-hook): New hook.
    (hiddenquote-word-notify): Run it.
---
 hiddenquote.el | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/hiddenquote.el b/hiddenquote.el
index 9e045a82a1..5bbecc4b65 100644
--- a/hiddenquote.el
+++ b/hiddenquote.el
@@ -938,6 +938,14 @@ Notify the widget between FROM and TO about a change."
         (error "Change in different fields"))
       (widget-apply field :notify field (list 'after-change from to)))))
 
+(defvar hiddenquote-after-last-character-hook nil
+  "Hook that runs after entering the last character in a word.
+
+Note that this doesn't mean the word is the right word.
+
+It can be handy to run `other-window' in this hook, so you can go directly
+to the syllables buffer.")
+
 (defun hiddenquote-word-notify (widget child event)
   "Notify the `hiddenquote-word' widget WIDGET about a change in CHILD.
 
@@ -948,9 +956,11 @@ advance point to some other widget and maybe check the 
answer."
   (when (and (eq (car-safe event) 'after-change)
              (not (eql (nth 1 event) (nth 2 event))))
     (if (eq child (car (last (widget-get widget :children))))
-        (goto-char (overlay-start
-                    (widget-get (car (widget-get widget :children))
-                                :field-overlay)))
+        (progn
+          (goto-char (overlay-start
+                      (widget-get (car (widget-get widget :children))
+                                  :field-overlay)))
+          (run-hooks 'hiddenquote-after-last-character-hook)) 
       (widget-forward 1)))
   (when (and (eq (car-safe event) 'after-change)
              (or hiddenquote-automatic-check



reply via email to

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