Wenn ich main.tex übersetze, erhalte ich extractfile.tex.

Wie erreiche ich, dass nur in extractfile.tex bestimmte Ergänzungen stehen? Z.B. möchte ich, dass die extrahierten Umgebungen in einem Rahmen \newpage ... <Umgebung> ... \clearpage stehen.

Open in Online-Editor
% main.tex

\documentclass[12pt, paper=a4]{scrreprt}
\usepackage[active,
generate=extractfile.tex, %
extract-cmd={chapter}, % gleiche Nummeriung in extract-Dokument
%extract-cmdline=label,
extract-env={defi,satz,equation}
]{extract}

% ======================================
% Header mitextrahieren (mit Stern, extract*, wirkt in beiden Dokumenten)
\begin{extract*} % ============================
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},  germandbls={ß}}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc} 
\usepackage{microtype}

\usepackage{amsmath, amssymb, amsfonts}
  \newtheorem{defi}{Definition}[chapter]
  \newtheorem{satz}[defi]{Satz}
  \newtheorem{bsp}[defi]{Beispiel}
\end{extract*} % ============================
% ======================================

\usepackage{hyperref}

\begin{document}

\chapter{Erstes Kapitel}
\begin{satz}[Satz des Pythagoras]\label{th:SdPy}
$a^2 + b^2 = c^2$
\end{satz}

\begin{defi}[Anordnungsaxiom]\label{def:anordnung}
 $x :=y$.
\end{defi}

\end{document}

gefragt 11 Sep '16, 05:48

cis's gravatar image

cis
9.5k74452491
Akzeptiert-Rate: 29%


Um Code zu einer Umgebung hinzuzufügen verwende ich etoolbox und die beiden Hooks

Open in Online-Editor
\BeforeBeginEnvironment{<env>}{<code>}
\AfterEndEnvironment{<env>}{<code>}

Das packe ich dann in eine extract-Umgebung (ohne Stern) damit es nur im extrahieren Dokument auftaucht. Wenn du tatsächlich suchen und ersetzen möchtest solltest du ein externes Programm verwenden.

Open in Online-Editor
\documentclass[12pt, paper=a4]{scrreprt}
\usepackage[active,
generate=extractfile.tex,
extract-cmd={chapter},
extract-env={defi,satz,equation}
]{extract}

% In beiden Dokumenten
\begin{extract*}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},  germandbls={ß}}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc} 
\usepackage{microtype}

\usepackage{amsmath, amssymb, amsfonts}
  \newtheorem{defi}{Definition}[chapter]
  \newtheorem{satz}[defi]{Satz}
  \newtheorem{bsp}[defi]{Beispiel}
\end{extract*}

% Nur im extrahierten Dokument
\begin{extract}
\usepackage{etoolbox}
\BeforeBeginEnvironment{defi}{\newpage}
\AfterEndEnvironment{defi}{\clearpage}
\BeforeBeginEnvironment{satz}{\newpage}
\AfterEndEnvironment{satz}{\clearpage}
\BeforeBeginEnvironment{bsp}{\newpage}
\AfterEndEnvironment{bsp}{\clearpage}
\end{extract}

\usepackage{hyperref}

\begin{document}

\chapter{Erstes Kapitel}
\begin{satz}[Satz des Pythagoras]\label{th:SdPy}
$a^2 + b^2 = c^2$
\end{satz}

\begin{defi}[Anordnungsaxiom]\label{def:anordnung}
 $x :=y$.
\end{defi}

\end{document}
Permanenter link

beantwortet 11 Sep '16, 11:23

Henri's gravatar image

Henri
15.7k133943
Akzeptiert-Rate: 46%

bearbeitet 11 Sep '16, 11:24

Sehr gut gelöst. Bringt mich gut weiter ;)

(12 Sep '16, 00:20) cis
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:

×1

gestellte Frage: 11 Sep '16, 05:48

Frage wurde gesehen: 5,405 Mal

zuletzt geändert: 12 Sep '16, 00:20

verwandte Fragen