Why is it not possible to define a new environment that extends a verbatim environment? Consider, e.g.:
\documentclass{article} \newenvironment{myverbatim}{\tiny\begin{verbatim}}{\end{verbatim}} \begin{document} \begin{myverbatim} test \end{myverbatim} \end{document} Compiling with pdflatex gives the error:
Runaway argument? ^^M test^^M\end{myverbatim}^^M\end{document}^^M^^M ! File ended while scanning use of \@xverbatim. <inserted text> \par (A motivation for this question can be found here: "Format a verbatim paragraph". From which it should be clear that I cannot use the listings or fancyvrb packages)
It would be nice with a basic and perhaps more detailed explanation (for this particular case and the reason for the error message) than what is given in, for instance, this discussion: "Why doesn’t verbatim work within...", and if there could be workarounds for simple cases like the one in this example..
Edit1:
Based on the answers so far, I feel that I need to be more precise about my case: I am trying to get the following code to work somehow (Confer with "Format a verbatim paragraph" for more details)
\documentclass{article} \makeatletter \begingroup \catcode`|=0 \catcode`[=1 \catcode`]=2 \catcode`\{=12 \catcode`\}=12 \catcode`\\=12 |gdef|myvr@xverbatim#1\end{myverbA}[#1|end[myverbA]] |endgroup \newenvironment{myverbA}{% \let\@xverbatim=\myvr@xverbatim \verbatim }{% } \makeatother \newenvironment{myverbB}{\tiny\begin{myverbA}}{\end{myverbA}} \begin{document} \begin{myverbB} test \end{myverbB} \end{document} Edit2:
Based on egreg's answer, I tried the following:
\documentclass{article} \usepackage{etoolbox} \makeatletter \begingroup \catcode`|=0 \catcode`[=1 \catcode`]=2 \catcode`\{=12 \catcode`\}=12 \catcode`\\=12 |gdef|myvr@xverbatim#1\end{myverbA}[#1|end[myverbA]] |endgroup \newenvironment{myverbA}{% \let\@xverbatim=\myvr@xverbatim \verbatim }{% } \newenvironment{myverbB} {\preto\verbatim@font{\tiny} \myverbA} {\endmyverbA} \makeatother \begin{document} \begin{myverbB} test \end{myverbB} \end{document} which produces the error:
Runaway argument? ^^M test^^M\end{myverbB}^^M\end{document}^^M^^M ! File ended while scanning use of \@xverbatim. <inserted text> \par 

egreg's solution, that would not fit into the comment under under his answer :) I don't feel it would be appropriate to post it as a follow-up question..