delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2017/01/31/05:04:25

X-Recipient: archive-cygwin AT delorie DOT com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:date:from:to:subject:message-id:reply-to
:references:mime-version:content-type:in-reply-to; q=dns; s=
default; b=vophJItBsLN5fBgWIwArkuUNxzTTrhMso4kZlzhNTZ6zoAwL5iYTQ
FuIloHsbflZ6oSJX7vtFe23DHQKnZ77SsHyX/jJVe5OOIpvqi8qxLBrTq4S6ucDG
oeqypFBcqvPIJQtR1MgSBzL4IyecXnORP0K5A6pPBx0kFvLbPNCelc=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:date:from:to:subject:message-id:reply-to
:references:mime-version:content-type:in-reply-to; s=default;
bh=kIoYY/XizBHivicWDCcxyu3f3YE=; b=fVDHJh+WJ9tQl61lxwK2AiL+Xiu7
7f04D4IUOFgNOwoNDEP0ISmws3yS3nLvMkfR3h82WNlpKGeTstwqoOUAL7zr4w5S
RvwitJg8VRK8AqTpYowbCIB7z77Yv4VfmqxJczn8sb8eEqFH8sVARs4TFeUG9hl+
IJbo35YpkXQXTUE=
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-101.4 required=5.0 tests=AWL,BAYES_00,GOOD_FROM_CORINNA_CYGWIN,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_DNSWL_LOW,SPF_HELO_PASS autolearn=ham version=3.3.2 spammy=cooked, Consequently, management, H*F:D*cygwin.com
X-HELO: drew.franken.de
Date: Tue, 31 Jan 2017 11:04:02 +0100
From: Corinna Vinschen <corinna-cygwin AT cygwin DOT com>
To: cygwin AT cygwin DOT com
Subject: Re: [ANNOUNCEMENT] Updated: dash-0.5.8-3
Message-ID: <20170131100402.GB29504@calimero.vinschen.de>
Reply-To: cygwin AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
References: <d58b09904f6fc607e5c044e67a02f393 AT smtp-cloud3 DOT xs4all DOT net> <58893f48 DOT 0850ca0a DOT 6c5d DOT 5fde AT mx DOT google DOT com> <81b5af354b7a3925ff0a68dcc063265f AT smtp-cloud6 DOT xs4all DOT net>
MIME-Version: 1.0
In-Reply-To: <81b5af354b7a3925ff0a68dcc063265f@smtp-cloud6.xs4all.net>
User-Agent: Mutt/1.7.1 (2016-10-04)

--qMm9M+Fa2AknHoGS
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Jan 28 14:44, Houder wrote:
> On Wed, 25 Jan 2017 16:14:00, Steven Penny wrote:
> > Obviously Bash is not the problem, nor readline as Dash doesnt use read=
line. So
> > it appears the issue this time is again with cygwin1.dll, or perhaps th=
e Dash
> > package.
>=20
> .. uhm, it appears to me that Windows is the issue here.
>=20
> As those in the know do not feel inclined to respond, I will provide some
> guesses that are my own:
>=20
>  - in terms of input buffer management, utf-8 encoded characters will not
>    be recognized in case of bash and dash ... (they are under Fedora)
>     - see the output of stty -a: iutf8 is not present (it is under Fedora)
>  - readline provides bash with input buffer management for utf-8 encoded
>    characters on Windows (that is why it 'works' in case of bash)
>  - bash has support for utf-8 encoded characters ...
>    (e.g. ls -l ? will include one-character filenames in case the name is
>     made up of only one multi-byte character)
>  - dash has no such support ... [1][2]
>=20
> Consequently, dash is only partly useful, even more so on Windows (as it
> would require an additional "helper" on Windows in order to obtain proper
> line-editing). Helper? readline, libedit ...
>=20
> However, I am only guessing ... (only Erik and Corinna can provide expert
> details here).

I'm not quite sure yet but apparently the problem is in the handling of
VERASE in the termios implementation.  In cooked mode it fills a char
buffer with what has been typed.  The code doesn't know if the bytes in
the buffer are UTF-8 chars or just random bytes.  So VERASE erases
exactly one byte, which means, in case of UTF-8 chars it only erases the
last byte of of a mulitbyte character.

It seems the Linux termios implementation is different in that it
still knows which bytes constitute a single keypress and thus knows
how much byte it has to erase.


Corinna

--=20
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

--qMm9M+Fa2AknHoGS
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJYkGESAAoJEPU2Bp2uRE+gEPEP/i7SuCZo4Y+zHZ1w0tlQ8ebr
EL7nFNk0Qpz4w+NEmfOIfiO81FmkA4LlRCGmnVtguEtuLDOvZLnJB9Wzrxv0eW2I
30AjfqmxSaRiPEZUpw0Nu+PD5Ay4DFhiRofClXH3LiFdk5FGmqRxIMP5qHCwXlDZ
Szp8w/8kL0qNdcHNN4TWi59R++ROVo4xVxnkC2mYasH0EapvCVCTCtJaIhcV5g2D
IILYIGo+IIwqjKc7WJlh8h60L9nXN0Z2+2m0htmNDhNqcs2MK/GfGG2shoPXNOgX
UsYd46DzuRRf8gdcKF2ak09bLWeEJVpCMxUAe8raqgUO5qBfDqO5A6nuMCIRQgqr
P6pX8Nd2pDMmLYk1ckwWR9yIQ+w4mr00109UrS8mKDBB1d9ZmsiBieI413Z3Ah7c
W1MKOuTiX4nN4IVeusCy1ltozOn+rr8AETc1RbpMXZr6arnfsC7O+CkPIONBe2hS
ZxD1OedJTW+WEWLSpzIGs3b10BxiGupWy4CJ8W0EtGMkW2SoG277s9hJyEvaWwCv
oLOe2uwk5JNurwMKOS7uSFyV+Nf1NnBoBFrF8y6nl6fH6a4SqjwEDvbIlGCBl2TO
jVxa7BpVs2OWWJRf1AtcwXI7h42mgp/YTMebqOXfkTaTm2LkTA3zHW3J8aBlJ0QS
XyLGgiexz9997nkPoMY1
=3vhp
-----END PGP SIGNATURE-----

--qMm9M+Fa2AknHoGS--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019