Re: 下線のこと

名前: みなも
日時: 2007-06-28 15:01:01
IPアドレス: 202.233.255.*

>>48493 udline の作者の みなも です。 複数段落にまたがって,つまり,途中に改段落(空行 または \par)が入っていても 機能する下線マクロですが,作ろうと思えば作れます。 たとえば,udline.sty の \ul を改造するならこんな感じ。 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ここから %%%%%%%%%%%%%%%%%%%%%%%%%%%%% \makeatletter% ↓ \ul の定義に 限定解除の \long を付加 \long\def\ulex#1{\leavevmode\@dolist#1\@endul} \def\@d@list{% udline の改行可能タイプマクロ共通の内部マクロ \ifx\@tugi\@endul \let\@tugi\relax \else\ifx\@tugi\mbox \let\@tugi\@hogo \else\ifx\@tugi\eiji \let\@tugi\@eiji \else\ifx\@tugi\par % 改段落があったときの \par\let\@tugi\@dolist % 処理を追加 \else \@udline\let\@tugi\@dolist \fi \fi \fi \fi \@tugi} \makeatother %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ここまで %%%%%%%%%%%%%%%%%%%%%%%%%%%%% udline.sty を読み込んだ「あと」で上記のマクロ定義をプリアンブルに入れてください。 実行例は↓こんな感じで。 \begin{document} \ulex{あああああああああああああああああああああ ああああああああああああああああああああああああ ああああああああああああああああああああああああ ああああああああああああああああああああああああ いあああああああああああああああああああああああ ああああああああああああああああああああああああ ああああああああああああああああああああああああ ああああああああああああああああああああああああ} \end{document} ただ,下線に限らず「複数の段落にまたがった処理」は 閉じ括弧のつけ忘れに対する安全装置である    「マクロの引数中での改段落は原則禁止」 という限定を解除することになりますので,エラーがわかりにくくなる 等の弊害を生みあまりよくないように思います。(正直ちょっと怖いです。) もちろん使う人がわかった上で使うのなら問題ないのですが。。。 というわけで,udline.sty としては「改段落あり」に正式対応はしませんが, 必要性が高いようでしたら,上記の改造を施してお使い下さい(もちろん自己責任)。

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます。適宜改行を入れてください)