Usando \ verbatim como parte de um argumento para uma macro?
-
03-07-2019 - |
Pergunta
A maioria das coisas que eu queria fazer na LaTeX, quer tenham sido direta ou facilmente encontrado na web, mas este foi me stumping.
Eu tenho uma 'solução' macro: aplicar alguma comum formatação a cada solução:
\newcommand\solution[1]{{\\ \\* \bf Solution.}#1\qed \newpage}
O que tem funcionado muito bem até agora, mas agora eu queria incluir um desenho que eu fiz rapidamente usando 'ASCII Art', então eu gostaria de usar \ verbatim. Mas ele não funciona, ela produz os seguintes erros:
Runaway argument? ... ! File ended while scanning use of \@xverbatim.
Pelo que li na "Introdução não tão curto para LaTeX", \ verbatim não pode ser usado dessa maneira. Eu supor que há uma maneira melhor de fazer o que estou tentando fazer?
Solução
Você pode tentar mudar \newcommand
para \newenvironment
e, em seguida, usar algo como
\begin{solution}
\begin{verbatim}
[ascii art here]
\end{verbatim}
\end{solution}
Outras dicas
Esta é uma FAQ .
Use o cprotect pacote
por exemplo. (Com tcolorbox mas está trabalhando com a maior parte do newcommand criado)
\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}
}