Anzeige:
Ergebnis 1 bis 5 von 5

Thema: Automatisches Einbinden aller .tex files aus einem Unterverzeichnis

  1. #1
    Registrierter Benutzer
    Registriert seit
    08.02.2012
    Beiträge
    48

    Automatisches Einbinden aller .tex files aus einem Unterverzeichnis

    Hallo,

    ich möchte, dass LaTex automatisch alle .tex-files aus einem Unterverzeichnis per \input einbindet, ohne dass ich die (beliebigen) Namen explizit eingeben muss.

    Bei https://tex.stackexchange.com/questi...es-in-a-folder wurde das Thema schon einmal diskutiert, aber der Code läuft bei mir nicht, da offenbar nicht für windows geschrieben (und ich verstehe ihn auch nicht)

    Hat jemand eine Idee?

    Vielen Dank!

    Manfred
    Code:
    \documentclass[english]{article}
    \usepackage[T1]{fontenc}
    \usepackage[latin9]{inputenc}
    \usepackage{babel}
    \begin{document}
    \input{Docs/xyz.tex}
    \input{Docs/abc.tex}
    % \input{...}
    % Alle .tex files aus dem Unterverzeichnis sollen automatisch geladen werden, ohne explizite Angabe des Namens
    \end{document

  2. #2
    Registrierter Benutzer
    Registriert seit
    09.12.2005
    Beiträge
    1.326

  3. #3
    Registrierter Benutzer
    Registriert seit
    08.02.2012
    Beiträge
    48
    Vielen Dank für die schnelle Antwort
    Mit LuaLaTex funktionierts wirklich recht einfach!

    Ich würde aber trotzdem gerne bei pdflatex bleiben. Die im Link dafür beschriebene Lösung mit dem DOS-Befehl dir ist aber recht umständlich. Gibt es vielleicht noch eine einfachere Möglichkeit direkt aus pdflatex?

    Vielen Dank

  4. #4
    Registrierter Benutzer
    Registriert seit
    09.12.2005
    Beiträge
    1.326
    Man kann den dir-Befehl natürlich wie shellesc-Paket aus pdflatex heraus aufrufen. Dazu muss man aber auch shell escapes aktivieren. Ebenso könnte man texlua mit passendem lua-Script aus pdflatex heraus wie shellesc-Paket aufrufen. Einfacher geht es mit pdflatex nicht, da pdflatex selbst keine Verzeichnisfunktionen bereit stellt.

  5. #5
    Registrierter Benutzer
    Registriert seit
    08.02.2012
    Beiträge
    48
    Noch einmal vielen Dank. Ich habe leider bisher nie mit shellesc oder lua gearbeitet.

    Daher habe ich das Problem pragmatisch gelöst:
    Durch eine cmd-Datei die
    1. Mit dem DOS-Befehl die Dateiliste erstellt
    2. Direkt das TeXnicCenter mit dem LaTex Code aufruft.

    => Ein Klick auf die .cmd-Datei und ich brauche nur noch im LaTex-Editor die Compilierung zu starten.

    Für alle, die vielleicht später das gleiche Problem haben und per google auf diesen Beitrag stoßen, hier die Dateien:

    Die "start.cmd" Datei:
    Code:
    dir /b *.tex >FileListe.csv
    "C:\Program Files\TeXnicCenter\TeXnicCenter.exe" AlleFilesImVerzLadenAusListe.tex
    Die LaTex-Datei "AlleFilesImVerzLadenAusListe.tex"
    Code:
    \documentclass{article}
    
    \usepackage{datatool}
    
    %\DTLsetseparator{ }
    \DTLloaddb[
      noheader,
      keys={name}
      ]{myfiles}{FileListe.csv}
    
    \begin{document}
    \section*{Einbindung der Dateien:}
    
    \DTLforeach*[\not\DTLiseq{\Name}{AlleFilesImVerzLadenAusListe.tex}] 
    {myfiles}{\Name=name}{%% 
        \section{\Name} 
        \input{\Name} 
     }%%
    \end{document}
    Noch einmal vielen Dank für den Link, ohne den hätte ich nie eine Lösung gefunden!

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •