2010-03-25 19 views
14

Su Windows utilizzando WampServer (Apache, MySQL, PHP) Ho il seguente:Come generare un file .po?

//test.php 
if (!defined('LC_MESSAGES')) 
define('LC_MESSAGES', 6); 

$lang = "sv"; 
putenv("LANG=$lang"); 
setlocale(LC_ALL, $lang); 

$domain = "messages"; 
bindtextdomain($domain, "./locale"); 
textdomain($domain); 

echo _("This is a string"); 

Funziona bene, cioè esso emette "Questa è una stringa" che significa che devo gettext correttamente installato in su.

Ma come faccio a creare un file .po?

Ho scaricato Poedit ma non riesco a vedere come farlo accadere con quel software.

Qualsiasi aiuto è molto apprezzato!

+0

ho trovato questo tutorial utile [>> Gettext & PoEdit >>] (https://www.youtube.com/watch?v = -RuqVDdC1cI) –

risposta

7

PoEdit è lo strumento per creare il file .po. Devi fare una piccola configurazione con esso e non è il più semplice. Il modo in cui dovrebbe funzionare è che trovi tutto il testo nel codice sorgente che è racchiuso nella stringa del marker che si configura. Questo diventa il testo di origine che dai al tuo traduttore. Poi lo traducono nelle lingue di destinazione e salvano i file di traduzione e li restituiscono. Quindi si riversano quei file in una directory speciale nella propria applicazione php e ogni volta che l'estensione gettext vede una delle stringhe di traduzione preleva la traduzione appropriata.

Probabilmente posso aiutare di più se mostri alcuni dettagli su dove ti sei ritrovato con Poedit.

+1

Thx, sono riuscito a risolverlo. Il problema era che non era chiaro su come impostare i basepath. E l'interfaccia è troppo vecchia per essere abbastanza intuitiva da capire come creare un nuovo percorso.:) – tobefound

+0

Più importanti sono le impostazioni del percorso (percorso assoluto) nel file di catalogo, altrimenti Poedit non è in grado di utilizzare 'gettext()' dai file di origine. –

+1

@VolkerE. consigliare non è corretto in un aspetto: si dovrebbe usare * relativo *, non i percorsi assoluti, perché il primo non può essere esportato su altre macchine. Meglio ancora, usa Poedit 1.8beta3 (o più recente) che ha risolto l'interfaccia assolutamente terribile (e lo dico come autore Poedit) per impostare il percorso delle fonti e ti permette semplicemente di trascinare le relative directory. –

8

per PHP:

Ho un file come ---- ---- test_1.php

<?php 
    echo _("Test phrase"); 
    echo gettext("Test phrase two"); 
    // NOTE: _ == gettext() 
?> 

File -> Nuovo catalogo ... Nelle "percorsi di origine" scheda, devi fare clic su Nuova cartella, Aggiungi il percorso della cartella in cui hai il file (in questo esempio test_1.php)

... Hanno preso TUTTE le stringhe che vengono richiamate con gettext() o _() ... L'utile per coloro funzione è spiegata qui http://www.php.net/manual/es/function.gettext.php

e ... se si usa Apache (ad esempio in XAMPP), per favore, Stop and Start (Restart) quando si fa prova desidera un nuovo cambiamento in un linguaggio definito con gettext(), in un altro modo in cui il cambiamento non sarà influenzato

Problemi correlati