Fehler beim Verwenden des neuen, in der Präambel erstellten Befehls \reponse.
Was ist falsch an der Definition des neuen Befehls? Er muss mit einem Kommentarpaket verknüpft werden ...
Das Beispiel, das funktioniert, scheint das gleiche zu sein:So verwenden Sie `\begin` und `\end` in einem neuen Befehl
Danke für die Hilfe.
Fehler: Datei wurde beim Scannen beendet. Verwendung von \next \end{answer} bei Verwendung des Befehls \reponse
\documentclass{article}
\usepackage{comment}
\includecomment{answer}
\newcommand{\reponse}[1]{%
\begin{answer}
{\textbf{The answer is :}#1}
\end{answer}}
\begin{document}
% i would like to write :
\reponse{ok}
\reponse{ok}
% ...
% instead of :
\begin{answer}
{\textbf{The answer is:} ok}
\end{answer} <- error line
\begin{answer}
{\textbf{The answer is:} ok}
\end{answer}
%...
\end{document}
Antwort1
Wie @egreg sagte, können Sie comment
Umgebungen nicht als Argumente verwenden. Die Schwierigkeit ergibt sich aus einer besonderen Bedingung, die in der Paketdokumentation angegeben ist:Die öffnenden und schließenden Befehle sollten in einer eigenen Zeile stehen. Keine Leerzeichen am Anfang, nichts danach.
Aber hier ist, was ich vorschlagen kann (Der Trick kommt aus Abschnitt2 Verwendungder comment
Dokumentation):
\documentclass[english]{article}
\usepackage{comment}
\usepackage{babel}
\includecomment{answer}
\makeatletter
\newcommand{\reponse}[1]{\@bsphack\@esphack}
\makeatother
\begin{answer}
\renewcommand{\reponse}[1]{\textbf{The answer is :}#1}
\end{answer}
\begin{document}
% i would like to write :
\reponse{ok}
\reponse{ok}
% ...
% instead of :
\begin{answer}
{\textbf{The answer is:} ok}
\end{answer}
\begin{answer}
{\textbf{The answer is:} ok}
\end{answer}
%...
\end{document}
BEARBEITENUnter Berücksichtigung des Kommentars von UlrichDiez.