Easy i18n in Angular Apps(pascalprecht.github.io)
pascalprecht.github.io
Easy i18n in Angular Apps
http://pascalprecht.github.io/angular-translate/
3 comments
Off hand I can think of a few reasons for using the mapping object as they did in angular-translate:
- It may make sense to translate the same English sentence to something slightly different in different contexts in German.
- JSLint/JSHint should be able to check for usages on an identifier like TITLE, PARAGRAPH_ABOUT_FOO, etc. easier than comparing strings (you'd have to build something custom for that).
- Brevity. If you have the same long string of text written twice it may be useful to have a shorter identifier for it.
I agree with not translating language names though, in the real world that doesn't really make sense.
- It may make sense to translate the same English sentence to something slightly different in different contexts in German.
- JSLint/JSHint should be able to check for usages on an identifier like TITLE, PARAGRAPH_ABOUT_FOO, etc. easier than comparing strings (you'd have to build something custom for that).
- Brevity. If you have the same long string of text written twice it may be useful to have a shorter identifier for it.
I agree with not translating language names though, in the real world that doesn't really make sense.
> It may make sense to translate the same English sentence to something slightly different in different contexts in German
Then obviously you add context. It all has been solved for xx years http://www.gnu.org/software/gettext/manual/html_node/Context...
> JSLint/JSHint should be able to check for usages on an identifier like TITLE, PARAGRAPH_ABOUT_FOO, etc. easier than comparing strings (you'd have to build something custom for that)
That's not difficult if you absolutely need it
> Brevity. If you have the same long string of text written twice it may be useful to have a shorter identifier for it
You don't need them twice. Add attribute telling: this text can be translated. That's all.
Then obviously you add context. It all has been solved for xx years http://www.gnu.org/software/gettext/manual/html_node/Context...
> JSLint/JSHint should be able to check for usages on an identifier like TITLE, PARAGRAPH_ABOUT_FOO, etc. easier than comparing strings (you'd have to build something custom for that)
That's not difficult if you absolutely need it
> Brevity. If you have the same long string of text written twice it may be useful to have a shorter identifier for it
You don't need them twice. Add attribute telling: this text can be translated. That's all.
In the "real world", you'll eventually run into cases where you have to translate recurring words/phrases/sentences differently due to context or language peculiarities.
angular-translate is really a pleasure to use. I used it in two separate smallish apps and wouldn't hesitate to do it again. Very compact, easy API and great docs.
translate("This is a paragraph.")
PS and in the real world, please don't translate language names with each language change