5 Stimmen

Verwendung von \verbatim als Teil eines Arguments für ein Makro?

Die meisten Dinge, die ich in LaTeX machen wollte, waren entweder einfach oder im Internet leicht zu finden, aber diese Aufgabe hat mich verblüfft.

Ich habe eine Makro-'Lösung': Ich möchte auf jede Lösung eine gemeinsame Formatierung anwenden:

\newcommand\solution[1]{{\\ \\* \bf Solution.}#1\qed \newpage}

Das hat bisher gut funktioniert, aber jetzt wollte ich eine Zeichnung einfügen, die ich schnell mit 'ASCII Art' gemacht habe, also würde ich gerne \verbatim. Aber es funktioniert nicht, sondern erzeugt die folgenden Fehler:

Runaway argument?
...
! File ended while scanning use of \@xverbatim.

Nach dem, was ich in der "Nicht so kurzen Einführung in LaTeX" gelesen habe, \verbatim kann auf diese Weise nicht verwendet werden. Ich nehme an, es gibt einen besseren Weg, um das zu tun, was ich versuche zu tun?

3voto

Jouni K. Seppänen Punkte 39674

Dies ist eine FAQ .

2voto

jtxx000 Punkte 46

Sie könnten versuchen, die \newcommand a \newenvironment und verwenden Sie dann etwas wie

\begin{solution}
  \begin{verbatim}
    [ascii art here]
  \end{verbatim}
\end{solution}

0voto

fdulau Punkte 1

Verwenden Sie das Paket cprotect

z.B. (mit tcolorbox, aber es funktioniert mit den meisten der neu erstellten Befehle)

\usepackage{tcolorbox}
\usepackage{cprotect}

\newcommand{\tcb}[1] {
 \begin{tcolorbox}   [arc=0mm,colback=bginf,coltitle=black!70!black,colframe=black!30!white,width=\linewidth,fontupper=\bfseries\small,halign title=flush center,halign upper=center]
#1
\end{tcolorbox}
}

\cprotect\tcb{\scriptsize
     \begin{verbatim}
...
     \end{verbatim}
}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X