zsh-workers
 help / color / mirror / code / Atom feed
From: Chi Hsuan Yen <yan12125@gmail.com>
To: Bart Schaefer <schaefer@brasslantern.com>
Cc: Zsh hackers list <zsh-workers@zsh.org>
Subject: Re: Bug: bracketed-paste-magic + ztcp causes wrong pasted contents for CJK payloads
Date: Sat, 17 Oct 2015 03:40:16 +0800	[thread overview]
Message-ID: <CAMNjDR3ERJ5PF_yN_Np_BhDdriE=Ub3tP1CBc4QvpingD5J+QQ@mail.gmail.com> (raw)
In-Reply-To: <151015172503.ZM30721@torch.brasslantern.com>

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

With a ubuntu 14.04 vagrant image [1] I can reproduce this bug all the time.

And the patch listed above works on neither ubuntu 14.04 nor Arch Linux.

[1]
https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box

On 16 October 2015 at 08:25, Bart Schaefer <schaefer@brasslantern.com>
wrote:

> On Oct 15,  1:54pm, Bart Schaefer wrote:
> } Subject: Re: Bug: bracketed-paste-magic + ztcp causes wrong pasted
> content
> }
> } On Thu, Oct 15, 2015 at 6:54 AM, Chi Hsuan Yen <yan12125@gmail.com>
> wrote:
> } > This bug is similar to zsh-worker 36763 but different. With zsh commit
> } > 827d360, I have no problems in pasting CJK payloads with an empty
> ~/.zshrc,
> } > while problems occur with my own ~/.zshrc.  It's a strange bug. Please
> tell
> } > me if you can't reproduce it. I'll test on more platforms.
> }
> } I am able to reproduce this, but not reliably.
>
> On the off chance that $(emulate) is somehow consuming some of the bytes
> being pasted, try this?
>
>
> diff --git a/Functions/Zle/bracketed-paste-magic
> b/Functions/Zle/bracketed-paste-magic
> index cd4a708..2368bc3 100644
> --- a/Functions/Zle/bracketed-paste-magic
> +++ b/Functions/Zle/bracketed-paste-magic
> @@ -116,10 +116,14 @@ quote-paste() {
>  # Now the actual function
>
>  bracketed-paste-magic() {
> -    # Fast exit in the vi-mode cut-buffer context
>      if [[ "$LASTWIDGET" = *vi-set-buffer ]]; then
> +       # Fast exit in the vi-mode cut-buffer context
>         zle .bracketed-paste
>         return
> +    else
> +       # Capture the pasted text in $PASTED
> +       local PASTED
> +       zle .bracketed-paste PASTED
>      fi
>
>      # Really necessary to go to this much effort?
> @@ -127,10 +131,9 @@ bracketed-paste-magic() {
>
>      emulate -L zsh
>      local -a bpm_hooks bpm_inactive
> -    local PASTED bpm_func bpm_active bpm_keymap=$KEYMAP
> +    local bpm_func bpm_active bpm_keymap=$KEYMAP
>
> -    # Set PASTED and run the paste-init functions
> -    zle .bracketed-paste PASTED
> +    # Run the paste-init functions
>      if zstyle -a :bracketed-paste-magic paste-init bpm_hooks; then
>         for bpm_func in $bpm_hooks; do
>             if (( $+functions[$bpm_func] )); then
>

  reply	other threads:[~2015-10-16 19:40 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-15 13:54 Chi Hsuan Yen
2015-10-15 20:54 ` Bart Schaefer
2015-10-16  0:25   ` Bart Schaefer
2015-10-16 19:40     ` Chi Hsuan Yen [this message]
2015-10-18 15:52       ` Bart Schaefer
2015-10-18 16:19         ` Chi Hsuan Yen
2015-10-28  2:43     ` Bart Schaefer
2015-10-28  3:23       ` Bart Schaefer
2015-10-28  9:35         ` Peter Stephenson
2015-10-28 17:07           ` Bart Schaefer
2015-10-28 17:44             ` Peter Stephenson
2015-10-28 23:38               ` Bart Schaefer
2015-10-29  9:31                 ` Peter Stephenson
2015-10-29 14:51                   ` Peter Stephenson
2015-10-29 15:00                     ` Bart Schaefer
2015-10-29 15:10                       ` Peter Stephenson
2015-10-29 16:25                     ` Jun T.
2015-10-29 16:56                       ` Peter Stephenson
2015-10-30 15:02                         ` Daniel Shahaf
2015-11-03 16:31                           ` Chi Hsuan Yen

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='CAMNjDR3ERJ5PF_yN_Np_BhDdriE=Ub3tP1CBc4QvpingD5J+QQ@mail.gmail.com' \
    --to=yan12125@gmail.com \
    --cc=schaefer@brasslantern.com \
    --cc=zsh-workers@zsh.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.vuxu.org/mirror/zsh/

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 NNTP newsgroup(s).