名前: 北見 けん 日時: 2004-02-26 17:41:37 IPアドレス: 211.128.71.*
>>26477 一言余計だったせいで、コメント付けづらくしてしまったでしょうか? マクロを組んでみました。 LaTeXの標準クラスと互換性があるように、というのと、 応用が利くような一般的な枠組みを、という点に気をつけました。 TeXがマークを何系統も扱えるようになっていればもっと簡単なのですが。 \renewcommand\@themark{{}{}{}}% LaTeXの2系統に加えてもう一つ。 \newcommand\@genemark[4]{% #1:マーク上書き用マクロ。#2#3#4:新規マーク \begingroup \let\label\relax \let\index\relax \let\glossary\relax \unrestored@protected@xdef\@themark{% \expandafter#1\@themark{#2}{#3}{#4}}% \@temptokena \expandafter{\@themark}% \mark{\the\@temptokena}% \endgroup \if@nobreak\ifvmode\nobreak\fi\fi} \newcommand\markAB[2]{\@genemark\@markAB{#1}{#2}{}} \newcommand\@markAB[6]{{#4}{#5}{#3}}% マーク上書き用マクロ。 \newcommand\markB[1]{\@genemark\@markB{}{#1}{}} \newcommand\@markB[6]{{#1}{#5}{#3}}% マーク上書き用マクロ。 \newcommand\markC[1]{\@genemark\@markC{}{}{#1}} \newcommand\@markC[6]{{#1}{#2}{#6}}% マーク上書き用マクロ。 \let\markboth\markAB% LaTeXの\markbothをエミュレート \let\markright\markB% LaTeXの\markrightをエミュレート \let\textpage\markC \newcommand\textpagemark[1]{\expandafter\@thirdofthree#1\@empty\@empty} \renewcommand\@leftmark[3]{#1} \renewcommand\@rightmark[3]{#2} これで、あとはヘッダやフッタ内で 教科書P.\textpagemark\firstmark〜P.\textpagemark\botmark のようにすればよろしいかと。
この書き込みへの返事: