Subject: dwim transpose-subr opportunity?

From: Tomas Nordin <[email-masked]>
Date: Fri, 17 Nov 2017 23:00:29 +0100

Hello List

Not a bug report but maybe a feature request. I was wondering if there
is an opportunity for a dwim feature of the transpose-<thing> set of
functions by something like the following:

1 file changed, 1 insertion(+), 1 deletion(-)
lisp/simple.el | 2 +-

modified   lisp/simple.el
@@ -6967,7 +6967,7 @@ transpose-subr
                       (progn (funcall mover (- x)) (point))))))
        pos1 pos2)
     (cond
-     ((= arg 0)
+     ((or (= arg 0) (use-region-p))
       (save-excursion
        (setq pos1 (funcall aux 1))
        (goto-char (or (mark) (error "No mark set in this buffer")))

The intention is that a 0 number prefix argument is not necessary if
there is a region so that use-region-p is non-nil. I have tried it in
some various ways and to me it seem to work, but I don't know all the
delicate ways in which those commands might be used. What do you think?

It gets a bit silly as suggested though, I guess the logic should be
something like (or (= arg 0) (and transpose-dwim (use-region-p)))

Best regards
--
Tomas