Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Oct 1995 20:06:14 EST
From:      "Kaleb S. KEITHLEY" <kaleb@x.org>
To:        ache@astral.msk.su
Cc:        hackers@freefall.FreeBSD.org
Subject:   Re: A couple problems in FreeBSD 2.1.0-950922-SNAP 
Message-ID:  <199510170006.UAA25504@exalt.x.org>
In-Reply-To: Your message of Tue, 17 Oct 1995 02:23:38 EST. <YlwbkWmKE0@ache.dialup.demos.ru> 

next in thread | previous in thread | raw e-mail | index | archive | help

>It means that
>1) all is*() macros must be correct for russian charset (LC_CTYPE).
>2) strftime must return national data (LC_TIME).
>3) National sorting must works (LC_COLLATE).

A properly localized program will do all these things.

>Now all that goals are reached by 'setenv ENABLE_STARTUP_LOCALE'
>and without any program modifications. 

EXCEPT THAT VIOLATES ANSI/POSIX/ISO C, which stipulates that on the
entry to main() the program must be in the C locale. People who use
this hack on correctly written programs find that it breaks their
programs in not very subtle ways, as you've already found with the
i18n-aware xterm that XFree86 distributes.

>It is especially essential when
>program isn't FreeBSD native but comes from 3rd party, i.e.
>ports area. Moreover, they can be reached on any remote system
>too, includes freefall f.e.

Then perhaps the process of putting something into ports should include
minimally localizing the program to set the locale to whatever the
user has set in his or her LC_ALL, LC_CTYPE, or LANG environment variable.
Any well written program would have done that anyway. If you use an X
toolkit (Xt with a widget set) then Xt will do it for you. Just because 
some people write broken programs is no reason to impose such a hack on 
those who write correct programs.

>The same words are true for 8859-1 users too, not only for KOI8-R
>users.

>Maybe this functionality isn't kosher but you even can't imagine how
>it is useful.

Let me get this straight. You're willing to compromise ANSI/POSIX/ISO
compliance because the functionality is useful. I'm not even asking to
compromise compliance and still get some useful behavior, and your
response is to make up completely bogus arguments like ANSI requires
the C locale to be strictly ASCII, no more, no less. I wonder if NetBSD
is this broken? I'm starting to think it might be time to switch camps.

>If you know "proper way" to do things and keeps this goals non-broken too,
>I am all ears.

Both Terry and I have explained why it's okay to populate the default
chartype table differently than it is now -- Terry is a very eloquent
writer, I think he did a better job than I did -- listen to Terry.

--

Kaleb



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199510170006.UAA25504>