Wie vermeide ich die Kompilierung einiger meiner neuen Befehle in Latex?

Wie vermeide ich die Kompilierung einiger meiner neuen Befehle in Latex?

Ich schreibe eine Prüfung für meine Studenten und habe drei Befehle zum Einfügen von Leerzeichen definiert, die \dotfilles ihnen ermöglichen, ihre Antworten zu schreiben: \rep, \replarge, \repLargefür kurze und lange Antworten:

\newcommand{\rep}{\noindent \dotfill 

 \noindent\dotfill

\noindent\dotfill

\noindent\dotfill

}
\newcommand{\repshort}\rep \rep 

\newcommand{\repLarge}\rep \rep \rep \rep

Meine Fragen sind also:

  1. gibt es eine Möglichkeit, diese Befehle zu verbessern?
  2. wie erreiche ich beim Kompilieren zwei PDF-Versionen: Eine mit den durch die Befehle erzeugten Leerzeichen und eine ohne die Leerzeichen?

Antwort1

Hier ist eine schnelle und einfache Lösung für die zweite Frage und ein Link zu fortgeschritteneren Lösungen (die Kommentare oben enthalten auch nützliche Links für beide Fragen):

a) Erzeugen Sie zwei Hauptdateien, in denen Sie (1) die Befehle mit den Leerzeichen angeben und (2) dieselben Befehle als leere Befehle angeben (Sie können auch einfach etwas anhängen \renewcommand{\rep}{}und dies aus- oder einkommentieren).

ODER

b) Verwenden Sie Parameter für Ihr Dokument und verwenden Sie ein Makefile. Sehen Sie sich die Antworten aufÜbergeben von Parametern an ein Dokumentzur Inspiration. Hier ist ein Beispiel, wie ein solches Makefile aussehen könnte und wie Ihre .tex-Datei es nutzen kann:

Makefile:

default: Exercise.pdf Solution.pdf

Exercise.pdf: *.tex
    -rm Exercise.pdf
    pdflatex -file-line-error --jobname=Exercise '\def\isexercise{1} \input{main.tex}'
    pdflatex -file-line-error --jobname=Exercise '\def\isexercise{1} \input{main.tex}'

Solution.pdf: *.tex
    -rm Solution.pdf
    pdflatex -file-line-error --jobname=Solution '\input{main.tex}'
    pdflatex -file-line-error --jobname=Solution '\input{main.tex}'

main.tex:

\documentclass{article}

\newcommand{\rep}{}

\ifdefined\isexercise
  \renewcommand{\rep}{
        \noindent\dotfill 

        \noindent\dotfill

        \noindent\dotfill

        \noindent\dotfill
  }
\fi

\begin{document}

Exercise 1: \rep

\end{document}

verwandte Informationen