Silbentrennung bei Sprachen in Transliteration // erzwungene Silbentrennung?

Silbentrennung bei Sprachen in Transliteration // erzwungene Silbentrennung?

Ich setze (lualatex) ein Dokument in mehreren Sprachen. Die Hauptsprache ist Englisch. Wenn ich andere Sprachen verwende, verwende ich normalerweise Befehle wie \foreigntextquote{french}{text}und \foreignlanguage{german}{text}, in der Hoffnung, dass dies ein paar Dinge und insbesondere die Silbentrennung regelt. Ich könnte auch Folgendes schaffen:mit etwas Hilfe, die Silbentrennung von Altgriechisch ( polutonikogreek).

Mein Hauptproblem ist jetzt, dass einige Sprachen, die nicht im lateinischen Alphabet geschrieben sind, manchmal in der Transliteration verwendet werden. Im Arabischen würde ich beispielsweise manchmal (normalerweise im Hauptteil des Textes) schreiben:yaštarikuanstelle von يشترك oderAl-Mutaʿallimanstelle von المتعلّم.

Aber wie kann ich es schaffen, diese Transliterationen mit Bindestrich zu versehen?

Sie sind keine "bekannte" Sprache (zumindest nicht in Transliteration). Ich weiß nicht, ob es festgelegte Regeln gibt, und ich gehe davon aus, dass diese, selbst wenn es welche gibt, nicht in integriert wurden babel. Manchmal haben die Wörter sogar einen eigenen Bindestrich (aufgrund des Artikelsal-), was ein bekanntes Problem ist (es gibt aber auch einige Lösungen).

Aber im Allgemeinen ist meine Frage folgende: Da ich in meiner Präambel nicht erklären kann,alleWörter, die ich in der Transliteration verwenden werde (der Befehl \hyphenation{...}wäre zu lang; das wäre einfach verrückt), würde ich gerne wissen, ob es eine Möglichkeit gibt, vielleichtnach dem ZufallsprinzipWörter trennen, die babelnicht getrennt werden können, oder eine einfache Möglichkeit, eine neue Trennsprache zu erstellen und ihre Regeln festzulegen? Oder gibt es eine andere Empfehlung, wie man all diese transliterierten Wörter trennt?

Ohne eine Lösung enthält mein Dokument eine Reihe von Wörtern, die in die Ränder oder Zeilen geschrieben sind und deren Abstand zwischen den Wörtern zu groß ist.

Dies sollte eigentlich ein dringendes Problem für den Schriftsatz in allen Geisteswissenschaften sein, da Verlage in ihren Veröffentlichungen häufig Transliterationen verwenden. Ich weiß nicht, wie die Verlage damit umgehen.

Antwort1

Hier ist eine ziemlich grobe Lösung, die einfach ein \- zwischen einem Vokal und einigen Konsonanten einfügt:

\documentclass{article}

\usepackage{luacode}

\begin{luacode*}
function insdisc (s)
    -- add more letters if necessary
  s = s:gsub( [[([aeiou])([bcfgklmnpqtxz])]] , '%1\\-%2' )
    -- but don't leave a single char alone:
  s = s:gsub( '^(.)\\%-', '%1')
  s = s:gsub( '\\%-(.)$', '%1')
  return s
end
\end{luacode*}

\def\insdisc#1{\directlua{tex.print(insdisc(\luastring{#1}))}}

\begin{document}

\hsize1mm

Text \insdisc{umiq'utzexopab} umiq'utzexopab text text text text text
text text text text text text text text text text text text.

\end{document}

verwandte Informationen