6 ms·
Îñţérñåţîöñåļîžåţîöñ
- DiabloD3 15y agoNothing like early morning Unicode abuse. ;)
- st3fan 15y agoGood to see that Hacker News deals correctly with those beautiful glyphs :-)
- thurn 15y agoI assume Arc Lisp is no longer ASCII-only? I seem to remember that being a complaint when it came out.
- Typhon 15y agoActually, Arc Lisp now allows for any kind of unicode madness. Øþ@ßðđŋħjłĸŝ¢łµæ¶ŧ←↓→ΩŁ§ÐªŊĦJ See : http://news.ycombinator.com/item?id=111100 http://news.ycombinator.com/item?id=111100
- Dylan16807 15y agoIt's pretty hard to screw up copying a string from one place to another without modification, at least when it comes to encodings without null bytes. Some programs manage it somehow, though.
- st3fan 15y agoYou will be surprised actually how many web apps get this wrong.
- _delirium 15y ago> We can’t recommend this enough: reuse the same template for all language versions This can get quite tricky, because languages don't easily map onto 1-to-1 items that can be just translated independently and stuck into a template. See the classic "localization horror story": http://interglacial.com/tpj/13/ http://interglacial.com/tpj/13/ (and HN discussion: http://news.ycombinator.com/item?id=2095334 http://news.ycombinator.com/item?id=2095334)
- pornel 15y agoIt's not a problem of HTML, but the method you use to construct translation string key names. If you have `<button>file</button>` and use it in both "[file] a complaint" and "save to a [file]", then you're in trouble indeed. But you can fix that by adding context to translation keys in the template, e.g. in TAL you can do `<button i18n:translate="'file (verb)'">file</button>`.
- _delirium 15y agoIt's not just an issue of polysemy (that "file" means two different things in English), but that the structure itself may need to be different in different languages, because languages have different grammars, and different ways of dealing with objects/numbers/etc. In the example I linked above, there's a whole mess of rules to capture if you want to handle singular/plural correctly in different languages, including those that distinguish more cases than singular and plural. It boils down to the fact that word-for-word translation doesn't work in all but the simplest cases: you can't translate "[a] [b] [c] [d]" by having 4 lookup tables for [a], [b], [c], and [d] and then plugging them into a template independently.
- lelf 15y agoGettext now offers quite the same solution http://www.gnu.org/software/gettext/manual/gettext.html#Contexts http://www.gnu.org/software/gettext/manual/gettext.html#Cont...
- jontsai 15y agoOh yes, this is tremendously fun! I worked on i18n/g11n/l10n for Y! World Cup and other games Compare: http://us.wc.fantasysports.yahoo.com/ http://us.wc.fantasysports.yahoo.com/ http://hk.wc.fantasysports.yahoo.com/ http://hk.wc.fantasysports.yahoo.com/ http://tw.wc.fantasysports.yahoo.com/ http://tw.wc.fantasysports.yahoo.com/ It's a tremendous amount of work, and you have to identify translatable phrases AND contexts, not just strings and words. Websites that plan on catering to multiple languages and regions should incorporate i18n from the beginning, not an afterthought, which would require going through lots of code with a fine-toothed comb =)
- peng 15y agoIf i18n is a priority on your project, make sure you show your designer(s) this article. With the current trending emphasis on grids and horizontal rhythm, left-aligned labels are quite fashionable. An effective bandaid solution is to set left-align labels to text-align: right; thereby visually linking the variable width label to the field.
- pud 15y agoGood article. Now can anyone recommend a service for replacing the copy in a site with copy in different languages, so I can use my same templates? Like Google Website Optimizer, but replaces strings with the appropriate language.. ?
- tjoff 15y agoAn extremely important point that most native english speakers just doesn't seem to get: Don't force a localized version to your users. In many countries your users are probably going to prefer english than a translated version for many reasons, and that's even before taking into account that you probably can't translate it well anyway (even with a lot of resources and effort) which makes it even worse. Always make it ridiculously easy to switch to english, always. In many cases you probably should make english the default even though you have a localized version (this is especially true for web sites, few things are as annoying as having to change language again and again and again and on every device, browser etc. (example: youtube has this annoying message telling me that a localized version is available that forces a page reload to dismiss (and thus you have to reload and restart the video, true story))). This of course depends heavily on your target audience and their culture but just don't assume a translated page/app is a favor, you just might end up with some confusion and a group of really outraged users (boy do I loathe applications that assume I want a translated version - always give me the option to change it to english during the installation). Direct machine translations might be better than nothing for some cultures but for some it's a slap to the face and will just make your company look pathetic. Example: Adobe.
- zokier 15y agoI'm non-native English speaker and all my software is in English. Still I understand why developers/publishers want to default to my local language. It all depends on your target demographic. If you are targeting young, geeky people then it's OK to have English around. But if you are targeting every joe sixpack and grandma, then it's probably smarter to present localized versions. Optimum of course would be to query the underlying platform for locale information. That way everybody gets what they want almost always. And while we are talking about localization, I need to point out that localization is much more than just translating the UI texts. It also includes stuff like date and number formats, correct units, and lots of other stuff. I'd even argue that those are more important than translations.
- Snoddas 15y ago"Optimum of course would be to query the underlying platform for locale information. " - This isn't true. Most people are not in control of that. For many many years I had to work on Swedish version of windows, because that is what the company paid for. But that doesn't mean I want my CD-burner application or whatever to talk to me in "bad" Swedish. Never mind trying to Google localized error messages, that's a another pain I'd rather be without.
- Mafana0 15y agoI'm a web developer with experience of technical editing, a native speaker of Arabic, have translated many popular Firefox extensions to Arabic, and worked in "Google in your language" project, since I speak English and German fluently. I'm willing to help any HN member who wants to localize his startup/website to a RTL language, for free. If you contact me, I will gladly review the Arabic localization and RTL design and help you with the globalization in general in my spare time. As a thank you for the community I'm a big fan of.
- hopeless 15y agoWe're currently going through our internationalisation test phase for a major release and it's been a huge headache. My one piece of generalised advice: DO NOT leave internationalisation testing to the end of the release. Make sure you're pumping Unicode strings through your app in unit tests. Make sure you're regularly viewing your app in other languages using mock strings if you haven't got the translations. The earlier you can find these defects, the easier it is to fix. There's a perception that internationalisation defects are easy fixes, just updating a messages file. The truth is that major parts of your app may not work unless you regularly test it. And don't rely on the Unicode abilities of your chosen framework, language or operating system. If you haven't tested it, it doesn't work
- cfq 15y agoHere's a real life scenario: 1) Develop a project in a rush 2) Becomes successful 3) Boss/Client decides to launch it in 2/5/10/22/34/82 countries 4) Project becomes one big hack One simple Unicode test and 10 minutes of initial thinking would've saved all this trouble.
- itsadok 15y agoI'd be interested in knowing what made them write that IntelliJ IDEA provides "decent solutions for bidirectional editing", considering that JetBrains' Dmitry Jemerov has specifically said that they don't see the business case in supporting RTL editing: http://youtrack.jetbrains.net/issue/IDEABKL-5572 http://youtrack.jetbrains.net/issue/IDEABKL-5572
- onetime123 15y agoI just want to point out that the title uses a letter which doesn't exist in any language: t with a cedilla. It's a Unicode fuck up which plagues the romanian language to this day. Not just on computer systems, in real life too!