Zum Inhalt springen

Locallang.xml und griechischer Text

Erstellt am 6. Februar 2007 · 10 Antworten · letzte Antwort am 6. Februar 2007

Tags: Frage

intensio ·

Hallo,

ich möchte eigentlich nur in eine selbst programmierte Extension eine weitere Sprache anlegen. Dazu habe ich zuerst mit dem Kickstarter eine FE-Extension als Plug-In erstellt. Dabei werden ja alle notwendigen Dateien angelegt, so auch die Datei locallang.xml. Nun füge ich für einen beliebiges Label einen griechischen Text ein.

<label index="submit_button_label">&#913;&#965;&#964;&#942;&#957; &#964;&#951;&#957; &#960;&#949;&#961;&#943;&#959;&#948;&#959; &#948;&#949;&#957; &#965;&#960;&#940;&#961;&#967;&#959;&#965;&#957; &#951;&#956;&#949;&#961;&#959;&#956;&#951;&#957;&#943;&#949;&#962; &#949;&#954;&#952;&#941;&#963;&#949;&#969;&#957;</label>

(Leider wird hier auf der Seite kein UTF8 dargestellt 🙁 )
Jetzt werden im Frontend nur Fragezeichen (?????????????????) dargestellt.

Unter: http://www.sma.de/dkd/T3X_test-0_0_0.zip. (Zip-File in .t3x Umbenennen) Vielleicht weiß jemand wo der Fehler liegt.

Vielen Dank im Voraus!

steffenk ·

die locallang.xml muss als utf8 gespeichert werden, das darfst Du auf keinen Fall online machen.
Hier kann auch nicht jeder Editor utf8, ich benutze z.B. textpad dafür.

intensio ·

das nützt leider nichts. Habe jetzt die locallang.xml mit Notepad++ als UTF8 codiert. danach erscheind er Fehler

E:/htdocs/siteUTF8/typo3conf/ext/test/pi1/locallang.xml was not XML!: Line 1: Empty document

Das XML Dokument an sich ist ja schon
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>

das sollte doch reichen, oder?

steffenk ·

also ich habe Deine Extension ausprobiert und bekomme alles korrekt auf Griechisch angezeigt (BE)
FE ist ja noch nichts integriert.

intensio ·

ich habe jetzt nochmal was getestet. Und zwar kann man ja einmal die Codierung auf UTF8 stellen und zusätzlich noch die Datei als UTF8 abspeichern.

Wenn ich die Datei locallang.php als UTF8 abspeichere, werden die Daten der XML Datei, wenn ich sie dirket über den Browser aufrufe auch richtig angezeigt.

Leider stehen aber immer noch im FE nur ??????? anstatt des griechischen Textes. Wie muss ich jetzt die classe abspeichern, damit nun alles funktioniert.

PS: Ich arbeite an einem Windows Server (KA ob das was auchmacht?)

steffenk ·

von welcher Ausgabe im FE sprichst Du ? Die Ext gibt nix aus, in der locallang.xml von der pi1 ist kein griechischer text vorhanden.

intensio ·

Du musst das Plugin schon auf ner Seite einfügen. Dann solltest du im FE folgendes sehen:

Bild: sma.de/…/bild1.jpg

Jetzt ändere mal die locallang.xml ab, in dem du griechischen Text (findest du unter http://www.sma.de/gr/ ) einfügst, so dass sie so aussieht:

Bild: sma.de/…/bild2.jpg

Dann rufst du das Skript nochmal auf und es sollte im Button zum abschicken des Formulars nur ?????? stehen. Wenn nicht, kann es ja nur was mit der Codierung zu tun haben, oder mit Windows (wie so oft 🙁 )

Bitte probier das doch nochmal aus

steffenk ·

ok, jetzt hab ich verstanden.

Hier kommt es auf die richtige locale-Einstellung an. Wichtig ist, das diese auch vom Server unterstützt wird, und bei Windows ist die oft anders

z.B. de_DE.UTF8 für deutsch, die griechische kenn ich jetzt nicht.

steffenk ·

wenn ich die richtige local-Einstellung wüsste schon, ohne nicht.
Du musst ja auch die Sprache umstellen, mit de_DE.UTF8 kann er damit nix anfangen.

steffenk ·

so, jetzt kann ich es richtig stellen.

Falsch ist es in der default-section was anderes als en-Ascii einzutragen.

So funktioniert es:

XML:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<T3locallang>
	<meta type="array">
		<type>module</type>
		<description>Language labels for plugin "tx_test_pi1"</description>
	</meta>
	<data type="array">
		<languageKey index="default" type="array">
			<label index="list_mode_1">Mode 1</label>
			<label index="list_mode_2">Mode 2</label>
			<label index="list_mode_3">Mode 3</label>
			<label index="back">zurück</label>
			<label index="submit_button_label">absenden</label>
		</languageKey>
	</data>
    <data type="array">
		<languageKey index="gr" type="array">
			<label index="list_mode_1">Mode 1</label>
			<label index="list_mode_2">Mode 2</label>
			<label index="list_mode_3">Mode 3</label>
			<label index="back">&#949;&#964;&#945;&#953;&#961;&#953;&#954;&#972; &#955;&#959;&#947;&#953;&#963;&#956;&#953;&#954;&#972;</label>
			<label index="submit_button_label">&#949;&#964;&#945;&#953;&#961;&#953;&#954;&#972; &#955;&#959;&#947;&#953;&#963;&#956;&#953;&#954;&#972;</label>
		</languageKey>
	</data>
</T3locallang>
config.language = gr
config.locale_all = el_GR.utf8

page.10. = TEXT
page.10.data = LLL:typo3conf/ext/test/pi1/locallang.xml:submit_button_label