|
I previously wrote about this in http://radio.weblogs.com/0102747/2002/02/14.html#a9.
Well, after all of the problems I've had, I'd never have guessed that posting non-ISO characters to a PC web server would work.
I just discovered, by accident, that I can type curly quotes and m-dashes right in the Edit this Page field, and post them correctly to a Manila server running on Windows. I confirmed this on my ancient weblog at http://zajac.editthispage.com.
It all now makes sense. I'm convinced that the problem is that string.latinToMac works right! All Mac web browsers (except Mozilla) seem to send these characters encoded using the Windows CP-1252 extensions to ISO-8859-1, but string.latinToMac doesn't know about the extensions, and scrambles these characters.
Since this range of characters is not used for anything else in ISO-8859-1, this could be fixed by changing string.latinToMac (which is a kernel verb). Then Mac Manila servers would behave the same way as PC servers. Actually, it will behave slightly better, since it will send correct Latin entities for most characters instead of CP-1252 characters, thanks to html.data.iso8859.mac.
Output to HTML is better on Mac servers
If these characters are entered correctly in the database of a Mac server—by editing in the root directly, or posting through a Mac copy of Radio—then the mac-iso filter correctly converts them to Latin character entities, according to the table at html.data.iso8859.mac.
PC servers support these characters natively, and echo them back to the web page. They display correctly on most web browsers, even though they are not using the HTML standard. This could easily be fixed by adding the 128-159 range to html.data.iso8859.win.
The table at html.data.iso8859.mac does have a couple of bugs, however. The ellipsis (…), n-dash (–) and solidus (fraction slash: ⁄) get replaced by three periods(...), a hyphen (-) and a regular slash (/), respectively. If someone goes to the trouble of typing these, why not replace them with the correct Latin entity?
5:57:33 PM
|