X-Recipient: archive-cygwin@delorie.com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8ACC63858000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
	s=default; t=1679779222;
	bh=fOKQAaxUbqiMAfbZ6CbXVik75MgIQXZGp9YgAaOghaM=;
	h=Date:To:Subject:References:In-Reply-To:List-Id:List-Unsubscribe:
	 List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:
	 From;
	b=w/aTYjbpp3wF+ovAl1HEyPjM7vm/1NAr5e7WDFw4oL+ewXyIoG0eqK5+0gNaf8pl9
	 /LGvrY8pwQMuco+fiXydfyJbBWV4YIrw7E5b5ehTiOd0E3PXJu1Ik/TRgVjAmd9dXf
	 9S0IXqNits0x5MtIQ3rhhdg6+0nt8xfvI43nMROA=
X-Original-To: cygwin@cygwin.com
Delivered-To: cygwin@cygwin.com
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E009E385843A
Date: Sat, 25 Mar 2023 22:19:47 +0100
To: cygwin@cygwin.com
Subject: Re: newlocale: Linux incompatibility
Message-ID: <ZB9lc15u3h6m3yxP@calimero.vinschen.de>
Mail-Followup-To: cygwin@cygwin.com
References: <bd7ebebc-cf90-d509-ef15-11d702a6126c@cornell.edu>
 <ZBzBL2jFO7Oltjd1@calimero.vinschen.de>
 <ZB2U/JCFrwSUo1+U@calimero.vinschen.de>
 <bb1eed09-54c2-08a1-7eb9-40e39c7657d9@Shaw.ca>
 <ZB7fsuNoUY9miWr+@calimero.vinschen.de>
 <8f2b7a49-2878-8481-233c-146fdb9a0e69@Shaw.ca>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <8f2b7a49-2878-8481-233c-146fdb9a0e69@Shaw.ca>
X-Provags-ID: V03:K1:jV0vUfoZg7SZxIwutbkeBNBg9vxz8Y8OQiLQE4ch3M2p9LYUj1u
 wObNc13LcncNBG7bnQAGaaWvhQ9ckfKrGoPP+HkfepkD9WjWgCAgIVNqHKLgS6beeIz3Ldf
 hYe28pQHMYiCwX5HDyarRpnvQd4/N2vUV4uXrAgBvwnTbHfkMMCBAXANmtZ6pu6A8ZKmWRn
 IRDh7rnuruBMs8rUSetbQ==
UI-OutboundReport: notjunk:1;M01:P0:fyGUOtBLjf4=;PeIWUj/6P1oQdyP1sBlSytwl+Ws
 /J7G7ivOWalOLjHnd0rIyTNAehNtJkvcIF/Ds4vLFuYE6jSY+dBJXC2rqsEJlFcVoqTu3CHI+
 6jSSttFeal+kGo45H6Gr1NfTljCLmcBbO3ie+fhvueZVSZrXsuc//zDwX35RRfllfUQUQi6oI
 bHlVn9JSMJQubI6BU02sfhSyxzYkborzNnyk8COHMgngqKvg44ZjoQ0yEXew1uTJif6EExlXy
 kji7QSX+ycKWxq9xEfv4Vg27Vp3tr1l4FBKRwg3EZwOsOredVsfI6bkLAD9wOkefEIBtbBeqQ
 uq4W2/ekPA7HYGFXfVsihyDnDASSa2SS1XvPxMnY3cU+5A+5dsUxVFgcMRJ5NdzJ+Gh2YOKPS
 C50E7BejmlFoeRuaQsw2U97AKlQvOlFQcAoRUWZXzubalWOn8Dk4R1qD1kJ69CNoCX4P+EvQj
 D3JeyiojU0znKKaHc9b89uXh9pefsNqqOuyaf1DPcEdkFHsc8XOBcJTfPbQtFevsMP3xW5dGB
 jxw38YEJgDT1XI7LzIQGf50R9KUheNUJVSlH36bHAKw+PqWBceRNy4ao0/SpBbVkEVpDO6dT3
 jV1FWQfAn2znZWzg/O+0vVH4FJRJ9KIhb/Z/WPGLFt5WZKOrUwx7MTbWWn5SLImmKKvpFv5kt
 rsOXBA/SO6p9NGAhmS5rYUcKFdfofkQTV2e3+mpMeg==
X-Spam-Status: No, score=-97.7 required=5.0 tests=BAYES_00,
 GOOD_FROM_CORINNA_CYGWIN, KAM_DMARC_NONE, KAM_DMARC_STATUS, KAM_SHORT,
 RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_FAIL, SPF_HELO_NONE,
 TXREP autolearn=ham autolearn_force=no version=3.4.6
X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on
 server2.sourceware.org
X-BeenThere: cygwin@cygwin.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Unsubscribe: <https://cygwin.com/mailman/options/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=unsubscribe>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-request@cygwin.com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=subscribe>
From: Corinna Vinschen via Cygwin <cygwin@cygwin.com>
Reply-To: cygwin@cygwin.com
Cc: Corinna Vinschen <corinna-cygwin@cygwin.com>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: cygwin-bounces+archive-cygwin=delorie.com@cygwin.com
Sender: "Cygwin" <cygwin-bounces+archive-cygwin=delorie.com@cygwin.com>

On Mar 25 13:03, Brian Inglis via Cygwin wrote:
> On 2023-03-25 05:49, Corinna Vinschen via Cygwin wrote:
> > On Mar 24 16:49, Brian Inglis via Cygwin wrote:
> > I never heard about an environment variable called LANGUAGE.  This is
> > about LANG/LC_ALL/LC_whatever, so POSIX syntax is required...
> 
> Used by gettext:
> 
> https://www.gnu.org/software/gettext/manual/html_node/The-LANGUAGE-variable.html

Ok, I'm not using that because I didn't even know that.  But I'm not
sure why you even mention it, it has nothing to do with Cygwin's
locale implementation which is based on the POSIX definitions.
Exception here is where the data comes from since we don't maintain
locale definition files and thus we don't follow
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap07.html
to the letter.

> > > Aha - a nice new 3.5.0 feature - as well as /proc/codesets - is that
> > > charsets e.g. ISO-10646, etc. rather than encodings e.g. UTF-8, etc.!
> 
> > It's a list of what you can use as codeset in $LANG and friends as in
> >    LC_CTYPE=lang_TERRITORY.codeset@modifier
> 
> You are using codeset to mean encoding, whereas in Unicode and W3 it usually
> means coded character set/charset; it can also mean charmap; see iconv(1):

I'm using the POSIX definition here.  Codeset is codeset, as in
https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap08.html

Quote:

  If the locale value has the form:

  language[_territory][.codeset]

  it refers to an implementation-provided locale, where settings of
  language, territory, and codeset are implementation-defined.

So I'm using the name "codesets" to follow POSIX documentation for
setting the matching locale environment variables, exactly to avoid
confusion.


Corinna

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple
