newenvironment がうまくいきません

newenvironment がうまくいきません

- Higashi Keigo の投稿
返信数: 2
プリアンブルにて

\newenvironment{exercise}%
{\begin{center}}%
{\end{center}}%

\newenvironment{renshu}%
{\begin{verbatim}}%
{\end{verbatim}}%

として、本文で

\begin{exercise}
Exercise
\end{exercise}

\begin{renshu}
Renshu
\end{renshu}

しています。
exercise の方は問題なく中央寄せになるのですが、verbatim ができません。
エラーメッセージは \begin{renshu} on input line .. ended by \end{document}.
です。

本当にやりたい事は、verbatim にたくさんオプションをつけたものをディフォルトとして設定することです。

よくわかりません。よろしくおねがいします。

Higashi Keigo への返信

Re: newenvironment がうまくいきません

- 匿 名 の投稿
verbatim 環境は「普通の」環境ではないので,
「verbatim 環境を含むような環境」はそのような
素朴なやり方では作れません.
# verbatim 環境が「普通の」環境ではないという点に
# ついては,マクロ作成について「まともに」扱った
# (少なくとも,カテゴリーコードに関する説明がある)
# 解説書を参照してください.

本来ならカテゴリーコードの変更を伴うマクロについての
学習を行ってもらうところですが,「対症療法」でよければ
次のように verbatim パッケージを使えば済むでしょう.

\documentclass{article}
\usepackage{verbatim}
\newenvironment{renshu}%
  {\verbatim}%
  {\endverbatim}%
\begin{document}
\begin{renshu}
\newenvironment{renshu}%
  {\verbatim}%
  {\endverbatim}%
\end{renshu}
\end{document}
匿 名 への返信

Re: newenvironment がうまくいきません

- Higashi Keigo の投稿
ありがとうございました。全くの勉強不足ですが、ご教授頂いた対処療法で、やりたかったことはできました。

\documentclass{article}
\usepackage{fancyvrb}
\newenvironment{renshu}%
{\Verbatim[frame=single, framesep=2mm, xleftmargin=5mm]}%
{\endVerbatim}%

\begin{document}
\begin{renshu}
\begin{renshu}%
blah blah
\end{renshu}
\end{document}