Hello I18n development team,
I am using the latest version of I18n for Drupal 6.6 and got an issue to translate terms/descriptions for taxonomy module. The issue is a problem when I change the default language to Vietnamese language instead of English. If my default language is set to English and the language to translate into is correct as the Vietnamese. But when I change the Vietnamese as the default language, the translation language is English but actually I want to translate into Vietnamese that term. It seems that the system doesn't understand the issue. I would like to have this feature independently, not rely on the default language. Can you help me solve on this? Thanks for a great module and highly appreciate your contribution.
If you want to check, our website is at www.saomaicenter.org
DHP
Comments
Comment #1
burlap commentedI have the same issue, but the problem is with all strings - if I set a language different than English as default, all new strings (Views, Content types,
Taxonomy) are English anyway.For taxonomy this is even worse, as I can set vocabulary language when a vocabulary is first created, but this setting is somehow ignored.Edit: OK, I got confused a bit, but still there are some issues, when default language is not English.
So far (for me) it looks like this:
Default language set to Polish, other languages: English, French. The site is not live yet.
pl). If I edit the string, languages are labeled correctly (source is Polish, missing translations are French and English). This is confusing, but I can live with it.Comment #2
mediameriquat commentedI have a 4-language D6 website with French as default.
I chose the "Localize terms" method (rather than the D5ish "per language terms" method )
If I create a term in FR, for instance, the problem is that the EN textarea doesn't appear in the translation interface (althougn the ES and PT textareas do).
That situation will force website editors (who don't necessarily speak English) to enter all terms in English first, if they want them to be translated in other languages afterwards.
Comment #3
catchI tested this and can confirm there's a bug. The same bug appears with menu items as well.
Site has English, French and Spanish - set French to the default.
Create a vocabulary, set to 'localize'.
Create some terms, then go to translate interface.
fr and es are both shown as translation options with fr strikethroughed, English isn't shown. However when you click on edit language, you get English and Spanish as options.
Do the same with a menu item (the menu item itself should be 'all languages', then go to translate interface) - and the same occurs.
With the menu item, I added English and Spanish translations. The Spanish translation is shown when using the language switcher block, but the English translation isn't.
So there seems to be at least three symptoms, possibly all down to the same bug:
1. The UI for translate interface shows strings entered in a default language other than English as untranslated in that language.
2. When this is the case, it fails to show the strings as untranslated in English (although a textarea for English is available when you click edit
3. If you translate the string into English, it won't actually be translated when displayed (although if translated into a third language it works as normal).
1 and 2, like burlap says, are annoying but not critical. #3 seems pretty serious though.
Looking in the database, the entries for locales_source and locales_target seem to be correct though.
Comment #4
catchWhen language negotiation is set to 'path prefix only', switching to english gives you the default language only. If you manually add a path prefix for English, it'll work fine.
When language negotiation is set to 'path prefix only with language fallback' it works as expected.
So the display issues are down to #146084: Default path prefix for English (and DBTNG it) and can be fixed by adding a prefix for english in admin/settings/languages
That leaves the interface issues of course.
Comment #5
catchWell the interface translation issue seems to me to be a core bug too.
locales_source assumes that every string comes from code, which is always in English, so there's no language column whatsoever. Hence when showing the status of translations, it will always assume that the source is English, and that other languages are untranslated.
However, on admin/build/translate/edit/% the 'default', as long as the textgroup isn't 'default', you'll be able to translate into English - and once there's a translation, this'll get picked up later.
So it seems like the cleanest way to do this would be to add a language column to locale_source table - which is likely to be a Drupal 7 fix only. For D6, since it's an annoyance only (you can actually translate the items, just not see if they're translated in the overview) I doubt we'll get something into core. It might be possible for i18n to deal with this in contrib, but seems to me it'd have to be quite a big change to get it to work - hook_menu_altering the overview to include determining the source language for a string - and needing to store that information somewhere either by hook_schema_alter() on locales_source or in a new table.
Comment #6
catchCore issue opened here #348671: locales_source has no record of source language
Leaving this open since it might be possible to do an interim solution for that page within i18n itself, but we should probably hold off doing that until the core issue has some more feedback to ensure forwards compatibility.
Comment #7
jose reyero commentedCore's locale module is supposed to translate just from English so this shouldn't be core issue.
As for i18n, it does translate from default language, how it works is documented here. http://drupal.org/node/313293
This is really how it is expected to work.
Comment #8
junro commentedHello, I'm using French as Defaut language (and it's too late to change to Englaish for me... so I have to keep French), and I can't translate string in english. I don't have the englsih prefix appears in /admin/build/translate/search, so I can't translate in English...
In the documentation, it said:
"If the default is other than English you will be able to import/export English translations too using the localization interface."
but How to do that? There are no English translation files. I can"t understand when it said "import/export English translation".
How can I do to make the english translation appears?
I'm using the last 6.x-1.0 version.
Thanks^^
Comment #9
junro commentedI made another post specificaly to the english language problem in string translation when english is not the defait language.
http://drupal.org/node/364379
It will be more clear, and easier for people searching exactly this problem.
Comment #10
henrijs.seso commentedsubscribing and asking to see discussion here http://groups.drupal.org/node/24438