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

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  0:25 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 [this message]
2015-10-16 19:40     ` Chi Hsuan Yen
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=151015172503.ZM30721@torch.brasslantern.com \
    --to=schaefer@brasslantern.com \
    --cc=yan12125@gmail.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).