unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#25196: mention how to see top or middle of each yank-pop
@ 2016-12-13 19:06 積丹尼 Dan Jacobson
  2019-07-27 11:16 ` Lars Ingebrigtsen
  0 siblings, 1 reply; 10+ messages in thread
From: 積丹尼 Dan Jacobson @ 2016-12-13 19:06 UTC (permalink / raw)
  To: 25196

To the bottom of
"yank-pop is an interactive compiled Lisp function in ‘simple.el’.
It is bound to M-y." help text, please add:

yank-pop is nice except when the popped text takes up more than a screen.

In that case the only way to see what is at the top of the text is to
move the cursor thus breaking the yank-pop sequence.

In such cases one might more or less salvage some text by looking directly for it in
the 'kill-ring', although it is in a different format than the original...

---

Anyway the yank-pop docstring should at least mention 'kill-ring'.

Also in (info "(emacs) Earlier Kills") say how to see the top or middle
of each yank-pop without breaking the yank-pop sequence.

emacs-version "25.1.1"





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#25196: mention how to see top or middle of each yank-pop
  2016-12-13 19:06 bug#25196: mention how to see top or middle of each yank-pop 積丹尼 Dan Jacobson
@ 2019-07-27 11:16 ` Lars Ingebrigtsen
  2019-07-27 22:18   ` Juri Linkov
  0 siblings, 1 reply; 10+ messages in thread
From: Lars Ingebrigtsen @ 2019-07-27 11:16 UTC (permalink / raw)
  To: 積丹尼 Dan Jacobson; +Cc: 25196

積丹尼 Dan Jacobson <jidanni@jidanni.org> writes:

> To the bottom of
> "yank-pop is an interactive compiled Lisp function in ‘simple.el’.
> It is bound to M-y." help text, please add:
>
> yank-pop is nice except when the popped text takes up more than a screen.
>
> In that case the only way to see what is at the top of the text is to
> move the cursor thus breaking the yank-pop sequence.
>
> In such cases one might more or less salvage some text by looking
> directly for it in
> the 'kill-ring', although it is in a different format than the original...

That doesn't really seem applicable for the doc string.

> Anyway the yank-pop docstring should at least mention 'kill-ring'.

I've now done so on the trunk.

> Also in (info "(emacs) Earlier Kills") say how to see the top or middle
> of each yank-pop without breaking the yank-pop sequence.

I don't think there is a way to do that?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#25196: mention how to see top or middle of each yank-pop
  2019-07-27 11:16 ` Lars Ingebrigtsen
@ 2019-07-27 22:18   ` Juri Linkov
  2019-07-28  0:30     ` Drew Adams
  2019-07-28 10:06     ` Lars Ingebrigtsen
  0 siblings, 2 replies; 10+ messages in thread
From: Juri Linkov @ 2019-07-27 22:18 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: 25196, 積丹尼 Dan Jacobson

[-- Attachment #1: Type: text/plain, Size: 318 bytes --]

>> Also in (info "(emacs) Earlier Kills") say how to see the top or middle
>> of each yank-pop without breaking the yank-pop sequence.
>
> I don't think there is a way to do that?

FWIW, here is battle-tested (i.e. use for many years) command
that allows looking at the top or middle of each yank-pop before yanking:


[-- Attachment #2: yank-from-kill-ring.el --]
[-- Type: application/emacs-lisp, Size: 1013 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#25196: mention how to see top or middle of each yank-pop
  2019-07-27 22:18   ` Juri Linkov
@ 2019-07-28  0:30     ` Drew Adams
  2019-07-28 10:06     ` Lars Ingebrigtsen
  1 sibling, 0 replies; 10+ messages in thread
From: Drew Adams @ 2019-07-28  0:30 UTC (permalink / raw)
  To: Juri Linkov, Lars Ingebrigtsen
  Cc: 25196, 積丹尼 Dan Jacobson

> FWIW, here is battle-tested (i.e. use for many years) command
> that allows looking at the top or middle of each yank-pop before
> yanking:

I like it, including the fact that you can:
(1) edit a kill before pasting it, and even
(2) enter any text you want, for pasting.
#2 means this is not just about yanking kills.  

But please, if vanilla Emacs does this, do _not_
bind it to `C-M-y'.

This is a possible ~replacement (by users) for
`yank-pop'.  Users can bind it to `M-y'.  Or
if it becomes more popular someday than
`yank-pop' Emacs could give it binding `M-y'.

It's more or less a replacement for `yank-pop'
because the end effect is more or less the same:
yank something from the kill-ring (but see above).

Possible variants:

1. Prevent editing in the minibuffer (e.g.
   optionally), so you always get a kill (you
   can edit the text after yanking, of course).

2. While reading the string, force all kill
   commands to just delete, so that editing
   doesn't add to the kill-ring.

---

I use the secondary selection a lot, and have
keys for commands that use it.  I even have a
ring of secondary selections.  In many ways the
secondary selection is, or can be, parallel to
the region, and likewise its ring.

I use prefix `C-M-' for the secondary-selection
commands.

Yes, one user's/library's use of `C-M-y' isn't
reason enough to not waste that key on yet
another kill-ring yanker.  But the fact that
it's essentially a replacement for `yank-pop'
is a reasonable argument.

(`browse-kill-ring.el', for example, is another
such replacement.)





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#25196: mention how to see top or middle of each yank-pop
  2019-07-27 22:18   ` Juri Linkov
  2019-07-28  0:30     ` Drew Adams
@ 2019-07-28 10:06     ` Lars Ingebrigtsen
  2019-07-28 11:06       ` Andreas Schwab
  2019-08-01 14:35       ` Basil L. Contovounesios
  1 sibling, 2 replies; 10+ messages in thread
From: Lars Ingebrigtsen @ 2019-07-28 10:06 UTC (permalink / raw)
  To: Juri Linkov; +Cc: 25196, 積丹尼 Dan Jacobson

Juri Linkov <juri@linkov.net> writes:

> FWIW, here is battle-tested (i.e. use for many years) command
> that allows looking at the top or middle of each yank-pop before yanking:

What I'd really like (as a new feature) would be to be able to `M-y' and
then do any other non-editing command, and then be able to continue the
`M-y' as if I'd not done anything.  Perhaps as a new command, or perhaps
as just how `M-y' should always behave.

The latter might sound like a controversial behavioural change, but
`M-y' currently just signals an error in that situation, so I guess the
impact would be minimal.  (I.e., having `M-y' error out in that
situation is probably not in anybody's work flow?)

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#25196: mention how to see top or middle of each yank-pop
  2019-07-28 10:06     ` Lars Ingebrigtsen
@ 2019-07-28 11:06       ` Andreas Schwab
  2019-07-28 13:33         ` Basil L. Contovounesios
  2019-08-01 14:35       ` Basil L. Contovounesios
  1 sibling, 1 reply; 10+ messages in thread
From: Andreas Schwab @ 2019-07-28 11:06 UTC (permalink / raw)
  To: Lars Ingebrigtsen
  Cc: 25196, Juri Linkov, 積丹尼 Dan Jacobson

On Jul 28 2019, Lars Ingebrigtsen <larsi@gnus.org> wrote:

> Juri Linkov <juri@linkov.net> writes:
>
>> FWIW, here is battle-tested (i.e. use for many years) command
>> that allows looking at the top or middle of each yank-pop before yanking:
>
> What I'd really like (as a new feature) would be to be able to `M-y' and
> then do any other non-editing command, and then be able to continue the
> `M-y' as if I'd not done anything.  Perhaps as a new command, or perhaps
> as just how `M-y' should always behave.

It could be bound to M-0 M-y, which would normally be a no-op.  It could
reestablish the yank-pop sequence, without modifying anything.

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#25196: mention how to see top or middle of each yank-pop
  2019-07-28 11:06       ` Andreas Schwab
@ 2019-07-28 13:33         ` Basil L. Contovounesios
  0 siblings, 0 replies; 10+ messages in thread
From: Basil L. Contovounesios @ 2019-07-28 13:33 UTC (permalink / raw)
  To: Andreas Schwab
  Cc: Lars Ingebrigtsen, Juri Linkov, 25196,
	積丹尼 Dan Jacobson

Andreas Schwab <schwab@linux-m68k.org> writes:

> On Jul 28 2019, Lars Ingebrigtsen <larsi@gnus.org> wrote:
>
>> What I'd really like (as a new feature) would be to be able to `M-y' and
>> then do any other non-editing command, and then be able to continue the
>> `M-y' as if I'd not done anything.  Perhaps as a new command, or perhaps
>> as just how `M-y' should always behave.
>
> It could be bound to M-0 M-y, which would normally be a no-op.

FWIW, M-0 M-y is not entirely a no-op when interprogram-paste-function
is and returns non-nil.

-- 
Basil





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#25196: mention how to see top or middle of each yank-pop
  2019-07-28 10:06     ` Lars Ingebrigtsen
  2019-07-28 11:06       ` Andreas Schwab
@ 2019-08-01 14:35       ` Basil L. Contovounesios
  2019-08-01 14:54         ` Drew Adams
  2019-08-01 21:12         ` Juri Linkov
  1 sibling, 2 replies; 10+ messages in thread
From: Basil L. Contovounesios @ 2019-08-01 14:35 UTC (permalink / raw)
  To: Lars Ingebrigtsen
  Cc: 25196, Juri Linkov, 積丹尼 Dan Jacobson

Lars Ingebrigtsen <larsi@gnus.org> writes:

> Juri Linkov <juri@linkov.net> writes:
>
>> FWIW, here is battle-tested (i.e. use for many years) command
>> that allows looking at the top or middle of each yank-pop before yanking:
>
> What I'd really like (as a new feature) would be to be able to `M-y' and
> then do any other non-editing command, and then be able to continue the
> `M-y' as if I'd not done anything.  Perhaps as a new command, or perhaps
> as just how `M-y' should always behave.
>
> The latter might sound like a controversial behavioural change, but
> `M-y' currently just signals an error in that situation, so I guess the
> impact would be minimal.  (I.e., having `M-y' error out in that
> situation is probably not in anybody's work flow?)

FWIW, see some slightly related discussion in the following thread:

https://lists.gnu.org/archive/html/emacs-devel/2010-03/msg00650.html
https://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01176.html
https://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01194.html

Thanks,

-- 
Basil





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#25196: mention how to see top or middle of each yank-pop
  2019-08-01 14:35       ` Basil L. Contovounesios
@ 2019-08-01 14:54         ` Drew Adams
  2019-08-01 21:12         ` Juri Linkov
  1 sibling, 0 replies; 10+ messages in thread
From: Drew Adams @ 2019-08-01 14:54 UTC (permalink / raw)
  To: Basil L. Contovounesios, Lars Ingebrigtsen
  Cc: 25196, Juri Linkov, 積丹尼 Dan Jacobson

> FWIW, see some slightly related discussion in the following thread:
> 
> https://lists.gnu.org/archive/html/emacs-devel/2010-03/msg00650.html

Yes.  Might as well add the enhancements of
`browse-kill-ring+.el' to that input/discussion:

* Option `browse-kill-ring-alternative-ring' is an
  alternative selection ring to use, in addition to
  the `kill-ring'.  You can customize the value to
  any ring of strings you like.

* `browse-kill-ring' lets you use either ring as the
  selection ring to browse and paste.  You can even
  use both rings, in different `browse-kill-ring'
  display buffers.  In such a buffer, `o' pops to the
  list for the other ring.

* If you also use library `second-sel.el' then, by
  default, the secondary selection ring is the
  alternative ring.

* You can customize the set of commands that are
  recognized as yank alternative yank commands.  The
  alternative yank commands are commands that yank
  using a different selection ring.

* Following a yank command or alternative yank command,
  `M-y' pops and yanks the appropriate type of selection.
  A prefix arg N chooses the Nth previous selection in
  the ring.

* Otherwise (not following a yank or alternative yank),
  `M-y' browses the current selection ring.  A prefix
  arg switches to the other selection ring.  If you
  are in a `browse-kill-ring' buffer, then `M-y'
  switches to the other ring even without a prefix arg.

* If there is no alternative selection ring then `M-y'
  either pops (following a yank) or browses (not
  following a yank) the `kill-ring'.

---

https://www.emacswiki.org/emacs/download/browse-kill-ring%2b.el





^ permalink raw reply	[flat|nested] 10+ messages in thread

* bug#25196: mention how to see top or middle of each yank-pop
  2019-08-01 14:35       ` Basil L. Contovounesios
  2019-08-01 14:54         ` Drew Adams
@ 2019-08-01 21:12         ` Juri Linkov
  1 sibling, 0 replies; 10+ messages in thread
From: Juri Linkov @ 2019-08-01 21:12 UTC (permalink / raw)
  To: Basil L. Contovounesios
  Cc: Lars Ingebrigtsen, 25196, 積丹尼 Dan Jacobson

> FWIW, see some slightly related discussion in the following thread:
>
> https://lists.gnu.org/archive/html/emacs-devel/2010-03/msg00650.html
> https://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01176.html
> https://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01194.html

I guess nothing was changed after that discussion is because
a package 'browse-kill-ring' is easy to install from MELPA,
and a small snippet that I posted is easy to add to the init file.





^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2019-08-01 21:12 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-13 19:06 bug#25196: mention how to see top or middle of each yank-pop 積丹尼 Dan Jacobson
2019-07-27 11:16 ` Lars Ingebrigtsen
2019-07-27 22:18   ` Juri Linkov
2019-07-28  0:30     ` Drew Adams
2019-07-28 10:06     ` Lars Ingebrigtsen
2019-07-28 11:06       ` Andreas Schwab
2019-07-28 13:33         ` Basil L. Contovounesios
2019-08-01 14:35       ` Basil L. Contovounesios
2019-08-01 14:54         ` Drew Adams
2019-08-01 21:12         ` Juri Linkov

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).