From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 114785 invoked by alias); 14 Feb 2017 08:45:46 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 114748 invoked by uid 89); 14 Feb 2017 08:45:45 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-101.6 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=H*i:sk:09c7b42, H*f:sk:09c7b42, H*MI:sk:09c7b42 X-HELO: drew.franken.de Received: from mail-n.franken.de (HELO drew.franken.de) (193.175.24.27) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 14 Feb 2017 08:45:42 +0000 Received: from aqua.hirmke.de (aquarius.franken.de [193.175.24.89]) (Authenticated sender: aquarius) by mail-n.franken.de (Postfix) with ESMTPSA id AA3A7721E280D for ; Tue, 14 Feb 2017 09:45:38 +0100 (CET) Received: from calimero.vinschen.de (calimero.vinschen.de [192.168.129.6]) by aqua.hirmke.de (Postfix) with ESMTP id 0A90A5E04E6 for ; Tue, 14 Feb 2017 09:45:38 +0100 (CET) Received: by calimero.vinschen.de (Postfix, from userid 500) id DFEDFA80CCE; Tue, 14 Feb 2017 09:45:37 +0100 (CET) Date: Tue, 14 Feb 2017 08:45:00 -0000 From: Corinna Vinschen To: cygwin@cygwin.com Subject: Re: [ANNOUNCEMENT] Updated: dash-0.5.8-3 Message-ID: <20170214084537.GD25846@calimero.vinschen.de> Reply-To: cygwin@cygwin.com Mail-Followup-To: cygwin@cygwin.com References: <58893f48.0850ca0a.6c5d.5fde@mx.google.com> <81b5af354b7a3925ff0a68dcc063265f@smtp-cloud6.xs4all.net> <20170131100402.GB29504@calimero.vinschen.de> <20170131131616.GC29504@calimero.vinschen.de> <40c92f1e987a9162742766816abb4a03@smtp-cloud2.xs4all.net> <20170131153245.GA8905@calimero.vinschen.de> <09c7b42a-7b8d-52b7-ce18-4e681eb51f05@towo.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="R3G7APHDIzY6R/pk" Content-Disposition: inline In-Reply-To: <09c7b42a-7b8d-52b7-ce18-4e681eb51f05@towo.net> User-Agent: Mutt/1.7.1 (2016-10-04) X-SW-Source: 2017-02/txt/msg00184.txt.bz2 --R3G7APHDIzY6R/pk Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-length: 2585 On Feb 13 23:03, Thomas Wolff wrote: > Am 31.01.2017 um 16:32 schrieb Corinna Vinschen: > > On Jan 31 16:01, Houder wrote: > > > On Tue, 31 Jan 2017 14:16:16, Corinna Vinschen wrote: > > > [snip] > > > > Ok, here's what happens on Linux: The termios code support a flag > > > > IUTF8. This flag determines if the termios code checks for UTF8 > > > > characters in the input when performing an ERASE. It checks if the > > > > IUTF8 flag is set and if so, it checks in a loop if the just erased= byte > > > > is a UTF-8 continuation character. If so, it erases another byte. > > > Agreed. One byte or more, depending on the "character" ... (which is > > > not a problem in case of UTF-8 encoding -- continuation bit). > > >=20 > > > Of course, the terminal driver must receive the characters encoded in= UTF-8. > > >=20 > > > ... > > ... It's the termios implementation > > inside Cygwin. I created a patch introducing the IUTF8 flag as on Linux > > as well as a code snippet trying to remove entire utf-8 characters from > > the input if the IUTF8 flag is set. And it's set now by default since > > we default to UTF-8 anyway. > >=20 > > Thomas, you may want to check for the IUTF8 flag in upcoming mintty > > versions and unset it if character set configured in the mintty options > > dialog is !=3D UTF-8. > So the flag is always set initially? Also on Linux? Does it (on Linux) al= so > have an effect for non-UTF-8 multibyte encodings? Yes, yes, and yes. > And cannot the Cygwin DLL set the flag to match the locale setting when it > was invoked? >=20 > I can (and will if appropriate) handle the flag in mintty as needed, but > what if someone calls LC_ALL=3D.other_encoding dash later within the term= inal > session? I guess the more consistent solution would be to handle this in = the No. We're talking about a function in the master side of the tty, while the applications started in the terminal are on the slave side. iutf8 is set in Linux by default and by most terminal applications ionly reset if the LC_CTYPE setting in the environment of the terminal application is not set to the utf8 codeset. This is determined at terminal startup, not by the inferior processes runnin in the terminal. The applications still can set iutf8 via termios control (or stty(1)). For mintty I just thought it might be helpful to honor the character set setting in its options and to default to iutf8 if it's not set. Corinna --=20 Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat --R3G7APHDIzY6R/pk Content-Type: application/pgp-signature; name="signature.asc" Content-length: 819 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJYosOxAAoJEPU2Bp2uRE+gWrkP/jeI3oVVq2Az7vb7Db6NG4lp zwjH6AEIMWkGwDaDzjAP9kyZB56NpFd9WT8b3umkdDeh3rPCGgOulwhC9hhmmu9i dd8jI3Mt3dFymLR4WjKtLQPMVcWwtjTIZZw8/jTJ1Le+YCyqRu7VHwarSwZn3y0L HtvNpUO2dDHFPd7RY33HDPPdQgC+i8lXGZ1VcoMpsQI67np6p8xz5tYwm9TU3GVd EkC9xf/+tNw4mt7bQRIA/tfg0E8pn3c/jlMXzUfiYpuxdVz0fjve69Lq6DQ4qYLg zlAtxUAF2ZHrgM8jLUyrxVKvdgB83NILBE4A3TG/wXQbKwi8gzzZMviPUJV7CBGm LXI6Gv0/eTPQznfGfysTKCQMc+cx1Sw8YnRpWcuo4b02FWiM67asgMcqF6tkYAV2 /6dIsVoT3w0kK97BqizhI9Sy3UvB83mvfVrz9DBpTVm5wDdwXX2WHkejxTFYnQKe G1zkSK3AArygTjfOoY/+iUIrcJ3jt1SFkBJ0dErj7lYUxI9Px8HpTV7mHo83ejNo uVh1OPW+Xz17riOF6TEuffFSDowJO3QA4ek1WgiHaizEpA5WPJwJrY4RSNyIbYk4 bQx1LszdLmgCCwQ5wSfCfZGAwrY6Yqt8Pq8HncdtkquwbQiRxNjzb7xjmfX2MWPJ KDZrPiHEHanqOcsxHZqs =rJMI -----END PGP SIGNATURE----- --R3G7APHDIzY6R/pk--