all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Po Lu <luangruo@yahoo.com>
To: Noah Friedman <noah@splode.com>
Cc: emacs-devel@gnu.org
Subject: Re: recent change to yanking behavior of the clipboard
Date: Sun, 06 Feb 2022 15:37:53 +0800	[thread overview]
Message-ID: <87o83kphri.fsf@yahoo.com> (raw)
In-Reply-To: <20220205193944.836651.FMU2130669@unexploded-cow.prv.splode.com> (Noah Friedman's message of "Sat, 05 Feb 2022 19:39:44 -0800 (PST)")

Noah Friedman <noah@splode.com> writes:

> This change in master:
>
> 	2022-02-01 10:13:15 +0800  Po Lu  <luangruo@yahoo.com>  99c637499e
>
> 	  Only apply last change to the clipboard
>
> 	  * lisp/select.el (gui--selection-value-internal): Only return
> 	  nil if we own the clipboard.
>
> Means that yanking never pastes the clipboard if I've programmatically set
> the clipboard selection (which I do for both emacs and the sake of other
> program windows that use it)

If you assert ownership of CLIPBOARD from another program, then
`gui-selection-value' (which is the interprogram-paste-function) will
not return nil.  If not, that program is buggy and should be fixed.

Unless you are setting the clipboard inside Emacs via `x-set-selection',
in which case see below:

> But, curiously, you didn't make this change for the primary selection.

Because, typically, Emacs does not keep a local ring for text stored
into the primary selection.  `select-enable-primary' is a violation of
the XDG clipboard spec, and is unlikely to be used by many people, so I
didn't enable that code there.

> That means when I yank, I don't get the thing I've most recently copied to
> the clipboard.  I get some old thing from the primary selection.
>
> I don't understand how this new behavior is meant to be useful.

It is meant to be useful by providing a visible performance improvement
when Emacs is run over a network with moderate latency, by not querying
the X server for the value of CLIPBOARD when text was last killed inside
Emacs.  And yes, that is what motivated me to install that change.

> It's broken, and I am not exaggerating, somewhere around 30 years of
> muscle reflexes.

Why can't you save the clipboard contents into the kill ring as well?

> Please revert this.

We can provide a knob to turn that new behaviour off, but I'm not giving
up such a visible performance increase in yanking text when Emacs is
forwarded over a remote connection.

> Not every item that goes to the clipboard comes from a buffer kill or
> copy action. Not everything emacs "owns" is already in the kill-ring.

No, and neither should C-y yank any text not in the kill ring (or from
an interprogram paste, and text Lisp code saves into the kill ring is
not "interprogram".)

Thanks.



  reply	other threads:[~2022-02-06  7:37 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-06  3:39 recent change to yanking behavior of the clipboard Noah Friedman
2022-02-06  7:37 ` Po Lu [this message]
2022-02-06  9:20   ` Eli Zaretskii
2022-02-06  9:34     ` Po Lu
2022-02-06 10:18   ` Po Lu
2022-02-06 16:09   ` Óscar Fuentes
2022-02-07  1:11     ` Po Lu
2022-02-07  2:05       ` Óscar Fuentes
2022-02-07  2:59         ` Po Lu
2022-02-07  5:04           ` Óscar Fuentes
2022-02-07  5:17             ` Yuri Khan
2022-02-07  5:23               ` Óscar Fuentes
2022-02-07  5:31             ` Po Lu
2022-02-06 22:39   ` Lars Ingebrigtsen
2022-02-07  1:12     ` Po Lu
2022-02-07  2:53       ` Lars Ingebrigtsen
2022-02-07  3:11         ` Po Lu
2022-02-07  3:41           ` Lars Ingebrigtsen
2022-02-07  3:48             ` Po Lu
2022-02-07  4:05               ` Lars Ingebrigtsen
2022-02-07  4:44                 ` Po Lu
2022-02-07  4:57                   ` Corwin Brust
2022-02-07  5:29                     ` Po Lu
2022-02-07  5:47                       ` Corwin Brust
2022-02-07  5:52                       ` tomas
2022-02-07  6:43                         ` Po Lu
2022-02-07  6:57                           ` tomas
2022-02-07 13:17                       ` Eli Zaretskii
2022-02-07 13:18                         ` Po Lu
2022-02-07 12:49               ` Eli Zaretskii
2022-02-07 12:56                 ` Po Lu
2022-02-07 13:14               ` Stefan Monnier
2022-02-07 13:17                 ` Po Lu
2022-02-07 13:50                   ` Don't change `select-enable-primary` (was: recent change to yanking behavior of the clipboard) Stefan Monnier
2022-02-07 13:55                     ` Don't change `select-enable-primary` Po Lu
2022-02-07  1:11   ` recent change to yanking behavior of the clipboard Tim Cross
2022-02-07  2:31     ` Michael Welsh Duggan
2022-02-06  9:17 ` Eli Zaretskii
  -- strict thread matches above, loose matches on Subject: below --
2022-02-06 11:07 xenodasein--- via Emacs development discussions.
2022-02-06 11:21 ` Po Lu
2022-02-06 11:37   ` xenodasein--- via Emacs development discussions.
2022-02-06 11:47     ` Po Lu
2022-02-06 11:55       ` xenodasein--- via Emacs development discussions.
2022-02-06 12:01         ` Po Lu
2022-02-06 12:06           ` xenodasein--- via Emacs development discussions.
2022-02-06 12:08         ` Eli Zaretskii
2022-02-06 12:15           ` xenodasein--- via Emacs development discussions.
2022-02-06 12:30             ` Eli Zaretskii
2022-02-06 12:15         ` tomas
2022-02-06 12:20           ` xenodasein--- via Emacs development discussions.
2022-02-06 15:20   ` Stefan Monnier
2022-02-07  1:18     ` Po Lu
2022-02-07 13:04       ` Stefan Monnier
2022-02-07 13:15         ` Po Lu
2022-02-07 19:47           ` James Cloos
2022-02-07 19:53             ` tomas
2022-02-06 15:17 ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87o83kphri.fsf@yahoo.com \
    --to=luangruo@yahoo.com \
    --cc=emacs-devel@gnu.org \
    --cc=noah@splode.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.