Changeset 7294


Ignore:
Timestamp:
10/25/11 10:33:09 (4 years ago)
Author:
wwalc
Message:

CKLangTool can now process language files located in plugins folders.

Location:
CKLangTool/trunk
Files:
5 added
4 edited

Legend:

Unmodified
Added
Removed
  • CKLangTool/trunk/_source/includes/cklangtool.js

    r7089 r7294  
    5656                {
    5757                        case CKLANGTOOL.FORMAT_JSON:
    58                                 var translationCode = 'var CKEDITOR = { lang : {} }; ' + CKLANGTOOL.io.readFile( file );
     58                                var translationCode = 'var CKEDITOR = { lang : {}, plugins : { setLang : function(plugin, langCode, obj) { CKEDITOR.lang[langCode] = obj; } } }; ' + CKLANGTOOL.io.readFile( file );
    5959
    6060                                var cx = Context.enter(), scope = cx.initStandardObjects();
     
    243243                fileOverview :Pattern.compile( " @fileOverview" ),
    244244                translation :Pattern.compile( "#ckeditor_translation[^#]*?#" ),
    245                 ckeditorLang :Pattern.compile( "(.*CKEDITOR\\.lang\\[).*?(\\]\\s*=.*)" )
     245                ckeditorLang :Pattern.compile( "(.*CKEDITOR\\.lang\\[).*?(\\]\\s*=.*)" ),
     246                ckeditorSetLang :Pattern.compile( "(.*CKEDITOR\\.plugins\\.setLang\\s*\\(.*?,)\\s*['\"][a-z-]+['\"](.*)" )
    246247        };
    247248
     
    440441                                }
    441442
     443                                /*
     444                                 * CKEDITOR.plugins.setLang( 'uicolor', 'en',
     445                                 */
     446                                matcher = regexLib.ckeditorSetLang.matcher( line );
     447                                if ( matcher.find() )
     448                                {
     449                                        out.push( matcher.group( 1 ) + "'#ckeditor_translation.__languageCode#'" + matcher.group( 2 ) );
     450                                        continue;
     451                                }
     452
    442453                                /*
    443454                                 * Get rid of all escaped quotes, we don't need the exact content at this stage, just the key.
  • CKLangTool/trunk/test/test.js

    r7083 r7294  
    11/*
    2 Copyright (c) 2003-2008, Frederico Caldeira Knabben. All rights reserved.
     2Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.
    33For licensing, see LICENSE.html or http://ckeditor.com/license
    44*/
     
    9999                        error( "Can't create temp directory: " + tempDir );
    100100
    101                 var tests = [ 'gettext', 'gettext/out', 'jprops', 'jprops/out', 'translator' ];
     101                var tests = [ 'gettext', 'gettext/out', 'jprops', 'jprops/out', 'translator', 'translator2' ];
    102102
    103103                for ( var i = 0 ; i < tests.length ; i++ )
     
    109109        }
    110110       
    111         function testTranslator()
     111        function testTranslator( folder )
    112112        {
    113                 CKLANGTOOL.languageDir = new File( 'tmp/translator' );
    114                 CKLANGTOOL.templateFile = new File( 'tmp/translator', 'en.js' );
     113                CKLANGTOOL.languageDir = new File( 'tmp/' + folder );
     114                CKLANGTOOL.templateFile = new File( 'tmp/' + folder, 'en.js' );
    115115               
    116                 var name = 'translator';
    117                 var dir = new File( '_assets/translator' );
     116                var dir = new File( '_assets/' + folder );
    118117                var dirList = dir.list();
    119118               
     
    135134                        testName = dirList[i].replace( ".correct.txt", "" );
    136135
    137                         tempFile = new File( 'tmp/' + name + '/' + testName );
    138                         correctFile = new File( 'tmp/' + name + '/' + testName + '.correct.txt' );
     136                        tempFile = new File( 'tmp/' + folder + '/' + testName );
     137                        correctFile = new File( 'tmp/' + folder + '/' + testName + '.correct.txt' );
    139138
    140139                        var date = new Date(),
     
    181180
    182181        prepareTempDirs();
    183         testTranslator();
     182        testTranslator('translator');
     183        testTranslator('translator2');
    184184        testFormat('gettext');
    185185        testFormat('jprops');
Note: See TracChangeset for help on using the changeset viewer.
© 2003 – 2015 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy