プレアンブルで作成された新しいコマンド \reponse の使用中にエラーが発生しました。
newcommand の定義の何が問題なのでしょうか? コメント パッケージにリンクされている必要があります...
動作する例は同じようです:新しいコマンドで `\begin` と `\end` を使用する方法
手伝ってくれてありがとう。
エラー: コマンド \reponse の使用中に \next \end{answer} の使用をスキャン中にファイルが終了しました
\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}
答え1
@egreg が言ったように、環境を引数として使用することはできませんcomment
。問題は、パッケージのドキュメントに記載されている特別な条件に起因します。開始コマンドと終了コマンドは、それぞれ別の行に表示する必要があります。先頭のスペースや、その後に続くスペースは不要です。
しかし、ここで私が提案できることは(トリックはセクションから来ています2 使用方法ドキュメントのcomment
:
\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}
編集UlrichDiez 氏のコメントを考慮に入れて。