Het europrobleem

Inleiding

Usenet is 'gemaakt' op zeven-bit-karakters. De ASCII-set, of us-ascii. Grof samengevat zijn dat de karakters a-z, A-Z, de cijfers 0-9, en de leestekens die in het Engels (of Nederlands) voorkomen. Noteer: de Euro zit hier niet tussen... Dat geeft in totaal een 95 tekens die je gegarandeerd kan gebruiken op usenet: iedere server of client kan ermee overweg.

Encoding

Om toe te staan dat je toch speciale karakters gaat gebruiken, kan je gebruik maken van een 'encoding'. Die gaat jouw speciaal teken omzetten, en hangt er een labeltje aan hoe de ontvanger weer kan terugzetten. Zo'n labeltje (utf-8, iso-8859-1, iso-8859-15, Windows) bepaalt de weergave van een byte ( de byte '1111 1111' is het eurosymbool in iso-8859-15, maar in de koreaanse encoding is het dat niet) Het principe is dus heel duidelijk: gooi alles in je bericht; hang er een inhoudsbeschrijving bij, en verzend.

De realiteit wijkt af van het principe - en dat op verschillende vlakken.

  1. Het ontvangende systeem (het OS van de lezer) kent niet alle encodings. Windows 95 kent standaard enkel de windows-encoding (met nog een taalvariant). Je bericht komt dan wel aan als (bv) utf-8, maar kan niet omgezet worden.
  2. Het programma (de nieuwslezer, de maillezer) kan niet om met een bepaalde encoding. Xnews kent alleen maar de Windows-encoding; die kan op mijn NT dan ook niet veel doen met utf-8 (ook al kan NT er wel standaard mee om)
  3. Het lettertype dat ik gebruik om een bericht te lezen bevat een bepaald symbool niet. Dan kunnen OS en client wel willen weergeven, maar toch zie ik niets (op een vierkantje na)

In de toekomst zullen alle clients (en besturingssystemen) wel utf-8 kunnen gebruiken. Dat is toekomst - en in Usenet-termen wil dat al gauw zeggen dat je na het invoeren van de norm nog een jaar of 6 moet wachten. In afwachting daarvan (nog 3-4 jaar) moet je je eigenlijk aan de meest conservatieve instelling houden. Dat is dus de us-ascii set (zie hoger) of iso-8859-1 (die een kleine uitbreiding is). In geen van die encodings zit het euro-teken, dus moet je die vervangen door een (gegarandeerd) leesbare oplossing. EUR is het beste alternatief.

Wat zijn de gevolgen van een foute encoding?

Je bericht (of delen ervan) zijn niet leesbaar voor de ontvanger. Dat niet leesbare kan zijn dat een teken niet, of anders, wordt weergegeven; maar evengoed dat de encoding niet omgezet wordt: dan krijg je iets als =?iso-8859-15?B?RmxleK4=?= voor jouw nick. Dat is niet wat je wil, dus hou je het - imho - beter op us-ascii (en dring ondertussen maar aan op een betere ondersteuning van encodings bij de maker van je lezer. Er zijn nogal wat Amerikanen die het probleem niet begrijpen - omdat zij wel alles kunnen typen en lezen.)

 
Copyright © Briachons 2003-2014
contacteer ons - valid HTML - valid CSS