skip kirjoitti:Ja sitten vielä irrallinen "kysymys": Miksi ihmeessä OS X tekee näin?
No jutun juuri on siinä että (koitan selittää perin pohjin, mutta lyhyesti, joten oion asioita "ihmiskielelle") tietokoneet ymmärtää vain ja ainoastaan numeroita. Ihmisille tarvitaan kirjaimia. Täten on insinöörit aikoinaan sopineet että tietty numero muistissa vastaa tiettyä kirjainta. Aluksi kirjaimia oli vain 128 erilaista (7 bit ASCII) mutta kun alettiin tarvita erikoisempia merkkejä, esim. skandit jne. siirryttiin 8 bittisiin ASCII koodistoihin joissa on mahdollista käyttää jo 256 eri kirjainta. Tuohon aikaan muisti oli hirvittävän kallista ja tällä oli oikeasti merkitystä (yli 10% ero) . Tässä vaiheessa alkoi tietokoneet yleistyä ja tuo 8 bittinen koodaus ei riittänyt kaikkien eri maiden erikoismerkkien tarpeisiin. Syntyi monia erilaisia merkistökoodauksia joissa sitten samat numerot tietokoneen muistissa merkitsee erilaista kirjainta ruudulla.
Microsoft kehitti sitten oman merkistökoodauksensa
Windows-1251 mikä on hyvin pitkälti (kai) samanlainen millä esimerkiksi nettisivuja koodataan tai koodattiin usein eli
iso-8859-1 joka sitten vahingossa toimii aikalailla kivasti ilman oikeaa osaamista mm. Windowsin Notepad-ohjelmassa (en tiedä onko siinä nykyään tuki useammille merkistökoodauksille). Parhaana ja moderneinpana merkistökoodauksena on nykyään käytössä UTF eli tai
utf-8, joka on sillä lailla suunniteltu että sillä voi näyttää vaikka kiinankielisiä kuvamerkkejä samaan aikaan länsimaisen tekstin kanssa. Eli jos näet jotain hepreaa tai kiinaa tai venäjänkielistä tekstiä, niin melkein nykyään uskaltaa sanoa että on käytetty UTF-koodausta, siinä on kai miljoonia tai kymmeniätuhansia tai jotain mahdollista erilaista kirjainta käyttää.
Fitsi on siinä, että Mac käyttää oletuksena tuota parasta UTF-koodausta. Kun teksti on jossain "formaatissa", eli .rtf, .doc, .docx, .xml, tai jopa nettisivu .html siinä tekstitiedostossa kulkee mukana tieto siitä mitä koodausta tekstissä on käytetty ja dokumentin avaava ohjelma osaa näyttää tiedoston sisältämät numerot oikeanlaisina kirjaimina. "ASCII-tiedosto" joka on "pelkkää tekstiä" ei sisällä tietoa käytetystä merkistökoodauksesta. Tällöin tiedostoa avaava ohjelma "arvaa" että se on sama kuin järjestelmään määritelty oletus, joka on Macissä UTF ja Windowsissa Windows-1251. Eli kun tiedosto on tehty Windosissa (Notepadillä) se tulkitaan OS X:ssä väärin. Macissäkin ohjelman asetuksissa (TextEdit eli Texturi) oletusmerkistön saa muutettua, esim "Western Windows-Latin1" on se mikä toimii... Näillä on joskus erilaisia nimiä... UTF tarkoittaa siis Unicode-merkistöä.