Issue Details (XML | Word | Printable)

Key: MDL-15688
Type: Sub-task Sub-task
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Mathieu Petit-Clair
Reporter: Ralf Hilgenstock
Votes: 0
Watchers: 1
Operations

Add/Edit UI Mockup to this issue
If you were logged in you would be able to see more operations.
Moodle
MDL-11113

TinyMCE and language support

Created: 17/Jul/08 06:05 PM   Updated: 25/Dec/08 05:40 PM
Return to search
Component/s: HTML Editor
Affects Version/s: 2.0
Fix Version/s: None

Participants: Karoly Fabricz, Mathieu Petit-Clair and Ralf Hilgenstock
Security Level: None
Affected Branches: MOODLE_20_STABLE


 Description  « Hide
Just working the first time with TinyMCE in 2.0 I saw several issues relating language support in TinyMCE 3.0.:

- There are several language strings missing in english version
- Other languages than english are not available yet. Normally they have to be added manually for TinyMCE, but we should add them from beginning.
- Language files and UTF8. It seems that there were some problems with UTF8 and language files had to be encoded new from ISO to UTF8. But it may be solved in TimyMCE 3. But lots of languages are not translated.

 All   Comments   Change History   Version Control      Sort Order: Ascending order - Click to sort in descending order
Mathieu Petit-Clair made changes - 24/Jul/08 04:46 PM
Field Original Value New Value
Issue Type Bug [ 1 ] Sub-task [ 5 ]
Parent MDL-11113 [ 22249 ]
Mathieu Petit-Clair committed 1 file to 'Moodle CVS' - 30/Jul/08 06:17 PM
MDL-15688: script to import TinyMCE's langstrings into Moodle translation system.
ADD lib/editor/tinymce/Attic/create_langfiles.php   Rev. 1.1    (+0 -0 lines)
Mathieu Petit-Clair committed 1 file to 'Moodle CVS' - 30/Jul/08 06:19 PM
MDL-15688: readability improvement to the script
MODIFY lib/editor/tinymce/Attic/create_langfiles.php   Rev. 1.2    (+1 -1 lines)
Mathieu Petit-Clair committed 38 files to 'Lang CVS' - 31/Jul/08 04:48 PM
MDL-15688: Automatically generated translation files for TinyMCE. Other languages will need to be translated. Any error or omission in these files should
be corrected upstream (in TinyMCE) if possible. It is our objective to send new translations back to TinyMCE development team.
ADD nn_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD zh_tw_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD ar_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD el_utf8/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD bs_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD da_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD fi_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD ms_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD ko_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD nl_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD pl_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD fa_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD sk_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD he_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD sl_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD ro_utf8/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD sr_lt_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD lv_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD pt_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD hr_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD bg_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD et_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD vi_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD ja_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD uk_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD ru_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD de_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD hu_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD cs_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD es_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD fr_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD it_utf8/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD lt_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD si_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD ca_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD tr_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD sv_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD mk_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
Mathieu Petit-Clair committed 1 file to 'Moodle CVS' - 31/Jul/08 04:49 PM
MDL-15688: Import only languages translated in Moodle, and import at the right place.
MODIFY lib/editor/tinymce/Attic/create_langfiles.php   Rev. 1.3    (+69 -18 lines)
Mathieu Petit-Clair committed 1 file to 'Moodle CVS' - 31/Jul/08 04:51 PM
MDL-15688: English strings for TinyMCE. This does not include Moodle-specific modules strings yet.
ADD lang/en_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
Mathieu Petit-Clair committed 1 file to 'Moodle CVS' - 31/Jul/08 04:52 PM
MDL-15688: Script that build TinyMCE's language files
ADD lib/editor/tinymce/Attic/strings.php   Rev. 1.1    (+0 -0 lines)
Mathieu Petit-Clair committed 6 files to 'Moodle CVS' - 01/Aug/08 05:08 PM
MDL-15688: Modified version of TinyMCE that uses Moodle translation system. Includes a new compressed version of TinyMCE (this one compressed using YUI
compressor)
MODIFY lib/editor/tinymce/jscripts/tiny_mce/Attic/tiny_mce.js   Rev. 1.5    (+1 -1 lines)
MODIFY lib/editor/Attic/htmlEditor.class.php   Rev. 1.9    (+3 -3 lines)
MODIFY lib/editor/tinymce/jscripts/tiny_mce/Attic/tiny_mce_popup.js   Rev. 1.5    (+4 -2 lines)
MODIFY lib/editor/tinymce/Attic/strings.php   Rev. 1.2    (+3 -4 lines)
MODIFY lib/editor/Attic/tinymce.js.php   Rev. 1.19    (+34 -43 lines)
MODIFY lib/editor/tinymce/jscripts/tiny_mce/Attic/tiny_mce_src.js   Rev. 1.5    (+11 -6 lines)
Mathieu Petit-Clair added a comment - 01/Aug/08 05:10 PM
This is now fixed in head, at least for languages where a translation exists.

I'm keeping this issue opened, as I still need to add some documentation on how to upgrade TinyMCE to include the patch that is necessary to fix this.


Ralf Hilgenstock added a comment - 02/Aug/08 07:41 PM
Hi Mathieu,

I'm not a developer and didn't understand lot of code. I saw your last files and wondered about two points:

1. I understood there is a new import process for importing language files directly from TinyCME cvs system in the language system of Moodle. They are added to the moodle language system but overwritten by an external process. It will be confusing - only for translators- if they change the strings in the main version of their language and upload it to moodle, because the changes are overwritten by automatic import from Tinycme.
If lnaguage files are in lang/mylanguage/ folder translators will try to translate them. But if there is an automatic process to update from external source it will be confusing. Most translator not only tranlate missing strings but also try to optimize language strings

2. Are the paths correct here in create_langfiles.php?

// this should be the path to a checkout of the translations tree
// the english file will need to be separately committed to all
// relevant cvs checkouts (2.0 and up)

-define('MOODLE_LANG_PATH', '/home/mathieu/workspace/moodle_langs');

+define('MOODLE_LANG_PATH', '/home/mathieu/workspace/lang');

// this should be the path to the unzipped tinymce langpacks
define('LANGPACK_PATH', '/home/mathieu/workspace/tinymce_langs');

+// this should be the path to your HEAD checkout - the english translation
+// will be saved there.
+define('MOODLE_CVSHEAD_PATH', '/home/mathieu/workspace/head');
+


Mathieu Petit-Clair added a comment - 04/Aug/08 10:11 AM
I don't quite know how to answer question #1 ... Either translators have to redo all the translations (which is a waste for those that already exists), or the strings are imported from TinyMCE. When I import new strings, I don't quite know how (not speaking most of these languages) to decide which strings need to be replaced and which one need to be kept (I'm sure the TinyMCE translation team does "optimize strings" too). We need to be able to update the files, to upgrade when a new version comes out.. Any suggestion?

As for #2, they're right for me .. which is probably wrong for everybody else. But nobody has the same setup, and this script should only be used by the developer upgrading to a newer TinyMCE version. No idea what to put in there except for blatantly obviously wrong paths (like "/PATH/TO/YOUR/MOODLE/HEAD/REPO").


Mathieu Petit-Clair committed 1 file to 'Moodle CVS' - 04/Aug/08 02:26 PM
MDL-15688: Fix to make it work with IE (it was already doing fine in Firefox, Safari and Opera).
MODIFY lib/editor/tinymce/Attic/strings.php   Rev. 1.3    (+19 -7 lines)
Mathieu Petit-Clair made changes - 07/Aug/08 09:39 AM
Priority Critical [ 2 ] Major [ 3 ]
Ralf Hilgenstock added a comment - 17/Aug/08 03:56 PM
Works for me. Thanks

Ralf Hilgenstock made changes - 17/Aug/08 03:56 PM
Resolution Fixed [ 1 ]
Status Open [ 1 ] Closed [ 6 ]
Mathieu Petit-Clair committed 15 files to 'Lang CVS' - 23/Sep/08 05:21 PM
MDL-15688: importing new translations for tinymce. This commit excludes translations that were modified by the translators.
MODIFY sv_utf8/Attic/tinymce.php   Rev. 1.2    (+4 -4 lines)
MODIFY ar_utf8/Attic/tinymce.php   Rev. 1.2    (+4 -4 lines)
MODIFY lt_utf8/Attic/tinymce.php   Rev. 1.2    (+2 -2 lines)
MODIFY zh_tw_utf8/Attic/tinymce.php   Rev. 1.2    (+262 -262 lines)
MODIFY pl_utf8/Attic/tinymce.php   Rev. 1.2    (+11 -11 lines)
MODIFY cs_utf8/Attic/tinymce.php   Rev. 1.2    (+14 -14 lines)
MODIFY da_utf8/Attic/tinymce.php   Rev. 1.2    (+2 -2 lines)
MODIFY vi_utf8/Attic/tinymce.php   Rev. 1.2    (+1 -1 lines)
ADD is_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
ADD no_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
MODIFY nl_utf8/Attic/tinymce.php   Rev. 1.2    (+8 -8 lines)
ADD gl_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
MODIFY he_utf8/Attic/tinymce.php   Rev. 1.2    (+245 -245 lines)
ADD sq_utf8/Attic/tinymce.php   Rev. 1.1    (+0 -0 lines)
MODIFY ru_utf8/Attic/tinymce.php   Rev. 1.2    (+4 -4 lines)
Mathieu Petit-Clair committed 1 file to 'Lang CVS' - 25/Sep/08 04:39 PM
MDL-15688: revert last commit - encoding problem in the arabic translation
MODIFY ar_utf8/Attic/tinymce.php   Rev. 1.3    (+4 -4 lines)
Mathieu Petit-Clair committed 40 files to 'Lang CVS' - 25/Sep/08 05:36 PM
MDL-15688: Update TinyMCE's translations. This also makes the format of the
file similar to what is exported by Moodle, to minimize future diffs.
MODIFY da_utf8/Attic/tinymce.php   Rev. 1.3    (+710 -709 lines)
MODIFY ko_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY hu_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY hr_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY fi_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY lv_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY fr_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY pl_utf8/Attic/tinymce.php   Rev. 1.3    (+710 -709 lines)
MODIFY sq_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY nl_utf8/Attic/tinymce.php   Rev. 1.3    (+710 -709 lines)
MODIFY vi_utf8/Attic/tinymce.php   Rev. 1.3    (+710 -709 lines)
MODIFY he_utf8/Attic/tinymce.php   Rev. 1.3    (+710 -709 lines)
MODIFY pt_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY zh_tw_utf8/Attic/tinymce.php   Rev. 1.3    (+710 -709 lines)
MODIFY sv_utf8/Attic/tinymce.php   Rev. 1.3    (+707 -706 lines)
MODIFY ms_utf8/Attic/tinymce.php   Rev. 1.2    (+709 -708 lines)
MODIFY el_utf8/tinymce.php   Rev. 1.2    (+714 -713 lines)
MODIFY tr_utf8/Attic/tinymce.php   Rev. 1.4    (+2 -2 lines)
MODIFY ca_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY gl_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY cs_utf8/Attic/tinymce.php   Rev. 1.3    (+710 -709 lines)
MODIFY fa_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY no_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY et_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY bg_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY lt_utf8/Attic/tinymce.php   Rev. 1.3    (+728 -727 lines)
MODIFY sl_utf8/Attic/tinymce.php   Rev. 1.2    (+711 -710 lines)
MODIFY sk_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY mk_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY uk_utf8/Attic/tinymce.php   Rev. 1.2    (+713 -712 lines)
MODIFY ja_utf8/Attic/tinymce.php   Rev. 1.16    (+2 -2 lines)
MODIFY bs_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY ru_utf8/Attic/tinymce.php   Rev. 1.3    (+712 -711 lines)
MODIFY si_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY it_utf8/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY ro_utf8/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY es_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY nn_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
MODIFY de_utf8/Attic/tinymce.php   Rev. 1.4    (+2 -2 lines)
MODIFY is_utf8/Attic/tinymce.php   Rev. 1.2    (+710 -709 lines)
Mathieu Petit-Clair committed 1 file to 'Moodle CVS' - 26/Sep/08 09:56 AM
MDL-15688: Keep local modifications in language files - only import new strings. This also fix a few display bug and prevent use
from the web.
MODIFY lib/editor/tinymce/Attic/create_langfiles.php   Rev. 1.4    (+49 -18 lines)
Karoly Fabricz added a comment - 25/Dec/08 05:40 PM
I am afraid automatically incorporating translations (localizations) from other projects will kill Moodle localization efforts on the whole. Rather than saving time, you get a mix of terminology that is impossible to maintain. If you concentrate on the end user's requirements, such a procedure is absolutely ungrounded. You cannot ensure consistence of term usage, not to mention that fact that (at least the HU counterpart) is half English, half Hungarian, and the Hungarian is produced by someone who is apparently anyone but a specialist proficient in orthography and grammar.
The obvious misconception is related to the assumption that each term in each language is translated in one single (and appropriate) way.
I'd suggest a check phase is included after automatic and uncontrolled import of translations from other projects and before implementation, so that the translators can streamline new terminology with the one they use and Moodle users are accustomed to. Otherwise, localizations will definitely be an unmaintainable mess.

Karoly Fabricz
Moodle HU localizer