Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

TYPO3 Translations

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Nächste SlideShare
Wordpress Template Workshop
Wordpress Template Workshop
Wird geladen in …3
×

Hier ansehen

1 von 22 Anzeige

Weitere Verwandte Inhalte

Andere mochten auch (20)

Ähnlich wie TYPO3 Translations (20)

Anzeige

Aktuellste (20)

TYPO3 Translations

  1. 1. Wir leben TYPO3 TYPO3 V. 4.6 Lokalisierung mit XLIFF Wir leben TYPO3 In2code.de
  2. 2. Ablauf • Lokalisierung – die Geschichte • Lokalisierung – die Zukunft – XLIFF - Standard • Tools – Pootle – Server – Nützliche Extensions – Desktop - Anwendungen Wir leben TYPO3 in2code.de
  3. 3. Lokalsierung – die Geschichte • PHP – Dateien mit Arrays <?php /** * * This file is detected by the translation tool. */ $LOCAL_LANG = Array ( 'default' => Array ( ), 'dk' => Array ( ), 'de' => Array ( ), 'no' => Array ( ), ); Wir leben TYPO3 in2code.de
  4. 4. Lokalisierung – die Geschichte • llxml – das TYPO3 eigene Format <?xml version="1.0" encoding="utf-8" standalone="yes" ?> <T3locallang> <meta type="array"> <description>Labels for the Linkvalidator Task.</description> <type>module</type> <csh_table></csh_table> <labelContext type="array"> </labelContext> </meta> <data type="array"> <languageKey index="default" type="array"> <label index="mod_linkvalidator">Linkvalidator</label> <label index="tasks.validate.name">Linkvalidator</label> <label index="tasks.validate.description">Search for broken Links and store the Result into the temporary Table tx_linkvalidator_link in order to ease up the Backend Module.</label> <label index="tasks.validate.page">Start Page (uid)</label> <label index="tasks.validate.depth">Depth</label> </languageKey> </data> </T3locallang> Wir leben TYPO3 in2code.de
  5. 5. Lokalisierung – die Geschichte • Hausgemachte Lösung – Format der XML-Dateien – Translation – Server für den Core – Extensions konnten auf Wunsch installiert werden Wir leben TYPO3 in2code.de
  6. 6. Lokalisierung – die Geschichte • Situation auf altem Translation – Server – Core – Extension auf Wunsch (über die Mailingliste) – Beteiligung „problematisch“ → 1 Account je Übersetzungsteam → keine Vorschläge → Letzte Änderung „gewinnt“ → Keine Tools, um den Übersetzern zu helfen Wir leben TYPO3 in2code.de
  7. 7. Lokalisierung – die Zukunft • XLIFF – XML Localisation Interchange File Format – OASIS – Standard seit 2002 • http://en.wikipedia.org/wiki/XLIFF • Übersetzungssoftware (online und offline) unterstützt diesen Standard Wir leben TYPO3 in2code.de
  8. 8. Warum XLIFF? • Features Plural, Vorschläge, Alternative Übersetzungen • Tools unterstützen die Übersetzungen – Online (z.B. Pootle) – Offline (z.B. Virtaal [OS], Swordfish [kommerziell] • Extensions erleichtern den Umstieg Wir leben TYPO3 in2code.de
  9. 9. XLIFF - Format <?xml version='1.0' encoding='utf-8'?> <xliff version="1.0"> <file source-language="en" target-language="de" datatype="plaintext" original="messages" date="Tue Jul 12 18:48:14 UTC 2011" product-name="jf_headerslide"> <header/> <body> <trans-unit id="pages.tx_jfheaderslide_images" approved="yes"> <source>Slide Images</source> <target state="translated">Dias</target> </trans-unit> <trans-unit id="pages.tx_jfheaderslide_stoprecursion" approved="yes"> <source>Stop Recursion (Reset)</source> <target state="translated">Stopp Rekursion (Zurücksetzen)</target> </trans-unit> <trans-unit id="pages.tx_jfheaderslide_href" approved="yes"> <source>Image links</source> <target state="translated">Bild-Links</target> </trans-unit> </body> </file> </xliff> Wir leben TYPO3 in2code.de
  10. 10. Unterschiede • xml – Format • nur eine Sprache je Datei – jede weitere Sprache enthält das Sprachlabel als Prefix – Bsp: de.locallang.xlf • Orginalsprache ist immer Englisch → Basis enthält immer alle Texte doppelt → nur „target“ wird ausgewertet Wir leben TYPO3 in2code.de
  11. 11. Für wen? • Für mich, für Dich, für alle – Core: wird bei 4.6 vollständig umgestellt sein – Erweiterungen: je nach Autor • LLXML / LLPHP funktionieren wie bisher – Keine Erweiterung verliert ihre Übersetzungen Wir leben TYPO3 in2code.de
  12. 12. Terminologie • Vergleichbar mit einem Wörterbuch – Vorschläge werden in der jeweiligen Übersetzungssoftware angezeigt Wir leben TYPO3 in2code.de
  13. 13. Translation Server • Core komplett • Extensions „auf Antrag“ • Verantwortlichkeiten – „Language Administrator“ – Team Mitglied – Jeder andere mit TYPO3.org - Account Wir leben TYPO3 in2code.de
  14. 14. Translation Server • Jeder andere – Übersetzungen für fehlende Labels vorschlagen • Team-Mitglied – Übersetzung des Core und der verfügbaren Erweiterungen – Terminologie festlegen – Akzeptieren von Übersetzungen von Nicht- Teammitgliedern Wir leben TYPO3 in2code.de
  15. 15. Translation Server • „Language Administrator“ – Neue Team-Mitglieder hinzufügen – Entscheidungsgewalt bei Konflikten – Entfernen von Teammitgliedern, die sich nicht an die Richtlinien halten – Aufgaben, wie jedes andere Team-Mitglied auch Wir leben TYPO3 in2code.de
  16. 16. Translation Server • Die Praxis – Startseite – Übersetzungen online • Fehlerhinweise • Vorschläge der Terminologie • Google Translate Plugin (als Teammitglied) – Down- und Upload von xlf – Dateien – Anmerkungen von Übersetzern (nicht in Pootle) Wir leben TYPO3 in2code.de
  17. 17. Desktop Anwendungen • Virtaal (Open Source) – Keine Anzeige der Notes – MacOS: nicht wirklich nutzbar • Swordfish (Kommerziell) Wir leben TYPO3 in2code.de
  18. 18. TYPO3 – Erweiterungen • Ext. „extdeveval“ – Automatische Konvertierung von llxml nach xlf – In der aktuellen Version auf forge / svn • Ext. „xliff“ – Abhängigkeit in Extension setzen – Konvertiert xlf → llxml für TYPO3 < 4.6 – Pflege der .xlf – Dateien reicht aus Wir leben TYPO3 in2code.de
  19. 19. TYPO3 - Konfiguration • Löschen den Sprach-Caches $TYPO3_CONF_VARS['SYS']['lang']['cache']['clear_menu'] = TRUE; • Anzeige der Labels $TYPO3_CONF_VARS['BE']['lang']['debug'] = TRUE; Wir leben TYPO3 in2code.de
  20. 20. Individuelle BE - Sprachen • Konfiguration via localconf.php $TYPO3_CONF_VARS['SYS']['localization']['locales']['user'] = array( 'de_BY' => 'Bavarian German', ); • Konfiguration einer Fallback-Kaskade $TYPO3_CONF_VARS['SYS']['localization']['locales']['dependencies'] = array ( 'de_BY' => array ( 'de_FR' ,'de_CH' , 'de' ), ); Wir leben TYPO3 in2code.de
  21. 21. Was machen die bei in2code? Stefan Busemann David Richter Markus Rodler Workshops Tina Gasteiger TYPO3 Alex Kellner Security Consulting Wir leben TYPO3 Wir unterstützen TYPO3- , Internet- und Full-Service-Agenturen genauso wie große und mittelgroße Firmen, die auf TYPO3 Spezialwissen angewiesen sind. Entwicklung Performance Michael Cannon Martin Huber Extensions FLOW3 Marcus Schwemer Fluid Wir leben TYPO3 in2code.de
  22. 22. Vielen Dank www.in2code.de Stefan Busemann TinaWir leben TYPO3 Gasteiger in2code.de Alex Kellner In2code.

×