CallBackery

 view release on metacpan or  search on metacpan

bin/callbackery-pobuilder  view on Meta::CPAN

        }
    }
},$root);

for my $poFile (glob $podir."/*.po"){
    my $po = Locale::PO->load_file_ashash($poFile,'utf8');
    # add new
    for my $id (keys %idStr){
        my $poKey = Locale::PO->quote($id);
        next if $po->{$poKey};
        my $item = $po->{$poKey} //= new Locale::PO(-msgid=>$id, -msgstr=>'');
        $item->reference(join("\n", @{$idStr{$id}}));
    }
    # remove old stuff unless from .cfg file
    for my $poKey (keys %$po){        
        next if $poKey eq '""';
        my $id = Locale::PO->dequote($poKey);
        if (not $idStr{$id}) {
            my $ref = $po->{$poKey}->reference;
            delete $po->{$poKey}
                unless $ref =~ m/\.cfg/;
        }            
    }    
    $po->{'""'} //= new Locale::PO(
            -msgid => '',
            -msgstr => "Project-Id-Version: PACKAGE VERSION\\n" .
            "PO-Revision-Date: YEAR-MO-DA HO:MI +ZONE\\n" .
            "Last-Translator: FULL NAME <EMAIL\@ADDRESS>\\n" .
            "Language-Team: LANGUAGE <LL\@li.org>\\n" .
            "MIME-Version: 1.0\\n".
            "Content-Type: text/plain; charset=utf-8\\n".
            "Content-Transfer-Encoding: 8bit\\n"
    );
    Locale::PO->save_file_fromhash($poFile,$po,'utf8');
}

lib/CallBackery/Config.pm  view on Meta::CPAN

    for my $file (glob(File::Spec->catdir($path, '*.po'))) {
        my ($volume, $localePath, $localeName) = File::Spec->splitpath($file);
        my $locale = $localeName;
        $locale =~ s/\.po$//;
        my $lang = $locale;
        $lang =~ s/_.+//;
        local $_; # since load_file_ashash modifies $_ and does not localize it
        my $href = Locale::PO->load_file_ashash($file, 'utf8');
        for my $key (keys %$href) {
            my $o = $href->{$key};
            my $id  = $po->dequote($o->msgid);
            my $str = $po->dequote($o->msgstr);
            next unless $id;
            $lx{$locale}{$id} = $str;
        }
    }
    return \%lx;
}

=head2 postProcessCfg

lib/CallBackery/qooxdoo/callbackery/source/translation/de.po  view on Meta::CPAN

#
msgid ""
msgstr ""
"Project-Id-Version: 1.0\n"
"Report-Msgid-Bugs-To: you@your.org\n"
"POT-Creation-Date: 2016-06-30 11:39+0100\n"
"PO-Revision-Date: 2016-06-30 11:39+0100\n"
"Last-Translator: you <you@your.org>\n"
"Language-Team: Team <yourteam@your.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: callbackery/ui/Footer.js:23
msgid "Support"
msgstr ""

#: callbackery/ui/Footer.js:34
msgid ", %1."
msgstr ", %1."

#: callbackery/ui/Footer.js:39
msgid "Version %1, %2%3"
msgstr ""

#: callbackery/ui/Login.js:23 callbackery/ui/Login.js:111
msgid "Login"
msgstr "Anmelden"

#: callbackery/ui/Login.js:82
msgid "User"
msgstr "Benutzer"

#: callbackery/ui/Login.js:98
msgid "Password"
msgstr "Passwort"

#: callbackery/ui/MsgBox.js:68 callbackery/ui/Login.js:114
msgid "OK"
msgstr ""

#: callbackery/ui/Login.js:143
msgid "Reset Password"
msgstr "Passwort zurück setzen"

#: callbackery/ui/Login.js:149
msgid "Register New Account"
msgstr "Neues Konto registrieren"

#: callbackery/ui/Login.js:163
msgid "release %1, %2 by %3"
msgstr "Version %1, %2 by %3"

#: callbackery/ui/Login.js:284
msgid "<span style=\"text-decoration: underline;\">%1</span>"
msgstr ""

#: callbackery/ui/Popup.js:39 callbackery/ui/MsgBox.js:66
msgid "Cancel"
msgstr "Abbrechen"

#: callbackery/ui/MsgBox.js:67
msgid "Apply"
msgstr "Anwenden"

#: callbackery/ui/MsgBox.js:69
msgid "Yes"
msgstr "Ja"

#: callbackery/ui/MsgBox.js:70
msgid "No"
msgstr "Nein"

#: callbackery/ui/MsgBox.js:177
msgid "RPC Error %1"
msgstr "Kommunikations-Fehler %1"

#: callbackery/ui/TabView.js:46
msgid "Unsaved Data"
msgstr "Nicht gespeicherte Daten"

#: callbackery/ui/TabView.js:47
msgid "This form contains unsaved data. Do you still want to switch?"
msgstr ""
"Dieses Formular enthält nicht gespeicherte Daten. Wollen Sie trotzdem "
"umschalten?"

#: callbackery/ui/form/Auto.js:78 callbackery/ui/form/Auto.js:86
msgid "dd.MM.yyyy"
msgstr ""

#: callbackery/ui/form/renderer/NoteForm.js:82
#: callbackery/ui/form/renderer/NoteForm.js:84
msgid "Select %1 and press [ctrl]+[c]"
msgstr "Selektiere %1 und drücke [ctrl]+[c]"

#: callbackery/ui/form/renderer/NoteForm.js:90
msgid "Success"
msgstr "Erfolg"

#: callbackery/ui/form/renderer/NoteForm.js:93
#: callbackery/ui/form/renderer/NoteForm.js:96
msgid "Copy failed"
msgstr "Kopie fehlgeschlagen"

#: callbackery/ui/form/renderer/NoteForm.js:84
msgid "Select %1 and press [ctrl]+[c]"
msgstr "Selektiere %1 und drücke [ctrl]+[c]"

#: callbackery/ui/plugin/Action.js:133 callbackery/ui/plugin/Action.js:164
#: callbackery/ui/plugin/Action.js:272
msgid "Validation Error"
msgstr "Validierungsfehler"

#: callbackery/ui/plugin/Action.js:134 callbackery/ui/plugin/Action.js:165
#: callbackery/ui/plugin/Action.js:273
msgid ""
"The form can only be submitted when all data fields have valid content."
msgstr ""
"Dieses Formular kann nur abgeschickt werden, wenn alle Felder einen gültigen"
" Inhalt haben."

#: callbackery/ui/plugin/Action.js:179
msgid "No Data"
msgstr "Keine Daten."

#: callbackery/ui/plugin/Action.js:188
msgid "Download Exception"
msgstr "Download Fehler."

#: callbackery/ui/plugin/Action.js:305
msgid "Upload Exception"
msgstr "Upload Fehler"

#: callbackery/ui/plugin/Form.js:252
msgid "Loading Form Data"
msgstr "Daten werden geladen"

#: callbackery/ui/plugin/Html.js:54
msgid "Loading HTML Data"
msgstr "HTML Daten werde geladen"

lib/CallBackery/qooxdoo/callbackery/source/translation/en.po  view on Meta::CPAN

#
msgid ""
msgstr ""
"Project-Id-Version: 1.0\n"
"Report-Msgid-Bugs-To: you@your.org\n"
"POT-Creation-Date: 2016-06-30 11:39+0100\n"
"PO-Revision-Date: 2016-06-30 11:39+0100\n"
"Last-Translator: you <you@your.org>\n"
"Language-Team: Team <yourteam@your.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: callbackery/ui/Footer.js:23
msgid "Support"
msgstr ""

#: callbackery/ui/Footer.js:34
msgid "Implemented by %1"
msgstr ""

#: callbackery/ui/Footer.js:39
msgid "Version %1, %2%3"
msgstr ""

#: callbackery/ui/Login.js:23 callbackery/ui/Login.js:111
msgid "Login"
msgstr ""

#: callbackery/ui/Login.js:82
msgid "User"
msgstr ""

#: callbackery/ui/Login.js:98
msgid "Password"
msgstr ""

#: callbackery/ui/MsgBox.js:68 callbackery/ui/Login.js:114
msgid "OK"
msgstr ""

#: callbackery/ui/Login.js:143
msgid "Reset Password"
msgstr ""

#: callbackery/ui/Login.js:149
msgid "Register New Account"
msgstr ""

#: callbackery/ui/Login.js:163
msgid "release %1, %2 by %3"
msgstr ""

#: callbackery/ui/Login.js:284
msgid "<span style=\"text-decoration: underline;\">%1</span>"
msgstr ""

#: callbackery/ui/Popup.js:39 callbackery/ui/MsgBox.js:66
msgid "Cancel"
msgstr ""

#: callbackery/ui/MsgBox.js:67
msgid "Apply"
msgstr ""

#: callbackery/ui/MsgBox.js:69
msgid "Yes"
msgstr ""

#: callbackery/ui/MsgBox.js:70
msgid "No"
msgstr ""

#: callbackery/ui/MsgBox.js:177
msgid "RPC Error %1"
msgstr ""

#: callbackery/ui/TabView.js:46
msgid "Unsaved Data"
msgstr ""

#: callbackery/ui/TabView.js:47
msgid "This form contains unsaved data. Do you still want to switch?"
msgstr ""

#: callbackery/ui/form/Auto.js:78 callbackery/ui/form/Auto.js:86
msgid "dd.MM.yyyy"
msgstr ""

#: callbackery/ui/form/renderer/NoteForm.js:82
#: callbackery/ui/form/renderer/NoteForm.js:84
msgid "Select %1 and press [ctrl]+[c]"
msgstr ""

#: callbackery/ui/form/renderer/NoteForm.js:90
msgid "Success"
msgstr ""

#: callbackery/ui/form/renderer/NoteForm.js:93
#: callbackery/ui/form/renderer/NoteForm.js:96
msgid "Copy failed"
msgstr ""

#: callbackery/ui/form/renderer/NoteForm.js:84
msgid "Select %1 and press [ctrl]+[c]"
msgstr ""

#: callbackery/ui/plugin/Action.js:133 callbackery/ui/plugin/Action.js:164
#: callbackery/ui/plugin/Action.js:272
msgid "Validation Error"
msgstr ""

#: callbackery/ui/plugin/Action.js:134 callbackery/ui/plugin/Action.js:165
#: callbackery/ui/plugin/Action.js:273
msgid ""
"The form can only be submitted when all data fields have valid content."
msgstr ""

#: callbackery/ui/plugin/Action.js:179
msgid "No Data"
msgstr ""

#: callbackery/ui/plugin/Action.js:188
msgid "Download Exception"
msgstr ""

#: callbackery/ui/plugin/Action.js:305
msgid "Upload Exception"
msgstr ""

#: callbackery/ui/plugin/Form.js:252
msgid "Loading Form Data"
msgstr ""

#: callbackery/ui/plugin/Html.js:54
msgid "Loading HTML Data"
msgstr ""

lib/CallBackery/qooxdoo/callbackery/source/translation/fr.po  view on Meta::CPAN

#
msgid ""
msgstr ""
"Project-Id-Version: 1.0\n"
"Report-Msgid-Bugs-To: you@your.org\n"
"POT-Creation-Date: 2013-12-22 18:08+0100\n"
"PO-Revision-Date: 2013-12-22 18:08+0100\n"
"Last-Translator: you <you@your.org>\n"
"Language-Team: Team <yourteam@your.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: callbackery/ui/Footer.js:23
msgid "Support"
msgstr "Soutien"

#: callbackery/ui/Footer.js:34
msgid "Implemented by %1"
msgstr "Mis en œuvre par"

#: callbackery/ui/Footer.js:39
msgid "Version %1, %2%3"
msgstr ""

#: callbackery/ui/Login.js:23 callbackery/ui/Login.js:111
msgid "Login"
msgstr "Se connecter"

#: callbackery/ui/Login.js:82
msgid "User"
msgstr "Utilisateur"

#: callbackery/ui/Login.js:98
msgid "Password"
msgstr "Mot de passe"

#: callbackery/ui/MsgBox.js:68 callbackery/ui/Login.js:114
msgid "OK"
msgstr "D'ACCORD"

#: callbackery/ui/Login.js:143
msgid "Reset Password"
msgstr "Réinitialiser le mot de passe"

#: callbackery/ui/Login.js:149
msgid "Register New Account"
msgstr "Créer un nouveau compte"

#: callbackery/ui/Login.js:163
msgid "release %1, %2 by %3"
msgstr "publié %1, $2 par %3"

#: callbackery/ui/Login.js:284
msgid "<span style=\"text-decoration: underline;\">%1</span>"
msgstr ""

#: callbackery/ui/Popup.js:39 callbackery/ui/MsgBox.js:66
msgid "Cancel"
msgstr "Annuler"

#: callbackery/ui/MsgBox.js:67
msgid "Apply"
msgstr "Appliquer"

#: callbackery/ui/MsgBox.js:69
msgid "Yes"
msgstr "Oui"

#: callbackery/ui/MsgBox.js:70
msgid "No"
msgstr "No"

#: callbackery/ui/MsgBox.js:177
msgid "RPC Error %1"
msgstr "Erreur RPC %1"

#: callbackery/ui/TabView.js:46
msgid "Unsaved Data"
msgstr "Données non enregistrées"

#: callbackery/ui/TabView.js:47
msgid "This form contains unsaved data. Do you still want to switch?"
msgstr ""
"Ce formulaire contient des données non sauvegardées. Voulez-vous toujours "
"changer?"

#: callbackery/ui/form/Auto.js:78 callbackery/ui/form/Auto.js:86
msgid "dd.MM.yyyy"
msgstr ""

#: callbackery/ui/form/renderer/NoteForm.js:82
#: callbackery/ui/form/renderer/NoteForm.js:84
msgid "Select %1 and press [ctrl]+[c]"
msgstr "Sélectionnez %1 et appuyez sur [ctrl]+[c]"

#: callbackery/ui/form/renderer/NoteForm.js:90
msgid "Success"
msgstr "Succès"

#: callbackery/ui/form/renderer/NoteForm.js:93
#: callbackery/ui/form/renderer/NoteForm.js:96
msgid "Copy failed"
msgstr "Échec de la copie"

#: callbackery/ui/plugin/Action.js:133 callbackery/ui/plugin/Action.js:164
#: callbackery/ui/plugin/Action.js:272
msgid "Validation Error"
msgstr "Erreur de validation"

#: callbackery/ui/plugin/Action.js:134 callbackery/ui/plugin/Action.js:165
#: callbackery/ui/plugin/Action.js:273
msgid ""
"The form can only be submitted when all data fields have valid content."
msgstr ""

#: callbackery/ui/plugin/Action.js:179
msgid "No Data"
msgstr "Aucune donnée"

#: callbackery/ui/plugin/Action.js:188
msgid "Download Exception"
msgstr "Exception de téléchargement"

#: callbackery/ui/plugin/Action.js:305
msgid "Upload Exception"
msgstr "Exception de téléchargement"

#: callbackery/ui/plugin/Form.js:252
msgid "Loading Form Data"
msgstr "Chargement des données du formulaire"

#: callbackery/ui/plugin/Html.js:54
msgid "Loading HTML Data"
msgstr "Chargement des données HTML"

lib/CallBackery/qooxdoo/callbackery/source/translation/it.po  view on Meta::CPAN

#
msgid ""
msgstr ""
"Project-Id-Version: 1.0\n"
"Report-Msgid-Bugs-To: you@your.org\n"
"POT-Creation-Date: 2013-12-22 18:08+0100\n"
"PO-Revision-Date: 2013-12-22 18:08+0100\n"
"Last-Translator: you <you@your.org>\n"
"Language-Team: Team <yourteam@your.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: callbackery/ui/Footer.js:23
msgid "Support"
msgstr "Supporto"

#: callbackery/ui/Footer.js:34
msgid "Implemented by %1"
msgstr "Implementato da"

#: callbackery/ui/Footer.js:39
msgid "Version %1, %2%3"
msgstr "Versione %1, %2%3"

#: callbackery/ui/Login.js:23 callbackery/ui/Login.js:111
msgid "Login"
msgstr ""

#: callbackery/ui/Login.js:82
msgid "User"
msgstr "Utente"

#: callbackery/ui/Login.js:98
msgid "Password"
msgstr ""

#: callbackery/ui/MsgBox.js:68 callbackery/ui/Login.js:114
msgid "OK"
msgstr ""

#: callbackery/ui/Login.js:143
msgid "Reset Password"
msgstr "Reimposta password"

#: callbackery/ui/Login.js:149
msgid "Register New Account"
msgstr "Registra un nuovo account"

#: callbackery/ui/Login.js:163
msgid "release %1, %2 by %3"
msgstr "pubblicazione %1, %2 da %3"

#: callbackery/ui/Login.js:284
msgid "<span style=\"text-decoration: underline;\">%1</span>"
msgstr ""

#: callbackery/ui/Popup.js:39 callbackery/ui/MsgBox.js:66
msgid "Cancel"
msgstr "Cancellare"

#: callbackery/ui/MsgBox.js:67
msgid "Apply"
msgstr "Fare domanda a"

#: callbackery/ui/MsgBox.js:69
msgid "Yes"
msgstr "SÌ"

#: callbackery/ui/MsgBox.js:70
msgid "No"
msgstr "NO"

#: callbackery/ui/MsgBox.js:177
msgid "RPC Error %1"
msgstr "Errore RPC %1"

#: callbackery/ui/TabView.js:46
msgid "Unsaved Data"
msgstr "Dati non salvati"

#: callbackery/ui/TabView.js:47
msgid "This form contains unsaved data. Do you still want to switch?"
msgstr "Questo modulo contiene dati non salvati. Vuoi comunque cambiare?"

#: callbackery/ui/form/Auto.js:78 callbackery/ui/form/Auto.js:86
msgid "dd.MM.yyyy"
msgstr ""

#: callbackery/ui/form/renderer/NoteForm.js:82
#: callbackery/ui/form/renderer/NoteForm.js:84
msgid "Select %1 and press [ctrl]+[c]"
msgstr "Seleziona %1 e premi [ctrl]+[c]"

#: callbackery/ui/form/renderer/NoteForm.js:90
msgid "Success"
msgstr "Successo"

#: callbackery/ui/form/renderer/NoteForm.js:93
#: callbackery/ui/form/renderer/NoteForm.js:96
msgid "Copy failed"
msgstr "Copia non riuscita"

#: callbackery/ui/plugin/Action.js:133 callbackery/ui/plugin/Action.js:164
#: callbackery/ui/plugin/Action.js:272
msgid "Validation Error"
msgstr ""

#: callbackery/ui/plugin/Action.js:134 callbackery/ui/plugin/Action.js:165
#: callbackery/ui/plugin/Action.js:273
msgid ""
"The form can only be submitted when all data fields have valid content."
msgstr "Il modulo può essere inviato solo se tutti i campi dati hanno un contenuto valido."

#: callbackery/ui/plugin/Action.js:179
msgid "No Data"
msgstr "Nessun dato"

#: callbackery/ui/plugin/Action.js:188
msgid "Download Exception"
msgstr "Scarica eccezione"

#: callbackery/ui/plugin/Action.js:305
msgid "Upload Exception"
msgstr "Eccezione di caricamento"

#: callbackery/ui/plugin/Form.js:252
msgid "Loading Form Data"
msgstr "Caricamento dei dati del modulo"

#: callbackery/ui/plugin/Html.js:54
msgid "Loading HTML Data"
msgstr "Caricamento dati HTML"



( run in 3.213 seconds using v1.01-cache-2.11-cpan-5735350b133 )