Wie kann man die Kombination eines Zeichens verhindern?

Wie kann man die Kombination eines Zeichens verhindern?

Die Schriftart „EB Garamond“ kombiniert ʿZeichen und den vorhergehenden Buchstaben. Beachten Sie folgendes Dokument:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{EB Garamond}
\begin{document}

   aʿ bʿ cʿ dʿ eʿ fʿ gʿ hʿ iʿ jʿ kʿ lʿ mʿ nʿ oʿ pʿ qʿ rʿ sʿ tʿ uʿ vʿ wʿ xʿ yʿ zʿ

\end{document}

Bildbeschreibung hier eingeben

Wie kann ich das Vermischen von ʿ(MODIFIER LETTER LEFT HALF RING) und dem vorhergehenden Buchstaben verhindern? (In den obigen Bildern b,d,i,jsind nur diese richtig wiedergegeben.)

AktualisierenNach mehr als dreißig Tests ist dies die einzige Schriftart mit diesem Problem. Leider ist dies nur für ein Papier geeignet, das viele Unicode-Glyphen enthält. ◕︵◕

Antwort1

Als möglicherweise vorübergehende lokale Lösung können Sie in Fällen, in denen es nötig ist, einen Unterstrich vor das Zeichen setzen, um es vor dem vorhergehenden Buchstaben zu verbergen.

  a\kern0ptʿ

würde nicht kombinieren.

Antwort2

Es tut mir leid, das war ein Versehen und wurde in v0.015b behoben, das ich gerade hochgeladen habe.https://bitbucket.org/georgd/eb-garamond/downloads

Antwort3

Eine nur für XeTeX geeignete „Lösung“ wäre die Verwendung von Map-Dateien. Erstellen Sie eine Datei half-ring.map, die XeTeX anweist, vor jedem modifizierenden Halbring in Schriftsätzen einen Haarabstand einzufügen:

LHSName "Modifier Half Ring"
RHSName "UNICODE"
pass(Unicode)

U+02BF <> U+200A U+02BF;

Kompilieren Sie es dann mit teckit_compile(sollte in TeX Live enthalten sein) und ändern Sie Ihren Schriftartbefehl so, dass er lautet \setmainfont[Mapping=half-ring]{EB Garamond}.

Beachten Sie, dass XeTeX derzeit nur eine Zuordnungsdatei pro Schriftart anwenden kann. Wenn Sie also andere Zuordnungsdateien (oder Ligature=TeXSchriftartoptionen) verwenden, müssen Sie diese Zuordnung in der obigen Datei replizieren.

Antwort4

Wenn Sie mit dem Wechsel zu LuaLaTeX einverstanden sind,Mico's bevorstehendeselnoligDas Paket (auf GitHub) ist Ihr Freund. Es ist eigentlich dazu gedacht, unbeabsichtigte Ligaturen global zu vermeiden, kann aber auch dafür verwendet werden. Es ändert nichts anderes, wenn Sie es ohne eine Sprachoption laden:

\documentclass{article}
\usepackage{fontspec}
    \setmainfont{EB Garamond}

\usepackage{selnolig}
    \nolig{ʿ}{|ʿ}
\begin{document}

   aʿ bʿ cʿ dʿ eʿ fʿ gʿ hʿ iʿ jʿ kʿ lʿ mʿ nʿ oʿ pʿ qʿ rʿ sʿ tʿ uʿ vʿ wʿ xʿ yʿ zʿ

\end{document}

Ausgabe

Weitere Hintergrundinformationen zu selnoligfinden Sie unterNeues Paket, selnolig, das die Unterdrückung typografischer Ligaturen automatisiert.

Betrachten wir das Problem aus einem anderen Blickwinkel: Ich weiß nichts über dieses spezielle Unicode-Zeichen, aber wenn EB Garamond hier wirklich etwas falsch macht und es die einzige Schriftart ist, die dies tut, sollten Sie einen Fehlerbericht einreichen anseine Entwicklungsseite.

verwandte Informationen