Tro denna fråga hör hemma i det här forumet och inte i Mac-forumet. Men om nån moderator anser annorlunda, så flytta tråden bara.
Jo, när jag kör Safari 2.0.4 på Mac (dvs den senaset versionen) och har webbläsaren default encoding på utf8 så blir det konstigt nog skit av å, ä och ö trots att dessa bokstäver är skrivna just så i källkoden, dvs INTE å osv.
Men om jag ställer in på Western Latin i webbläsaren, så blir det rätt.
(Nu när jag kollade så råkade det vara på tv.u som naturligtvis inte ens har ett charset definerat, men det ska väl egentligen inte spela nån roll).
Borde det inte bli rätt oavsett om jag kör med utf8 eller "western" i webbläsarens preferences?
Alla tecken är uppradade i en fet tabell. Och utf-8 och t.ex. Western Latins tabeller har inte tecknena på samma plats. A-z är samma, men sen kommer specialtecknena, och å, ä, ö har inte samma placering i de båda tabellerna.
(Nu när jag kollade så råkade det vara på tv.u som naturligtvis inte ens har ett charset definerat, men det ska väl egentligen inte spela nån roll).
Det spelar all roll.
Danne V skrev:
Borde det inte bli rätt oavsett om jag kör med utf8 eller "western" i webbläsarens preferences?
Nej.
Självfallet så blir det "fel" om du ställer in webbläsaren att defaulta till utf-8 för sidor som inte är enkodade i utf-8 och inte anger någon enkodningsinformation. Och vice versa.
Alla tecken är uppradade i en fet tabell. Och utf-8 och t.ex. Western Latins tabeller har inte tecknena på samma plats. A-z är samma, men sen kommer specialtecknena, och å, ä, ö har inte samma placering i de båda tabellerna.
Självfallet så blir det "fel" om du ställer in webbläsaren att defaulta till utf-8 för sidor som inte är enkodade i utf-8 och inte anger någon enkodningsinformation. Och vice versa.
Hmm... det är just det som jag tycker borde vara tvärtom med. Om man har charset som utf8 på sidan så visas ju tecknen rätt även om man skrivit "ä" och inte ä i koden.
Om INGEN charset finns definerad på sidan, och jag ställer in webbläsaren på utf8, så borde ju tecknet visas korrekt då också.
Och om jag inte minnns fel, så har "Western" (dvs ISO-8859-1) några å, ä eller ö alls, utan man måste ha ä osv. Hur kan då ett "ä" i källkoden bli rätt när jag väljer "Westren" i webbläsaren...?
(Fan, det här är väl en sån där idiotgrej som man bara inte fattar. Som en del som inte hajar det där med sommartid eller att man förlorar tid när man reser österut...)
Servern skickar en ström med bytes över linan. Hur denna ström av bytes ska konverteras till tecken beror på vilken teckenenkodning som har deklarerats. Om ingen teckenenkodning har deklarerats så används webbläsarens default.
Om strömmen av bytes konverteras till rätt tecken när de dekodas som windows-1252 så måste de bli fel när de dekodas som utf-8 för bytes som är över 0x7F, då windows-1252 och utf-8 bara är lika för bytes under 0x7F.
Tex: tecknet å representeras i windows-1252 som 0xE5, och i utf-8 som 0xC3 0xA5. Om du kodar tecknet å som windows-1252 och försöker dekoda 0xE5 som utf-8 kommer du inte tillbaka till tecknet "å", utan det tolkas som en ogiltig byte sekvens och du får �.
Servern skickar en ström med bytes över linan. Hur denna ström av bytes ska konverteras till tecken beror på vilken teckenenkodning som har deklarerats. Om ingen teckenenkodning har deklarerats så används webbläsarens default.
Om strömmen av bytes konverteras till rätt tecken när de dekodas som windows-1252 så måste de bli fel när de dekodas som utf-8 för bytes som är över 0x7F, då windows-1252 och utf-8 bara är lika för bytes under 0x7F.
Tex: tecknet å representeras i windows-1252 som 0xE5, och i utf-8 som 0xC3 0xA5. Om du kodar tecknet å som windows-1252 och försöker dekoda 0xE5 som utf-8 kommer du inte tillbaka till tecknet "å", utan det tolkas som en ogiltig byte sekvens och du får ?.
Väldigt förenklat. :)
Tro det eller inte, men jag fattade faktiskt det där.
Tack!