Ein LaTeX-Dokument soll in zwei verschiedenen Sprachversionen (Deutsch und Englisch) erstellt werden. Der Dokumentenaufbau ist in beiden Fällen gleich, nur die Texte sollen jeweils übersetzt werden. Es scheint wenig sinnvoll, zwei gänzlich unabhängige tex-Dateien anzulegen, da dies bei Änderungen schnell zu Inkonsistenzen führen kann. Welches Vorgehen ist zweckmäßig?

gefragt 20 Mär, 06:48

Cletus's gravatar image

Cletus
995226
Akzeptiert: 71%

Die Präambel bleibt gleich, nur das Dokument ändert sich. Damit hast du drei Dateien: head.tex, german.tex and english.tex. Zweckmäßiger wäre aber vielleicht die übersetzungen in einem Dokument zu haben.

(20 Mär, 07:04) Johannes

Als Minimallösung in Ordnung, es gibt aber außer der Präambel noch mehr gemeinsame Teile (Gleitumgebungen, Fußnoten, Literaturverzeichnis).

(22 Mär, 08:18) Cletus

@Cletus das lässt sich mit der zweiten Version in meiner Antwort easy umsetzen, oder nicht? Deine Frage ist natürlich recht allgemein gehalten, also ist die Beantwortung notwendigerweise ebenso allgemein…

(22 Mär, 08:20) Clemens

Zwei Ideen:

  • eine gemeinsame Präambel und zwei weitere Dateien, die das Dokument einmal auf deutsch und einmal auf englisch enthalten (im Beispiel hab ich die zusätzlichen Datei aus Bequemlichkeit mit filecontents hinzugefügt):

    Open in Online-Editor
    \documentclass{article}
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    
    \usepackage{filecontents}
    \begin{filecontents*}{\jobname-german.tex}
      Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend
      und wurde allenthalben als Schritt in die falsche Richtung angesehen.
    \end{filecontents*}
    
    \begin{filecontents*}{\jobname-english.tex}
      In the beginning the Universe was created. This has made a lot of people
      very angry and been widely regarded as a bad move.
    \end{filecontents*}
    
    \usepackage[english]{babel}
    % \usepackage[ngerman]{babel}
    
    \begin{document}
    
    \input{\jobname-english}
    % \input{\jobname-german}
    
    \end{document}
    
  • ein einziges Dokument, das beide Inhalte enthält:

    Open in Online-Editor
    \documentclass{article}
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    
    \usepackage[english]{babel}
    % \usepackage[ngerman]{babel}
    
    \usepackage{translations}
    
    \newcommand\EnDe[2]{%
      \ifcurrentbaselanguage{English}{#1}{%
        \ifcurrentbaselanguage{German}{#2}{Sorry -- weder deutsch noch englisch
          ist aktiv}%
      }%
    }
    
    \begin{document}
    
    \EnDe{%
      In the beginning the Universe was created. This has made a lot of people
      very angry and been widely regarded as a bad move.%
    }{%
      Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend
      und wurde allenthalben als Schritt in die falsche Richtung angesehen.%
    }
    
    \end{document}
    
  • Permanenter link

    beantwortet 21 Mär, 14:32

    Clemens's gravatar image

    Clemens
    19.0k113060

    bearbeitet 21 Mär, 14:33

    Deine Antwort auf die Frage (nicht auf andere Antworten)
    Knebel-Vorschau

    Folge dieser Frage

    Per E-Mail:

    Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

    Per RSS:

    Antworten

    Antworten und Kommentare

    Aktuelle Buch-Infos

    LaTeX Cookbook

    LaTeX Beginners Guide

    Limitierter Rabatt ebook
    50% Coupon code tDRet6Y

    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üge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
    • grundlegende HTML-Tags werden ebenfalls unterstützt

    Zugeordnete Themen:

    ×8
    ×1

    Frage gestellt: 20 Mär, 06:48

    Frage wurde angeschaut: 526 Mal

    Zuletzt aktualisiert: 22 Mär, 08:20