使用序言中建立的新指令 \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 的評論。