Codeblöcke sehen in der PDF-Ausgabe hässlich aus (überprüfen Sie die Anführungszeichen):
Ich benutze Version 1.1.3 von Sphinx und benutze den folgenden Befehl, um das Dokument zu erstellen:
%Vor%Wenn Sie das Snippet aus der PDF-Datei kopieren, wird die Einrückung beim Einfügen zerstört:
%Vor%Ich würde das erwarten:
%Vor%Das wäre noch schöner:
%Vor%Sphinx ist wirklich ein ausgezeichnetes Werkzeug, aber ich habe auch ein paar Probleme mit der Standard-PDF-Ausgabe des latexpdf-Ziels.
Speziell:
Ein Teil davon kann in dem LaTeX Pre-amble Abschnitt der conf.py Sphinx festgelegt werden, aber die Zitate werden von Sphinx, um benutzerdefinierten LaTeX Einheiten geändert, so dass die upquote LaTeX-Paket kann nicht verwendet werden, um sie zu korrigieren.
Nachdem ich ein wenig mit den verschiedenen Konfigurationsoptionen experimentiert hatte, schrieb ich ein kleines Skript, um die LaTeX-Quelle zu modifizieren, bevor das PDF erstellt wurde. Das Skript ist hier und die Ausgabe, die ich wollte erzeugen hier . (Zum Vergleich: hier ist die Standard-Ausgabe für das gleiche Dokument).
Wenn jemand eine sauberere Lösung hat, zum Beispiel eine, die vollständig durch Sphinx conf.py getan werden könnte, so würden die Änderungen durch abgeholt werden ReadTheDocs dann wäre ich interessiert.
Auch das Problem mit der Vertiefung verliert beim Kopieren und Einfügen von PDF ist wahrscheinlich nicht eine Sphinx / LaTeX Ausgabe.
Dies ist nur eine Teilantwort, die zu einer ultimativen Lösung führen kann. Um Typographer-Anführungszeichen (auch als lockige oder intelligente Anführungszeichen bezeichnet) für die HTML-Ausgabe in Sphinx zu deaktivieren, ändern Sie die Standardeinstellung in conf.py für SmartyPants von Wahr zu Falsch .
Ich nehme an, dass man die Funktion in Sphinx finden kann, die Anführungszeichen transformiert und dieselbe Logik aus der HTML-Ausgabe verwendet und sie für die PDF-Ausgabe anwendet.
Die von Steve Piercy vorgeschlagene Option funktioniert jetzt nicht mehr (seit Sphinx 1.6):
%Vor% Was mir nicht klar war, war, wie man diese Einstellung anwendet. Sie müssen eine docutils.conf
-Datei erstellen und sie in einen dieser Standorte einfügen:
Die einfachste Möglichkeit besteht darin, es dort zu platzieren, wo Sie die Dokumente erstellen - YMMV. Es sollte mindestens folgendes enthalten:
%Vor%Tags und Links python python-sphinx latex