[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]![]() |
![]() |
![]() |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||||
![]() |
![]() |
![]() |
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/
![]() |
![]() |
![]() |
||||||||||||
|
||||||||||||||
![]() | ||||||||||||||
|
||||||||||||||
![]() |
![]() |
![]() |