発言者: tDB
発言日: 2006 05/13 20:10
発言元: 125.2.16.242
> edaenumerate環境内にflushright環境を入れると下記のエラーになります。
> このような使い方は想定外のことでしょうか。
回避法は用意してありますが,その前に
flushright環境内が1行だけ
の場合は
\hfill
で右寄せするのが簡単です。
----> re4663a.tex
どうしても flushright など,list系環境を edaenumerate環境内で使いたいときは
次の2点の修正が必要です。
1) \useitemfalse を宣言する
2) edaenumerate環境における \item は \edaitem とする
----> re4663b.tex
以下,後者の理由を述べます。
edaenumerate環境で,項目を並べるのに \item を用いていますが,
これは「誤魔化し」なのです。
すなわち LaTeX本来の \item とは
似ても似つかぬものを
形式を揃えるために \item と僭称しているに過ぎません。
\item などと僭称せず,\edaitem としておくのがつつましい態度というべきです。
それを形式を揃えるために,\item と僭称する態度に出れば
本来の list系環境
と両立できるはずはありません。
そこで,恭順な姿勢を示すコマンドが
\useitemfalse
でして,
\item は LaTeX本来のものとしておき,
edaenumerate の項目並べは \item ではなく \edaitem
を用います。
こうしておけば,list系環境における \item は
本来のままで共存できることとなります。
(注)flushright環境は,list系環境のひとつです。その定義は
\def\flushright{\trivlist \raggedleft\item\relax}
となっており,その中に \item が潜んでいます。
これを \edaitem に切り替えてしまっては怒られて当然ということです。
% --- re4663a.tex ------------------------------
\documentclass{jarticle}
\usepackage[notMy]{emath}
\usepackage{emathEy}
\begin{document}
\begin{edaenumerate}
\item aaa
\hfill いいいいい
\item aaa
\hfill いいいいい
\end{edaenumerate}
\end{document}
% --- re4663b.tex ------------------------------
\documentclass{jarticle}
\usepackage[notMy]{emath}
\usepackage{emathEy}
\begin{document}
\useitemfalse
\begin{edaenumerate}
\edaitem aaa
\begin{flushright}
いいいいい
\end{flushright}
\edaitem aaa
\begin{flushright}
いいいいい
\end{flushright}
\end{edaenumerate}
\end{document}
▼関連発言
│
└◆4663:edaenumerateでflushright [石原 守] 05/13 19:27
└◆4664:Re:edaenumerateでflushright [tDB] 05/13 20:10
└◆4665:Re[2]:edaenumerateでflushright [石原 守] 05/13 20:21<-last