]> git.eshelyaron.com Git - emacs.git/commitdiff
Update to Transient v0.4.1
authorJonas Bernoulli <jonas@bernoul.li>
Fri, 2 Jun 2023 21:26:45 +0000 (23:26 +0200)
committerJonas Bernoulli <jonas@bernoul.li>
Fri, 2 Jun 2023 21:26:45 +0000 (23:26 +0200)
doc/misc/transient.texi
lisp/transient.el

index 330fdd1e3a253aa77b24598f830bd670964dea53..be9e8698ab47165f57a83369c1affa8b50461613 100644 (file)
@@ -31,7 +31,7 @@ General Public License for more details.
 @finalout
 @titlepage
 @title Transient User and Developer Manual
-@subtitle for version 0.4.0
+@subtitle for version 0.4.1
 @author Jonas Bernoulli
 @page
 @vskip 0pt plus 1filll
@@ -74,7 +74,7 @@ that hurdle is Psionic K's interactive tutorial, available at
 @end quotation
 
 @noindent
-This manual is for Transient version 0.4.0.
+This manual is for Transient version 0.4.1.
 
 @insertcopying
 @end ifnottex
@@ -2150,7 +2150,7 @@ default value of a prefix using the same format as returned by
 
 @item
 @code{always-read} For options, whether to read a value on every invocation.
-If this is nil, then options that have a value are simply unset and
+If this is @code{nil}, then options that have a value are simply unset and
 have to be invoked a second time to set a new value.
 
 @item
index 1d763c4ddeb9b7a9573746986d66d457abfd2466..048554eee13413578f1367df5585074de112a577 100644 (file)
@@ -6,7 +6,7 @@
 ;; URL: https://github.com/magit/transient
 ;; Keywords: extensions
 
-;; Package-Version: 0.4.0
+;; Package-Version: 0.4.1
 ;; Package-Requires: ((emacs "26.1"))
 
 ;; SPDX-License-Identifier: GPL-3.0-or-later
@@ -1643,6 +1643,7 @@ of the corresponding object."
   "<transient-history-prev>"      #'transient--do-stay
   "<transient-history-next>"      #'transient--do-stay
   "<universal-argument>"          #'transient--do-stay
+  "<universal-argument-more>"     #'transient--do-stay
   "<negative-argument>"           #'transient--do-minus
   "<digit-argument>"              #'transient--do-stay
   "<top-level>"                   #'transient--do-quit-all
@@ -3043,10 +3044,12 @@ prompt."
         (progn
           (cl-call-next-method obj value)
           (dolist (arg incomp)
-            (when-let ((obj (cl-find-if (lambda (obj)
-                                          (and (slot-boundp obj 'argument)
-                                               (equal (oref obj argument) arg)))
-                                        transient--suffixes)))
+            (when-let ((obj (cl-find-if
+                             (lambda (obj)
+                               (and (slot-exists-p obj 'argument)
+                                    (slot-boundp obj 'argument)
+                                    (equal (oref obj argument) arg)))
+                             transient--suffixes)))
               (let ((transient--unset-incompatible nil))
                 (transient-infix-set obj nil)))))
       (cl-call-next-method obj value))))
@@ -3253,6 +3256,8 @@ have a history of their own.")
     (with-current-buffer buf
       (when transient-enable-popup-navigation
         (setq focus (or (button-get (point) 'command)
+                        (and (not (bobp))
+                             (button-get (1- (point)) 'command))
                         (transient--heading-at-point))))
       (erase-buffer)
       (setq window-size-fixed t)
@@ -3384,7 +3389,9 @@ have a history of their own.")
                     (insert ?\n)
                   (insert (propertize " " 'display
                                       `(space :align-to (,(nth (1+ c) cc)))))))
-            (insert (make-string (max 1 (- (nth c cc) (current-column))) ?\s))
+            (when (> c 0)
+              (insert (make-string (max 1 (- (nth c cc) (current-column)))
+                                   ?\s)))
             (when-let ((cell (nth r (nth c columns))))
               (insert cell))
             (when (= c (1- cs))