unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Corwin Brust <corwin@bru.st>
To: "Kévin Le Gouguec" <kevin.legouguec@gmail.com>,
	"Lars Ingebrigtsen" <larsi@gnus.org>
Cc: 43847@debbugs.gnu.org, Amin Bandali <bandali@gnu.org>
Subject: bug#43847: ERC - prevent yanking multiple lines into IRC (feature request) *patch*
Date: Fri, 9 Oct 2020 10:41:26 -0500	[thread overview]
Message-ID: <CAJf-WoQ94iYRZS6-gMZOprZd02_3FCCOwUeSXyzUyLbMQNO8bA@mail.gmail.com> (raw)
In-Reply-To: <878scfj0oa.fsf@gmail.com>

Hi Kévin and Lars.  CCd Amin on this one also :)

On Fri, Oct 9, 2020 at 2:54 AM Kévin Le Gouguec
<kevin.legouguec@gmail.com> wrote:
>
> Lars Ingebrigtsen <larsi@gnus.org> writes:
>
> > Corwin Brust <corwin@bru.st> writes:
> >
> >> I hate it when I accidentally paste multi-line text into ERC.  I
> >> *never* actually intend to do this.
> >
> > I sometimes want to, and sometimes I don't want to.  I think it would be
> > pretty surprising for users if we rebind `C-y' in this way.
>
> Seconded.  I think a whitespace-fixing yank command could be useful in
> more situations than just ERC; OTOH I'd much rather keep C-y as a
> "reliably dumb" yank in all contexts, at least by default.
>

I mean, diversity, right :)

This hasn't come up for me outside IRC/ERC, that I can recall, but it
definitely does makes sense to me that people would want an easy way
to strip new-lines when yanking in contexts out-side IRC. Any thoughts
as to the approach for this?  The first thing that occurs would be to
have an additional var akin to `yank-handled-properties' and
`yank-excluded-properties', perhaps `yank-unfilled'.  This would
change the behavior of `yank' when bound to a non-nil value.   I guess
we'd want a new function wrapping `yank' with the new var lexically
bound to t.  As for a default binding for this, I note that M-y
doesn't seem to do anything helpful when not proceeded by a C-y.
Maybe more special case logic there?

That said, I opened this bug with the goal of making it realy easy to
avoid accidental muli-line spaces when pasting into ERC.

To double confirm, both of you are saying that it is a frequent
use-case that you want to yank content including new-lines into
erc-mode buffers?

I'd really like to see something like a defcustom that can make the
default behavior of C-y for ERC buffers less IRC surly.   IMHO, making
this default to t is more newbie friendly, while those who have a
use-case for multi-line paste directly into ERC seem more likely to be
those who will know how to set the var.

  (defcustom erc-yank-unfilled t "When non-nill, ERC unfills before
inserting from the kill-ring.")

  (defun erc-yank (..)
    ..
    (let ((yank-unfilled erc-yank-unfilled))
      .. ))

Couple additional notes:

 -  I need to respin this to use [rebind] (thanks to wgreenhouse from #erc)
 -  I haven't written anything for News, which I suspect anything we
would decide on will end-up reaching

Thanks much,
Corwin





  reply	other threads:[~2020-10-09 15:41 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-07 14:11 bug#43847: ERC - prevent yanking multiple lines into IRC (feature request) *patch* Corwin Brust
2020-10-07 15:27 ` Noam Postavsky
2020-10-07 15:30   ` Corwin Brust
2020-10-07 16:05     ` Noam Postavsky
2020-10-09  2:01       ` Corwin Brust
2020-10-10  5:00         ` Corwin Brust
2020-10-07 16:56 ` Brett Gilio
2020-10-09  1:32   ` Corwin Brust
2020-10-09  1:59     ` Corwin Brust
2020-10-09 14:32     ` Brett Gilio
2020-10-09  4:54 ` Lars Ingebrigtsen
2020-10-09  7:52   ` Kévin Le Gouguec
2020-10-09 15:41     ` Corwin Brust [this message]
2020-10-09 16:00       ` Brett Gilio
2020-10-10 20:11         ` Lars Ingebrigtsen
2020-10-10 20:22           ` Brett Gilio

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to=CAJf-WoQ94iYRZS6-gMZOprZd02_3FCCOwUeSXyzUyLbMQNO8bA@mail.gmail.com \
    --to=corwin@bru.st \
    --cc=43847@debbugs.gnu.org \
    --cc=bandali@gnu.org \
    --cc=kevin.legouguec@gmail.com \
    --cc=larsi@gnus.org \
    /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 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).