• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
GNU Gettext
 

GNU Gettext

on

  • 1,185 views

 

Statistics

Views

Total Views
1,185
Views on SlideShare
1,185
Embed Views
0

Actions

Likes
1
Downloads
1
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    GNU Gettext GNU Gettext Presentation Transcript

    • GNU Gettext GNU Gettext Nyitrai István 2008. október 22. Nyitrai István GNU Gettext 1/25
    • GNU Gettext Tartalom 1 Bevezetés Általánosan a lokalizációról Nyelvi támogatás 2 gettext Mi is az a gettext Segédprogramok Fájlok gettext a Java programokban Utómunkálatok Nyitrai István GNU Gettext 2/25
    • GNU Gettext Bevezetés Nem mindenki beszél angolul Nem mindenki beszél angolul Az emberek 95% nem angol anyanyelvű Nyitrai István GNU Gettext 3/25
    • GNU Gettext Bevezetés Nem mindenki beszél angolul Nem mindenki beszél angolul Az emberek 95% nem angol anyanyelvű Fedora: 6 millió telepítés, 60%-át nem angolul Nyitrai István GNU Gettext 3/25
    • GNU Gettext Bevezetés Nem mindenki beszél angolul Nem mindenki beszél angolul Az emberek 95% nem angol anyanyelvű Fedora: 6 millió telepítés, 60%-át nem angolul Gnome: 75 nyelv, 30% UI Nyitrai István GNU Gettext 3/25
    • GNU Gettext Bevezetés Nem mindenki beszél angolul Nem mindenki beszél angolul Az emberek 95% nem angol anyanyelvű Fedora: 6 millió telepítés, 60%-át nem angolul Gnome: 75 nyelv, 30% UI Wordpress.com: 120 nyelv Nyitrai István GNU Gettext 3/25
    • GNU Gettext Bevezetés Nem mindenki beszél angolul Nem mindenki beszél angolul Az emberek 95% nem angol anyanyelvű Fedora: 6 millió telepítés, 60%-át nem angolul Gnome: 75 nyelv, 30% UI Wordpress.com: 120 nyelv Wikipedia: 150 nyelv Nyitrai István GNU Gettext 3/25
    • GNU Gettext Bevezetés Nyelvi támogatás Nyelvi támogatás részei Karakterek és kódkészletek Pénznem Dátumok Számok Üzenetek Nyitrai István GNU Gettext 4/25
    • GNU Gettext Bevezetés Nyelvi támogatás Translation Project Céljuk: minél több program legyen többnyelvű Statisztika a csatlakozott projektek helyzetéről Levelezőlista a fordítócsapatoknak GNU gettext A kódra tett hatás legyen minimális Nyitrai István GNU Gettext 5/25
    • GNU Gettext gettext Mi is az a gettext Mi is az a gettext Programcsomag Programozási szabályok Segédprogramok Futásidejű függvénykönyvtárak Nyitrai István GNU Gettext 6/25
    • GNU Gettext gettext Mi is az a gettext gettext használata A fordítható üzenetek megjelölése A megjelölt üzeneteket kigyűjtése Az üzenetek lefordítása A fordítás visszanyerése Nyitrai István GNU Gettext 7/25
    • GNU Gettext gettext Segédprogramok xgettext Megjelölt szövegek kigyűjtése sablon fájlba Linux alatt „elfedhető” Nyitrai István GNU Gettext 8/25
    • GNU Gettext gettext Segédprogramok msginit PO fájl készítése Nyitrai István GNU Gettext 9/25
    • GNU Gettext gettext Segédprogramok msginit PO fájl készítése PO fájl fejlécének inicializálása Nyitrai István GNU Gettext 9/25
    • GNU Gettext gettext Segédprogramok msginit PO fájl készítése PO fájl fejlécének inicializálása Példa: msginit locale hu input=hello.pot Nyitrai István GNU Gettext 9/25
    • GNU Gettext gettext Segédprogramok msgfmt PO fájlból készít MO vagy egyéb katalógus fájlt Nyitrai István GNU Gettext 10/25
    • GNU Gettext gettext Segédprogramok msgfmt PO fájlból készít MO vagy egyéb katalógus fájlt Példa: msgfmt java2 -d ../src -r hello.i18n.Translation -l hu hu.po Nyitrai István GNU Gettext 10/25
    • GNU Gettext gettext Fájlok PO fájl Bejegyzésekből (entry) áll Három fajta bejegyzés: 1 Egyszerű 2 Többesszámú 3 Fejléc Nyitrai István GNU Gettext 11/25
    • GNU Gettext gettext Fájlok Egyszerű bejegyzés white-space Megjegyzések msgctxt context msgid untranslated-string msgstr translated-string Nyitrai István GNU Gettext 12/25
    • GNU Gettext gettext Fájlok Egyszerű bejegyzés white-space Megjegyzések msgctxt context msgid untranslated-string msgstr translated-string Nyitrai István GNU Gettext 12/25
    • GNU Gettext gettext Fájlok Egyszerű bejegyzés white-space Megjegyzések msgctxt context msgid untranslated-string msgstr translated-string Nyitrai István GNU Gettext 12/25
    • GNU Gettext gettext Fájlok Egyszerű bejegyzés white-space Megjegyzések msgctxt context msgid untranslated-string msgstr translated-string Nyitrai István GNU Gettext 12/25
    • GNU Gettext gettext Fájlok Egyszerű bejegyzés white-space Megjegyzések msgctxt context msgid untranslated-string msgstr translated-string Nyitrai István GNU Gettext 12/25
    • GNU Gettext gettext Fájlok Egyszerű bejegyzés white-space Megjegyzések msgctxt context msgid untranslated-string msgstr translated-string Nyitrai István GNU Gettext 12/25
    • GNU Gettext gettext Fájlok Többesszámú bejegyzés msgid untranslated-string-singular msgid_plural untranslated-string-plural msgstr[0] translated-string-case-0 ... msgstr[N] translated-string-case-n Nyitrai István GNU Gettext 13/25
    • GNU Gettext gettext Fájlok Többesszámú bejegyzés msgid untranslated-string-singular msgid_plural untranslated-string-plural msgstr[0] translated-string-case-0 ... msgstr[N] translated-string-case-n Nyitrai István GNU Gettext 13/25
    • GNU Gettext gettext Fájlok Többesszámú bejegyzés msgid untranslated-string-singular msgid_plural untranslated-string-plural msgstr[0] translated-string-case-0 ... msgstr[N] translated-string-case-n Nyitrai István GNU Gettext 13/25
    • GNU Gettext gettext Fájlok Többesszámú bejegyzés msgid untranslated-string-singular msgid_plural untranslated-string-plural msgstr[0] translated-string-case-0 ... msgstr[N] translated-string-case-n Nyitrai István GNU Gettext 13/25
    • GNU Gettext gettext Fájlok Többesszámú bejegyzés msgid untranslated-string-singular msgid_plural untranslated-string-plural msgstr[0] translated-string-case-0 ... msgstr[N] translated-string-case-n Nyitrai István GNU Gettext 13/25
    • GNU Gettext gettext Fájlok Többesszámú bejegyzés msgid untranslated-string-singular msgid_plural untranslated-string-plural msgstr[0] translated-string-case-0 ... msgstr[N] translated-string-case-n Nyitrai István GNU Gettext 13/25
    • GNU Gettext gettext Fájlok Fejléc bejegyzés Főleg informális tartalom, ettől azért érdekesebb a programozás Nyitrai István GNU Gettext 14/25
    • GNU Gettext gettext Fájlok Sablon fájl Ugyanaz, mint a PO fájl, de: A fejléce nincs kitöltve Nincs benne fordítás Nyitrai István GNU Gettext 15/25
    • GNU Gettext gettext Fájlok Katalógus fájl PO fájlból készül A program számára is olvasható formátum Nyitrai István GNU Gettext 16/25
    • GNU Gettext gettext gettext a Java programokban Emlékeztető A fordítható üzenetek megjelölése A megjelölt üzenetetek kigyűjtése Az üzenetek lefordítása A fordítás visszanyerése Nyitrai István GNU Gettext 17/25
    • GNU Gettext gettext gettext a Java programokban Ami mindig kell import gnu.gettext.GettextResource; import java.util.Locale; import java.util.MissingResourceException; import java.util.ResourceBundle; ResourceBundle catalog; Nyitrai István GNU Gettext 18/25
    • GNU Gettext gettext gettext a Java programokban Ami mindig kell import gnu.gettext.GettextResource; import java.util.Locale; import java.util.MissingResourceException; import java.util.ResourceBundle; ResourceBundle catalog; Nyitrai István GNU Gettext 18/25
    • GNU Gettext gettext gettext a Java programokban Ami mindig kell import gnu.gettext.GettextResource; import java.util.Locale; import java.util.MissingResourceException; import java.util.ResourceBundle; ResourceBundle catalog; Nyitrai István GNU Gettext 18/25
    • GNU Gettext gettext gettext a Java programokban Ami mindig kell import gnu.gettext.GettextResource; import java.util.Locale; import java.util.MissingResourceException; import java.util.ResourceBundle; ResourceBundle catalog; Nyitrai István GNU Gettext 18/25
    • GNU Gettext gettext gettext a Java programokban Ami mindig kell import gnu.gettext.GettextResource; import java.util.Locale; import java.util.MissingResourceException; import java.util.ResourceBundle; ResourceBundle catalog; Nyitrai István GNU Gettext 18/25
    • GNU Gettext gettext gettext a Java programokban Ami mindig kell import gnu.gettext.GettextResource; import java.util.Locale; import java.util.MissingResourceException; import java.util.ResourceBundle; ResourceBundle catalog; Nyitrai István GNU Gettext 18/25
    • GNU Gettext gettext gettext a Java programokban Trükk, hogy még egyszerűbb legyen try { catalog = ResourceBundle.getBundle( quot;hello.i18n.Translationquot;); } catch (MissingResourceException e) { catalog = ResourceBundle.getBundle( quot;hello.i18n.Translationquot;, Locale.ENGLISH); } Nyitrai István GNU Gettext 19/25
    • GNU Gettext gettext gettext a Java programokban Szöveg megjelölése String simple = GettextResource.gettext( catalog,quot;Hello World!quot;); String error = MessageFormat.format( GettextResource.gettext(catalog, quot;File {0} is not existing or readablequot;), new Object[]{foofilename}); String plural_1 = GettextResource.ngettext( catalog,quot;Hello World!quot;, quot;Hello girls!quot;, 1); Nyitrai István GNU Gettext 20/25
    • GNU Gettext gettext Utómunkálatok Megjelölt üzeneteket kigyűjtése 1 xgettext: xgettext from-code=utf-8 -o hello.pot ../src/hello/*.java Nyitrai István GNU Gettext 21/25
    • GNU Gettext gettext Utómunkálatok Megjelölt üzeneteket kigyűjtése 1 xgettext: xgettext from-code=utf-8 -o hello.pot ../src/hello/*.java 2 intltool: Nyitrai István GNU Gettext 21/25
    • GNU Gettext gettext Utómunkálatok Megjelölt üzeneteket kigyűjtése 1 xgettext: xgettext from-code=utf-8 -o hello.pot ../src/hello/*.java 2 intltool: POTFILES.in Nyitrai István GNU Gettext 21/25
    • GNU Gettext gettext Utómunkálatok Megjelölt üzeneteket kigyűjtése 1 xgettext: xgettext from-code=utf-8 -o hello.pot ../src/hello/*.java 2 intltool: POTFILES.in intltool-update -p -g hello Nyitrai István GNU Gettext 21/25
    • GNU Gettext gettext Utómunkálatok Az üzeneteket lefordítása 1 msginit -l hu -i hello.pot Nyitrai István GNU Gettext 22/25
    • GNU Gettext gettext Utómunkálatok Az üzeneteket lefordítása 1 msginit -l hu -i hello.pot 2 KBabel, Poedit programokkal fordítás Nyitrai István GNU Gettext 22/25
    • GNU Gettext gettext Utómunkálatok A fordítás visszanyerése msgfmt java2 -d ../src -r hello.i18n.Translation -l hu hu.po Nyitrai István GNU Gettext 23/25
    • GNU Gettext gettext Utómunkálatok A fordítás visszanyerése msgfmt java2 -d ../src -r hello.i18n.Translation -l hu hu.po A .class becsomagolása a jar fájlba Nyitrai István GNU Gettext 23/25
    • GNU Gettext gettext Utómunkálatok A fordítás visszanyerése msgfmt java2 -d ../src -r hello.i18n.Translation -l hu hu.po A .class becsomagolása a jar fájlba A program kész is van! Nyitrai István GNU Gettext 23/25
    • GNU Gettext Kérdés? Nyitrai István GNU Gettext 24/25
    • GNU Gettext Kérdés? Nyitrai István GNU Gettext 25/25