[an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive]
 
[an error occurred while processing this directive] [an error occurred while processing this directive]
Skåne Sjælland Linux User Group - http://www.sslug.dk Home   Subscribe   Mail Archive   Forum   Calendar   Search
MhonArc Date: [Date Prev] [Date Index] [Date Next]   Thread: [Date Prev] [Thread Index] [Date Next]   MhonArc
 

Re: [LOCALE] UTF-8 er noget værre slam



sslug@sslug (Jacob Sparre Andersen) writes:

> Problemer:
>
>  + ASCII er en delmængde af UTF-8 (=> at afprøvningen af programmer
> der skal forestille at håndtere UTF-8 er mangelfuld)

Omvendt betyder det at man stadig kan bruge mange programmer. Det er
trods alt bedre at kunne bruge et program med potentielle fejl i, end
ikke at kunne bruge det.

>  + UTF-8 er en variabel-længde-kodning (=> en masse kodekompleksitet
> for at holde styr på længden af strenge => flere potentielle fejl)

Det er ved gud noget sludder. Skriv en utf8_strlen (eller brug den fra
glib), så er du ikke værre stillet end med almindelige C-strenge. Ja,
man kan ikke bruge almindelig pointerberegning og skal i stedet bruge
et bibliotek, men det kunne også ses som en fordel i betragtning af
hvor dårligt standardbiblioteket i C er til at håndtere strenge.

I øvrigt er en mulighed også at bruge UTF-8 til udveksling af strenge
og så konvertere dem internt til UCS-32, hvis det virkelig er et
problem, som Keld også foreslår.

>  + UTF-8 kommer med begrebet »harmonisering« af strenge (=> programmer
> har lov til at omkode tegn til nogle der af og til ligner det)

Det må jeg indrømme jeg aldrig har hørt om, og jeg kan ikke lige finde
noget med Google. Kan du uddybe? Så vidt jeg er orienteret, er UTF-8
bare en måde at kode tegnene fra ISO-10646 på.

> 3) Lav styresystemer, protokoller og filformater så de kun arbejder
> med én tegnkodning (det er noget rod at man kan angive filtypen
> »text/<et eller andet>« uden at angive en tegnkodning - og at en
> bruger kan ændre fortolkningen af et filnavn ved at ændre en
> opsætningsvariabel).

Og det er netop her UTF-8 kommer ind. Ved at anbefale folk at hænge
fast i ISO-8859-* modarbejder du den idé.

Bagudkompatibiliteten i UTF-8 med ASCII er aldeles genial. I den
perfekte verden kunne det være lige meget, men i den virkelige er det
nok til at gøre UTF-8 til den bedste løsning. Hvorfor tror du egentlig
at GTK+ med flere netop har _valgt_ UTF-8? Fordi de er dumme?

Der er en diskussion af kodningen her:

  http://en.wikipedia.org/wiki/UTF-8

-- 
Ole Laursen
http://www.cs.aau.dk/~olau/


 
Home   Subscribe   Mail Archive   Index   Calendar   Search

 
 
Questions about the web-pages to <www_admin>. Last modified 2005-08-10, 20:55 CEST [an error occurred while processing this directive]
This page is maintained by [an error occurred while processing this directive]MHonArc [an error occurred while processing this directive] # [an error occurred while processing this directive] *