From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23248 invoked by alias); 28 Apr 2017 14:41:47 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: X-Seq: 41027 Received: (qmail 17472 invoked from network); 28 Apr 2017 14:41:47 -0000 X-Qmail-Scanner-Diagnostics: from mailout3.w1.samsung.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(210.118.77.13):SA:0(-5.0/5.0):. Processed in 1.050336 secs); 28 Apr 2017 14:41:47 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-5.0 required=5.0 tests=RCVD_IN_DNSWL_HI, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,RP_MATCHES_RCVD,SPF_HELO_PASS autolearn=unavailable autolearn_force=no version=3.4.1 X-Envelope-From: p.stephenson@samsung.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | Received-SPF: none (ns1.primenet.com.au: domain at samsung.com does not designate permitted sender hosts) X-AuditID: cbfec7f1-f796e6d00000116b-e8-590354a3719d Date: Fri, 28 Apr 2017 15:41:35 +0100 From: Peter Stephenson To: zsh-workers@zsh.org Subject: Re: Cannot paste unicode <0221>, <0234> - <024f> Message-id: <20170428154135.2e2b5626@pwslap01u.europe.root.pri> In-reply-to: Organization: Samsung Cambridge Solution Centre X-Mailer: Claws Mail 3.7.9 (GTK+ 2.22.0; i386-redhat-linux-gnu) MIME-version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrDIsWRmVeSWpSXmKPExsWy7djP87qLQ5gjDb4u5bE42PyQyYHRY9XB D0wBjFFcNimpOZllqUX6dglcGb3fepgLprFVfGqaztjAeJ+li5GTQ0LAROLn+hVsELaYxIV7 64FsLg4hgaWMEvs/zWAESQgJ9DJJnJpbC9Owd+dLqKJljBIHHz6CcqYxSXR0zGGHcM4wShxr e8gC4ZxllHi45xwzSD+LgKrEt4dL2UFsNgFDiambZoPtEBEQlzi79jzYUcIClhKzN7Sxgti8 AvYS/XM6wHo5Bawkdq1dAVbPL6AvcfXvJyaIm+wlZl45wwhRLyjxY/I9sDnMAjoS27Y9Zoew 5SU2r3nLDHKQhMB/Nonbh38ALeAAcmQlNh1ghjBdJPa0+0OMFJZ4dXwLO4QtI3F5cjc0vPoZ JZ50+0KMmcEocfrMDmjgWUv03b7ICLGLT2LStulQM3klOtqEIEo8JPqOr2CFsB0l7qxfxziB UXEWkqtnIbl6FpKrFzAyr2IUSS0tzk1PLTbSK07MLS7NS9dLzs/dxAhMA6f/Hf+4g/H9CatD jAIcjEo8vAZuzJFCrIllxZW5hxglOJiVRHiD7YBCvCmJlVWpRfnxRaU5qcWHGKU5WJTEeblO XYsQEkhPLEnNTk0tSC2CyTJxcEo1MMYFTDy3itnikq943ANHc8Fbp7hPNfyLdtY0s5prsaLi eeYXA5WL7xx0n9+wvsy9zsu0sGjdje2PqsX2aW4MDhDRebs82pfrRrK/2Ekj48Zj01IEI50O xFQ+EyvTunxs+YldfDOSGe1Ov+HSO//m/6R6he57e7zEugwm2ZYsNp90783RT/+snyuxFGck GmoxFxUnAgA3y3DG/wIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrOIsWRmVeSWpSXmKPExsVy+t/xK7p7Q5gjDSbusbI42PyQyYHRY9XB D0wBjFFuNhmpiSmpRQqpecn5KZl56bZKoSFuuhZKCnmJuam2ShG6viFBSgpliTmlQJ6RARpw cA5wD1bSt0twy+j91sNcMI2t4lPTdMYGxvssXYycHBICJhJ7d75kg7DFJC7cWw9kc3EICSxh lNgz7yaUM4NJYvaybUwQzjlGiZ1rJzBCOGcZJVqP9rKC9LMIqEp8e7iUHcRmEzCUmLppNiOI LSIgLnF27XmwfcIClhKzN7SB1fMK2Ev0z+lgBrE5Bawkdq1dATX0NpPE+YsLmUAS/AL6Elf/ fmKCONBeYuaVM4wQzYISPybfAxvKLKAlsXlbEyuELS+xec1bsKFCAuoSN+7uZp/AKDwLScss JC2zkLQsYGRexSiSWlqcm55bbKRXnJhbXJqXrpecn7uJERhJ24793LKDsetd8CFGAQ5GJR7e Dg/mSCHWxLLiytxDjBIczEoivMF2QCHelMTKqtSi/Pii0pzU4kOMpsCQmcgsJZqcD4zyvJJ4 QxNDc0tDI2MLC3MjIyVx3qkfroQLCaQnlqRmp6YWpBbB9DFxcEo1MK7ROV+X+7Ojr2Jakfsf 88oXDo9cL118eEXdve6G/KzfC2U+rTL0Mr7xeKGO9uVXHm6cW4//e/rw9iyW6zpL92XK7d7/ 578C63ermWdWxAk9vnSROzJdR8RV+PaX8PTmrLY31VfDSrOvxl7sF1l12XV3pu61jIIc87PN Nf+1PnzRrClfInHhRbkSS3FGoqEWc1FxIgDB2MdnugIAAA== X-MTR: 20000000000000000@CPGS X-CMS-MailID: 20170428144138eucas1p143725e57a8a27cfec268374cf2f104c8 X-Msg-Generator: CA X-Sender-IP: 182.198.249.180 X-Local-Sender: =?UTF-8?B?UGV0ZXIgU3RlcGhlbnNvbhtTQ1NDLURhdGEgUGxhbmUb?= =?UTF-8?B?7IK87ISx7KCE7J6QG1ByaW5jaXBhbCBFbmdpbmVlciwgU29mdHdhcmU=?= X-Global-Sender: =?UTF-8?B?UGV0ZXIgU3RlcGhlbnNvbhtTQ1NDLURhdGEgUGxhbmUbU2Ft?= =?UTF-8?B?c3VuZyBFbGVjdHJvbmljcxtQcmluY2lwYWwgRW5naW5lZXIsIFNvZnR3YXJl?= X-Sender-Code: =?UTF-8?B?QzEwG0VIURtDMTBDRDA1Q0QwNTAwNTg=?= CMS-TYPE: 201P X-HopCount: 7 X-CMS-RootMailID: 20170428111102epcas3p1cc3d86dc54fdafd8cd0e613bbaeba69b X-RootMTR: 20170428111102epcas3p1cc3d86dc54fdafd8cd0e613bbaeba69b References: <20170428124439.73447db2@pwslap01u.europe.root.pri> <20170428141650.7ed174d6@pwslap01u.europe.root.pri> It might be possible to rely *only* on wcwidth() in cases where we're using a replacement? Does anyone from the Apple world have any opinions? pws diff --git a/Src/Zle/zle_refresh.c b/Src/Zle/zle_refresh.c index 8391739..d0384af 100644 --- a/Src/Zle/zle_refresh.c +++ b/Src/Zle/zle_refresh.c @@ -1278,7 +1278,15 @@ zrefresh(void) #ifdef __STDC_ISO_10646__ !ZSH_INVALID_WCHAR_TEST(*t) && #endif - iswprint(*t) && (width = WCWIDTH(*t)) > 0) { + /* + * If we are using a replacement wcwidth(), rely + * on it also for checking printability: width <= 0 + * if not printable. + */ +#ifndef BROKEN_WCWIDTH + iswprint(*t) && +#endif + (width = WCWIDTH(*t)) > 0) { int ichars; if (width > rpms.sen - rpms.s) { int started = 0;