Am Donnerstag 01 November 2001 19:26 schrieben Sie:
On Wed, Oct 31, 2001 at 02:22:42PM +0100, Thomas Guettler wrote: Gut, dann kannst du gleich noch eine engliche Variante zusammen basteln :) Heute war nämlich ein Inder auf der ComTec, der sich sehr gefreut hat, eine LUG in Dresden zu finden, aber nur Englisch spricht => wir müssen i18n werden...
Gut das ich alles noch auf WML umgestellt hab. Für meine private Homepage hab ich das mit WML und mehreren Sprachen folgendermaßen gelöst. Als Problem hat sich ergeben das unbedingt irgendwo in der WML-Datei ein Eintrag mit lang:xx</lang:xx> für jede Sprache vorhanden sein muss, sonst meldet 'wml -o "(ALL-LANG_*)"+LANG_DE:' einen Fehler. Mir fällt grad auf man hätte auch eine leere Übersetzung verwenden können, ich habe das getrennt in 2 Targets. Dadurch sind auch unübersetzte Files wie index.html ohne _XX möglich.
In WML verwendet man das so:
lang:en <img src="l.png" alt="german"> </lang:en> lang:de <img src="l.png" alt="english"> </lang:de>
Wobei sich hier die Frage stellt, übersetze ich die ganzen Tags und mache den Code dadurch lesbarer und erhöhe den Aufwand bei Änderungen am HTML-Code, oder nur die Texte und alles sieht dann ein wenig komplizierter aus:
<img src="l.png" alt="<lang:en>german</lang:en><lang:de>englisch</lang:de>">
Makefile: # WML-Quell-Dateien mit mehreren Sprachen TRANS_WML_SOURCES=multi_lang.wml # WML-Quell-Dateien mit nur einer Sprache WML_SOURCES=single_lang.wml
# Ersetze .wml durch .html TRANS_HTML_FILES=$(TRANS_WML_SOURCES:.wml=_de.html) $(TRANS_WML_SOURCES:.wml=_en.html) HTML_FILES=$(WML_SOURCES:.wml=.html)
EXCLUDE=--exclude "*.wml" --exclude ".*" --exclude "*~" --exclude "Makefile" --exclude "concept/"
# Wie werden .html aus .wml generiert. %.html: %.wml pre.wml head.wml post.wml anfang_untrans.wml ende.wml wml -o $@ $<
%_de.html: %.wml pre_trans.wml head_trans.wml post.wml anfang_trans.wml ende.wml wml -o "(ALL-LANG_*)"+LANG_DE:$@ $<
%_en.html: %.wml pre_trans.wml head_trans.wml post.wml anfang_trans.wml ende.wml wml -o "(ALL-LANG_*)"+LANG_EN:$@ $<
all: $(TRANS_HTML_FILES) $(HTML_FILES)
etc.
Stephan