Erhalten von automatischen Leerzeichen vor der Zeichensetzung in Babel-Französisch bei Verwendung von Pandoc

Erhalten von automatischen Leerzeichen vor der Zeichensetzung in Babel-Französisch bei Verwendung von Pandoc

Ich versuche, pandoc(das Markdown mit LaTeX in PDF konvertiert) PDFs zu erstellen, die die französischen Satzregeln einhalten, in Bezug aufgeschützte Leerzeichen.

Die Vorschläge hierscheinen nicht zu funktionieren, zB pandoc test.md -V lang:fr-FR -o test.pdfoder pandoc test.md -M lang:fr-FR -o test.pdf.

Was übersehe ich? Ich verwende pandoc2.7.3 auf Ubuntu 16.04. Das Ziel ist, mit einer Markdown-Datei text.mdwie zu beginnen a;bund als Ausgabe eine PDF-Datei zu erhalten, die zeigt, a ;bwo der Leerraum nicht umbrechbar ist.

Antwort1

Die Standardvorlage pandocfür die LaTeX-Ausgabe scheint shorthands=offdie babelOptionen zu erzwingen. Tatsächlich pandoc -D latex >default.latexsollten Sie nach dem Ausführen Folgendes sehen:

\PassOptionsToPackage{unicode=true}{hyperref} % options for packages loaded elsewhere

(...)

$if(lang)$
\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
  \usepackage[shorthands=off,$for(babel-otherlangs)$$babel-otherlangs$,$endfor$main=$babel-lang$]{babel}
$if(babel-newcommands)$
  $babel-newcommands$
$endif$
\else

(...)

\end{document}

Diese shorthands=offOption deaktiviert die gewünschte Funktion. Sie können dies folgendermaßen beheben:

  1. Holen Sie sich die Standard-LaTeX-Vorlage in einer Datei mit dem Namen mytemplate.latex:

    pandoc -D latex >mytemplate.latex
    
  2. Verwenden Sie in mytemplate.latexIhren bevorzugten Texteditor, um die shorthands=offan übergebene Option zu entfernen babel.

  3. Kompilieren mit:

    pandoc -f markdown -t latex -M lang:fr-FR --template=mytemplate -o test.pdf test.md
    

Dies sollte funktionieren, wenn mytemplate.latexes sich entweder im aktuellen Verzeichnis oder in befindet ~/.pandoc/templates.

verwandte Informationen