Date: Mon, 16 Oct 1995 04:13:55 +0300 (MSK) From: =?KOI8-R?Q?=E1=CE=C4=D2=C5=CA_=FE=C5=D2=CE=CF=D7?= (aka Andrey A. Chernov, Black Mage) <ache@astral.msk.su> To: "Kaleb S. KEITHLEY" <kaleb@x.org> Cc: hackers@freefall.FreeBSD.org Subject: Re: A couple problems in FreeBSD 2.1.0-950922-SNAP Message-ID: <KkJ7RWmaE4@ache.dialup.demos.ru> In-Reply-To: <199510160100.VAA06828@exalt.x.org>; from "Kaleb S. KEITHLEY" at Sun, 15 Oct 1995 21:00:27 EST References: <199510160100.VAA06828@exalt.x.org>
next in thread | previous in thread | raw e-mail | index | archive | help
In message <199510160100.VAA06828@exalt.x.org> Kaleb S. KEITHLEY
writes:
>> Historycally ctype(>127) returns 0 in many systems that I see,
>Every day that goes by there are fewer and fewer people using those
>systems. Just because the U.S.-centric computer industry used to have
>tunnel vision when it came to i18n doesn't mean that "modern" systems
>should perpetuate the same mistakes into the future, especially when
>there's no reason not to fix it.
I agree. But disagree of your default touching. POSIX says
that "C" locale must be strict ASCII.
>> If you want 8859-1, just use proper locale.
>A nice suggestion. Too bad it doesn't work. ANSI/POSIX1 say that a
>program does the equivalent of setlocale(LC_ALL, "C") on startup. Given
>that ls, and I gather everything else, disregard my LANG, LC_ALL, and
>LC_CTYPE environment variables, I'm left wondering how it is you think
>that using the "proper locale" will help. Are you assuming that I'm
>using the undocumented hack of setting the ENABLE_STARTUP_LOCALE
>environment variable?
Yes, for FreeBSD I assume this. Some other systems, like Xenix
with international support and some Sun's locale variants
call setlocale() from crt0 without additional asking. Basically
you must cleanup your ctype-oriented program to work
with multi-byte chars before inserting setlocale() call into main().
Don't forget: ctype famaly works with multi-byte chars too.
If you simple insert setlocale in 'ls' f.e. it becomes very broken
for Japanese chars f.e. because it assumed that char type == char
everywhere. My strategy allows to 'ls' stays to ASCII when LANG
sets to Japanese. If 'ls' stays to 8859-1 as you suggest,
it overwrites chars in Japanese environment!
>> >>>fixes some bugs in mklocale's lt_LN LC_CTYPE template.
>>
>> >>BLANK fixes are incorrect, see isblank(3).
>>
>As I said, at least one system's docs claim it spec'd in ISO8859-1. I
>don't have an ISO8859-1 at hand, and I'm not even sure I have one at
>work, although I must, somewhere.
I don't need 8859-1 docs, I already have them. I need any isblank()
references. Maybe ANSI?
--
Andrey A. Chernov : And I rest so composedly, /Now, in my bed,
ache@astral.msk.su : That any beholder /Might fancy me dead -
FidoNet: 2:5020/230.3 : Might start at beholding me, /Thinking me dead.
RELCOM Team,FreeBSD Team : E.A.Poe From "For Annie" 1849
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?KkJ7RWmaE4>
