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

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

[elpa] externals/hyperbole 1cf5f3d 16/25: Allow Action Key to expand a t


From: Stefan Monnier
Subject: [elpa] externals/hyperbole 1cf5f3d 16/25: Allow Action Key to expand a tree when point is on the ellipsis
Date: Tue, 22 Sep 2020 10:29:28 -0400 (EDT)

branch: externals/hyperbole
commit 1cf5f3dc07382ba24a887231a7a87cc334356c89
Author: Bob Weiner <rsw@gnu.org>
Commit: Bob Weiner <rsw@gnu.org>

    Allow Action Key to expand a tree when point is on the ellipsis
---
 Changes           |  8 ++++++++
 hui-mouse.el      |  2 +-
 kotl/kotl-mode.el | 15 +++++++++------
 3 files changed, 18 insertions(+), 7 deletions(-)

diff --git a/Changes b/Changes
index 4570f3e..41f9b71 100644
--- a/Changes
+++ b/Changes
@@ -1,3 +1,11 @@
+2020-07-29  Bob Weiner  <rsw@gnu.org>
+
+* kotl/kotl-mode.el (kotl-mode:eolp): Added optional 'next-char-visible' arg.
+                    (kotl-mode:action-key, kotl-mode:assist-key):
+  hui-mouse.el (hkey-alist): In kotl-mode, matched to eol only if following
+    char is not invisible.  This allows Action Key to expand a tree when point
+    is on the ellipsis (invisible portion of tree).
+
 2020-07-28  Bob Weiner  <rsw@gnu.org>
 
 * kotl/kotl-mode.el (kotl-mode): Set outline-regexp so outline-on-heading-p and
diff --git a/hui-mouse.el b/hui-mouse.el
index ac3285e..a0c41d6 100644
--- a/hui-mouse.el
+++ b/hui-mouse.el
@@ -149,7 +149,7 @@ Its default value is #'smart-scroll-down."
     ;;
     ;; If at the end of a line (eol), invoke the associated Smart Key handler 
EOL handler.
     ((if (eq major-mode 'kotl-mode)
-        (and (not (kotl-mode:eobp)) (kotl-mode:eolp))
+        (and (not (kotl-mode:eobp)) (kotl-mode:eolp t))
        (smart-eolp)) .
        ((funcall action-key-eol-function) . (funcall assist-key-eol-function)))
     ;;
diff --git a/kotl/kotl-mode.el b/kotl/kotl-mode.el
index 36874b4..523ffd4 100644
--- a/kotl/kotl-mode.el
+++ b/kotl/kotl-mode.el
@@ -1918,12 +1918,15 @@ If at tail cell already, do nothing and return nil."
                  (kotl-mode:bocp))))
        (point)))
 
-(defun kotl-mode:eolp ()
-  "Return t if point is at the end of a visible line or the end of the buffer."
+(defun kotl-mode:eolp (&optional next-char-visible)
+  "Return t if point is at the end of a visible line or the end of the buffer.
+With optional NEXT-CHAR-VISIBLE, return t only if the following char is 
visible."
   (or (eobp)
       (and (eolp)
-          (or (not (kview:char-invisible-p))
-              (not (kview:char-invisible-p (1- (point)))))
+          (if next-char-visible
+              (not (kview:char-invisible-p))
+            (or (not (kview:char-invisible-p))
+                (not (kview:char-invisible-p (1- (point))))))
           t)))
 
 (defun kotl-mode:first-cell-p ()
@@ -1965,7 +1968,7 @@ If key is pressed:
      a windowful."
   (interactive)
   (cond        ((kotl-mode:eobp) (kotl-mode:show-all))
-       ((kotl-mode:eolp) (funcall action-key-eol-function))
+       ((kotl-mode:eolp t) (funcall action-key-eol-function))
        ((not (kview:valid-position-p))
         (if (markerp action-key-depress-prev-point)
             (progn (select-window
@@ -2000,7 +2003,7 @@ If assist-key is pressed:
      a windowful."
   (interactive)
   (cond ((kotl-mode:eobp) (kotl-mode:overview))
-       ((kotl-mode:eolp) (funcall assist-key-eol-function))
+       ((kotl-mode:eolp t) (funcall assist-key-eol-function))
        ((not (kview:valid-position-p))
         (if (markerp assist-key-depress-prev-point)
             (progn (select-window



reply via email to

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