Hi!
Wenn es übersetzt werden soll, dann sollte das über den gewählten Weg gehen, sonst hat man x unterschiedliche Verfahren zu pflegen.
Also du würdest entweder alle Texte in gettext mach oder eben keinen, richtig?
Ich würde versuchen, alles mit einer Lösung abzuhandeln, also entweder gettext oder eine andere Lösung. "Keiner" ist ja nicht zielführend. Allerdings bin ich nicht starr festgelegt, was sowas angeht. Wenn sich für ein bestimmtes Teilproblem eine bessere Lösung findet, wäge ich Vor- und Nachteile gegeneinander ab und fahre zur Not zweigleisig.
Es gibt die Heredoc- und Nowdoc-Syntax, die ähnliches leisten kann.
*DOC habe ich geredae mal ausprobiert. Ist eine interessante Sache, nur leider kann man dabei anscheinend nicht mit Codeeinrückungen arbeiten, da PHP sich dann an den Leerzeichen stört...
Kommt darauf an, was du meinst. Du kannst nicht den gesamten *doc-Block einrücken, denn diese Einrückung wäre Teil des Inhalts. So ein Block sieht nicht selten wie ein Fremdkörper im umgebenden Code aus.
Ja so ein langer Text würde etwas HTML zur schöneren Aufbereitung enthalten.
Wie meinst du das mit der eigenen Syntax und dem austausch durch das Markup, das verstehe ich leider nicht.
Einfache Regeln, wie "zwei Zeilenumbrüche ergeben einen Absatz", statt <p>...</p>. Die Übersetzer sind ja meist keine HTML-Profis. Du kannst ihnen natürlich auch erklären, wie sie mit der HTML-Syntax umgehen sollen. Ungünstig ist es, wenn sie dir Klassennamen oder IDs übersetzen :-) Deswegen sollte die Syntax zur Textauszeichnung so einfach wie möglich sein, BBCode oder Syntax wie in Wiki-Systemen.
Wenn an der resultierenden HTML-Syntax was zu ändern ist, ändert man die Übersetzungsregel und fertig ist, statt durch alle Sprachvarianten durchzulaufen.
Einfache Syntax kann man nicht in jedem Fall anwenden. Komplexe Aufgabenstellungen/Formatierungswünsche kann man nicht immer gleichwertig mit einfacher Syntax darstellen.
Lo!