问题

问题

请考虑以下情形:

  • 我定义一个包mypac.sty如下
% mypac.sty
\NeedsTeXFormat{LaTeX2e}[1994/06/01] 
\ProvidesPackage{mypac}[2020/10/08 v0.01 LaTeX package for my own purpose]  

\RequirePackage{amsmath}
\RequirePackage{docmute}

\newcommand{\Question}[1]{#1}
\newenvironment{Answer}{}{}

\endinput 
% mypac.sty
  • 我有很多独立文件,例如,item-01.tex如下所示。在编写(开发)阶段,我不想渲染问题,所以我将其重新定义\Question为空。它有效!
% item-01.tex
\documentclass[preview,border=12pt,varwidth]{standalone}
\usepackage{mypac}
\renewcommand{\Question}[1]{% intentionally made empty
}

\begin{document}
\Question{Solve $2x=4$.}
\Answer
$\begin{aligned}[t]
2x&=4\\
x &= 4-2 \\
  &= 2
\end{aligned}$\\
A lucky answer!
\endAnswer
\end{document}
  • 我想创建questions.tex一个只包含问题而没有答案的。换句话说,我想评论夹在Answer环境中的内容。
% questions.tex 
\documentclass{book}
\usepackage{mypac}
\usepackage{comment}
\raggedbottom

\newcommand{\Input}[2][.]{%
    \renewenvironment{Answer}{\begin{comment}}{\end{comment}}%
    \input{"#1/#2"}}
    
\begin{document}
\begin{enumerate}
\item \Input{item-01} 
\end{enumerate}
\end{document}

问题

如何在将文件导入到时删除、禁用或注释Answer中定义的环境内容?我希望我的问题可以理解。只要我的场景可以实现,也欢迎任何其他技巧。item-01.texquestions.tex

答案1

这是你想要的嗎?

韓國

% mypac.sty
\NeedsTeXFormat{LaTeX2e}[1994/06/01] 
\ProvidesPackage{mypac}[2020/10/08 v0.01 LaTeX package for my own purpose]  

\RequirePackage{amsmath}
\RequirePackage{docmute}
\RequirePackage{comment}

\newcommand{\Question}[1]{#1}
\includecomment{Answer}%

\endinput 
% mypac.sty

项目-01.tex

% item-01.tex

\documentclass[preview,border=12pt,varwidth]{standalone}
\usepackage{mypac}
\renewcommand{\Question}[1]{}% intentionally made empty
  
\begin{document}

\Question{Solve $2x=4$.}
\begin{Answer}
$\begin{aligned}[t]
2x&=4\\
x &= 4-2 \\
  &= 2
\end{aligned}$\\
A lucky answer!
\end{Answer}

\end{document}

问题.tex

% questions.tex 
\documentclass{book}
\usepackage{mypac}
\raggedbottom

\begin{document}
\excludecomment{Answer}
\begin{enumerate}
\item \input{item-01} 
\end{enumerate}
\end{document}

相关内容