Strings not marked for translation

Strings not marked for translation

The following strings aren't marked for translation, hence they don't exist in a translation template:

  1. Please enter a name (This occurs when one tries to create a pad without a name)
  2. Heading, Normal, Heading 1 ... Heading 6 (These are shown in a dropdown menu on a pad view)
  3. Enter your name (Shown in "user view" when user hasn't set name)
  4. 1 unnamed author (Shown in timeslider when user hasn't set name)
  5. Help - What does each button do? (This and button tooltips in orange bubbles aren't translatable)
  6. Video Conferencing (Button tooltip not translatable)
  7. Clear authorship colors on entire document? (In a confirmation window after pressing "Remove author colours" button)
  8. Import now (Button text in Import/Export view)
  9. This revision is now marked as a saved revision (Shown when user presses "Star" button)
  10. Page View (Shown in Settings view)
  11. Loading... (Shown when a pad is loading)
  12. Import is not available. To enable import please install abiword (Shown in Import/Export view if admin hasn't installed the needed components)
Artnay (talk)13:21, 4 December 2012

I guess the code should be reviewed completely for hard coded strings, or is that how you did this?

Siebrand13:23, 4 December 2012

According to JohnMcLear it's a problem with plugins, which don't support l10n.

Nemo (talk)20:59, 4 December 2012

Then I guess it's about time they start doing that... Have a look at jQuery.i18n?

Siebrand21:35, 4 December 2012
 

I only did a quick etherpad-lite installation and reported untranslated strings visible to user. However, looking at https://github.com/ether/etherpad-lite/blob/master/src/templates/pad.html shows there are some hardcoded error/warning strings that most probably should have translations. Also the admin interface itself is untranslatable for most parts. And no, I did not do a through code review. Most of the strings I reported seem to be located in separate JS files, e.g.

  1. https://github.com/ether/etherpad-lite/blob/master/src/static/js/pad_userlist.js#L718
  2. https://github.com/ether/etherpad-lite/blob/master/src/static/js/pad_editbar.js#L172
  3. https://github.com/ether/etherpad-lite/blob/master/src/static/js/pad_savedrevs.js#L21
  4. https://github.com/ether/etherpad-lite/blob/master/src/static/js/pad_impexp.js#L109
  5. https://github.com/ether/etherpad-lite/blob/master/src/static/js/pad_impexp.js#L229
Artnay (talk)07:46, 5 December 2012

Looks like jQuery.i18n might be a very good match for Etherpad lite. Hope you can get the Etherpad lite devs to use it.

Siebrand15:44, 5 December 2012
 
 

Opened a corresponding issue on github: https://github.com/ether/etherpad-lite/issues/1263

I'm working on a refined l10n lib atm, though, so i guess this will have to wait a bit...

Thanks for reporting nonetheless!

mklehr (talk)18:55, 5 December 2012

Please consider *not* developing your own i18n lib if you can find anything remotely maintained. It is more complex than it looks...

Siebrand07:24, 6 December 2012
 

Some of the items in your list are indeed parts of plugins, so we can't do anything about that at the moment. "Loading..." is inevitable to be hardcoded in the template, though, because we have to display something even if no javascript is loaded yet (once the l10n lib is loaded this is replaced with the translated message!)

mklehr (talk)19:01, 5 December 2012
 

I think that all core strings to translate are marked now: https://github.com/ether/etherpad-lite/pull/1274

Joker (talk)04:34, 7 December 2012
 

I think we've fixed everything now. Thanks for your help!

mklehr (talk)16:25, 23 December 2012