Hintergrund:

Soweit ich weiß, sollten beispielsweise Punkte oder Kommas, welche genau am Rand liegen, leicht in den Rand geschoben werden. Anführungszeichen sollen wohl sogar komplett in den Rand geschoben werden.

Ich kompiliere mit lualatex und verwende auch das Paket microtype, das bietet ja schon standardmäßig ein entsprechendes feature "protrusion". In der Anleitung findet man ja dann auch den benötigten Befehl SetProtrusion. Diesem Befehl muss man dann ein encoding und eine family übergeben. Und da beginnen die Probleme:

  • Ich weiß nicht, was ich als encoding angeben muss. In dem Beispiel nehmen die T1 als encoding. Soweit ich weiß, hat man dieses T1 encoding ja nur, wenn man pdflatex mit \usepackage[T1]{fontenc} verwendet. Aber ich verwende ja lualatex mit fontspec. Das sind ja dann "open-type-fonts" soweit ich weiß. Mir würde jetzt höchstens einfallen, otf für encoding anzugeben (?)
  • Ich möchte hier beispielsweise gerne "kepler fonts" verwenden. Die nutzen da im Beispiel cmr als family. Ich weiß also auch nicht, was ich da als family angeben muss. Ich habe beispielsweise mal hier oder hier etwas bezüglich "berry names" gefunden. Oder hier die Anleitung "fontname". Da finde ich dann "kp" als Abkürzung für kepler fonts.

Aber leider funktioniert das nicht, wie erhofft.

EDIT:

Vielen Dank an Ulrike Fischer für den Tipp zum richtigen encoding und der datei microtype.cfg. Meine alte Frage hat sich insofern geklärt, als dass ich jetzt weiß, dass man TU für das encoding angeben muss. Und das funktioniert auch, wenn ich family überhaupt nicht erwähne.

MWE:

%!TeX LuaLaTeX
\documentclass[
    ngerman,
    fontsize=12pt,
    DIV=9,
    usegeometry,
]{scrartcl}

\usepackage{kpfonts-otf}
\usepackage{babel}
\usepackage{microtype}
\usepackage{csquotes} % \usepackage[german=guillemets]{csquotes}
\usepackage[showframe]{geometry}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\SetProtrusion{
    encoding=TU,
    family=lmr, % Punkte und Kommas kommen nur in den Rand, wenn ich eine family angebe(?)
}{
    \textquotedblleft = {1000,1000},
    \quotedblbase = {1000,1000},
    \guillemotleft = {1000,1000}, % bei guillemets funktioniert das nicht?
    \guillemotright = {1000,1000},
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\begin{document}
\section{Test}
\enquote{Das ist ein Test}\\
Hier geht es linksbündig weiter.\\


\raggedleft
\enquote{Das ist noch ein Test}\\
Hier geht es rechtsbündig weiter,\\
und hier auch noch.
\end{document}

Das funktioniert jetzt soweit wie erwartet. Wenn ich allerdings mit \usepackage[german=guillemets]{csquotes} die Guillemets aktiviere, dann werden die trotzdem nicht in den Rand geschoben (obwohl ich das ja in \SetProtrusion so angegeben habe?

Außerdem werden Punkte und Kommata nicht mehr in den Rand geschoben (wenn ich keine family angeben). Wenn ich hingegen family=lmr angebe, dann werden Punkt und Komma doch wieder in den Rand geschoben? Häh? Verstehe ich nicht.

Kann mir da eventuell noch jemand auf die Sprünge helfen?

gefragt 20 Sep '23, 21:51

AndreGismo's gravatar image

AndreGismo
451122
Akzeptiert-Rate: 75%

bearbeitet 21 Sep '23, 13:43

Entschuldigung für das nicht funktionierende Minimalbeispiel. Ich müsste dem sagen, dass er lualatex verwenden soll. Ich weiß, ich habe das schon mal irgendwo gesehen. Aber mir fällt gerade nicht ein, wo das war, oder wie das geht.

(20 Sep '23, 21:56) AndreGismo
1

gefunden, jetzt gehts

(20 Sep '23, 22:04) AndreGismo
1

encoding is TU. Ansonsten: wenn du mal in den Ordner von microtype.sty schaust wirst du dort cfg-Dateien finden, die du als Beispiel nehmen kannst. (Die dort öfter mal erwähnten Kodierungen EU1 und EU2 kannst du ignorieren, die sind Geschichte.)

(21 Sep '23, 09:53) Ulrike Fischer

hmm, seltsam. Also zumindest bei mir auf dem Rechner werden die Anführungszeichen mit dem überarbeiteten MWE in den Rand geschoben. Hier klappt das aber immer noch nicht.

(21 Sep '23, 13:45) AndreGismo

also hier in dem Editor muss ich die Zeile mit family=lmr auskommentieren, damit die Anführungszeichen in den Rand kommen. Allerdings funktioniert dann die Protrusion bei anderen Zeichen wieder nicht.

(21 Sep '23, 13:49) AndreGismo

ahh ok, wahrscheinlich werden dann die Einstellungen aus der microtype.cfg Datei überschrieben, weswegen die die Protrusion bei allen anderen Zeichen fehlt?

(21 Sep '23, 13:50) AndreGismo

ahh, jetzt passt alles. Man muss die Datei microtype.cfg aus dem dem Ordner von microtype.sty kopieren und in demjenigen Ordner einfügen, wo man die tex Datei hat.

(21 Sep '23, 14:37) AndreGismo
Ergebnis 5 von 7 show 2 more comments

LÖSUNG (vielen Dank an Ulrike Fischer für den Tipp):

In der tex Datei muss eigentlich gar nichts geändert werden. Die ganzen Änderungen nimmt man am besten in der Datei microtype.cfg vor. Die Datei findet man (zumindest unter windows 10 und miktex als Distribution) unter:

C:\Users\Name\AppData\Local\Programs\MiKTeX\tex\latex\microtype

Diese Datei selbst möchte man vermutlich nicht verändern (das würde sich dann wohl auf alle Dokumente auswirken(?)). Deshalb kopiert man diese Datei und fügt sie in den Ordner ein, wo man das tex Dokument liegen hat. Und dort, in dieser Kopie, nimmt man dann die Änderungen vor.

Um sowohl die "normalen" Anführungszeichen als auch die Guillemets in den Rand zu schieben, muss man folgende Einträge abändern:

\textquotedblleft = {1000,1000},   \textquotedblright = {1000,1000},

und

\quotedblbase      = {1000,1000},

sowie

\guillemotleft    = {1000,1000},   \guillemotright    = {1000,1000},

Diese ganzen Einträge befinden sich alle im unteren Drittel der Datei. Dann hatte das bei mir alles so geklappt wie erwartet (vollständigkeitshalber müsste man das vermutlich auch noch für die "einfachen" Varianten der Anführungszeichen und Guillemets machen).

Permanenter link

beantwortet 21 Sep '23, 14:52

AndreGismo's gravatar image

AndreGismo
451122
Akzeptiert-Rate: 75%

Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×28
×5
×5
×1

gestellte Frage: 20 Sep '23, 21:51

Frage wurde gesehen: 897 Mal

zuletzt geändert: 21 Sep '23, 14:52