apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dean gaudet <dgaudet-list-new-ht...@arctic.org>
Subject Re: unicode file APIs (was: Re: canonical stuff)
Date Mon, 26 Feb 2001 01:42:19 GMT
i'm a bit of an I18N novice, but doesn't it all just magically work if you
use UTF-8 encoding everywhere?

UTF-8 deliberately avoids using \0 and / in the encodings.  plain ascii
works unmodified.  unix filesystems generally support UTF-8 directly
(because of the \0 and / avoidance).

this allows you to have a single API which understands unicode on all
platforms -- you don't need to have _u versions which take unicode

give this page a perusal:  http://www.cl.cam.ac.uk/~mgk25/unicode.html


On Sat, 24 Feb 2001, Greg Stein wrote:

> On Sat, Feb 24, 2001 at 11:31:49AM -0600, William A. Rowe, Jr. wrote:
> > From: "Greg Stein" <gstein@lyra.org>
> > Sent: Saturday, February 24, 2001 3:44 AM
> >...
> > > In a similar vein, when you added all that Unicode stuff, it just kind of
> > > dropped into the code. No big deal as it was all Win32 specific (i.e. it
> > > didn't affect my playground), but it was an awfully big change. Especially
> > > in the semantics. We still haven't refactored the API into two sets of
> > > functions (one for Unicode chars, one for 8-bit native).
> >
> > I'm absolutely positively near certain we won't.  Please let me explain.
> >
> > ... lot of stuff about why Unicode filenames are Goodness ...
> I don't disagree with wanting Unicode filenames. I completely disagree with
> APIs that change their semantics based on the platform they are compiled on.
> If I have an application that I desire to be portable, then I'm going to use
> APR to do it. In my app, I call apr_file_open(some_8bit_name). That should
> work on all platforms. With the current single API, it will break on NT when
> compiled with the Unicode stuff.
> None of the APIs change their semantics. They exist or they don't, but they
> don't change.
> The answer is to have apr_file_open_u() for opening with Unicode filenames,
> not changing the encoding of the existing apr_file_open. You completely
> break all possibility of writing portable apps when you do that. And APR is
> *about* writing portable apps.
> Cheers,
> -g
> --
> Greg Stein, http://www.lyra.org/

View raw message