Re: [team-gnome-gr] προγραμματισμ ός και απορία με localization



Στις 3 Νοεμβρίου 2010 9:14 μ.μ., ο χρήστης Simos Xenitellis <simos lists googlemail com> έγραψε:

2010/11/3 Εμμανουήλ Καπερνάρος <manolis kapcom gr>

Γειά σας,
η απορία μου δεν είναι και τόσο σχετική με τη λίστα, αλλά είπα να δοκιμάσω.

Φτιάχνω μία εφαρμογή περισσότερο για να μάθω python και είπα να προσθέσω υποστήριξη l10n :) με το σωστό τρόπο.
Έκανα τις απαραίτητες αλλαγές στο κώδικά μου (https://github.com/kapcom01/statusYzer/commit/e1c0cabecf5280006b79462f19783f593d44723d) και με την εντολή pygettext παρήγαγα το .pot αρχείο.
Χρησιμοποιώντας το .pot δημιούργησα χειροκίνητα 2 αντίγραφα με κατάληξη .po αυτή τη φορά, ένα για τα αγγλικά και ένα για τα ελληνικά.

Όλα πήγαν ρολόι και τώρα θέλω να προσθέσω περισσότερα strings προς localization. Ξέρει κανείς αν γίνεται κάπως αυτοματοποιημένα;
Αν δημιουργήσω καινούριο .pot φαίνεται ότι αλλάζει πολύ από τα προηγούμενα .po.. Μπορώ να μεταφέρω κάπως τις μεταφράσεις από τα παλιά .po στα καινούρια?


Εδώ χρησιμοποιείς τα εργαλεία του πακέτου gettext, http://bugs.python.org/issue8502
Με το 'xgettext' μπορείς να παράγεις κάθε φορά το ενημερωμένο .pot.
Τις υπάρχουσες μεταφράσεις τις ενημερώνεις με το msgmerge, οπότε έτσι γίνεται η μεταφορά που ρωτάς.
Δεν χρειάζεται μετάφραση για en_US μιας και είναι η πρωταρχική γλώσσα.

Σε ευχαριστώ πάρα πολύ!
Αρχικά είχα δοκιμάσει το xgettext αλλά δεν αναγνώριζε την .pyw κατάληξη. Γιαυτό κατέληξα στο pygettext. Αλλά τελικά ήταν απλή η λύση, χρησιμοποιώντας την παράμετρο -L (xgettext app.pyw -L Python).
Με το msgmerge λύθηκε η απορία μου ενημερώνοντας τα παλιά .po επιτυχώς!

Το ... μπορείς να το γράψεις και … (ellipsis).

 
Εδώ δεν κατάλαβα τι εννοείς. Κάτι για τα αποσιωπητικά λογικά αλλά τι?

Μπορείς να δεις σχετικά πακέτα στο git.gnome.org, γραμμένα σε Python, για το πως δουλεύει εκεί η μετάφραση. Ειδικά για τα πακέτα στο git.gnome.org, χρησιμοποιούν το 'intltool' που κάνει τη δουλειά ακόμα πιο εύκολη.
Έτσι, για να φτιάξω ένα ενημερωμένο .po σε τέτοιο πακέτο στο git.gnome.org, μπαίνω στον υποκατάλογο po/, εκτελώ 'intltool-update el' και ενημερώνει αυτόματα το el.po. Αν φιλοξενήσεις στο μέλλον το πακέτο σου στο git.gnome.org, τότε μπαίνει στη σελίδα http://l10n.gnome.org/languages/el/gnome-extras/ui/ για να μεταφραστεί από κάθε μια από τις 100+ μεταφραστικές ομάδες του GNOME.

Σίμος

Το intltool δεν το έψαξα ακόμα.. μπορώ να χρησιμοποιήσω αυτό εναλλακτικά των xgettext και msgmerge?

Και μιάς και ανέφερες το git.gnome.org, μπορώ να το χρησιμοποιήσω όπως χρησιμοποιώ τώρα το github? Ουσιαστικά δηλαδή να κάνω τα commits μου και όποιος θέλει να με κάνει fork.. κτλ...

Και πάλι ευχαριστώ για τη βοήθεια!

Μανώλης


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]