X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=src%2Fltjclasses.dtx;h=2d3d1c986e8e4f8367363557234976cd5121f03b;hb=ab23049deb6fb90ca689fdf4924b3783f08f8f2e;hp=723a15d26ab0b5e58995701debebb14954be6067;hpb=a9204615251ea68985c2ff0cfec01eddf1a7af7e;p=luatex-ja%2Fluatexja.git diff --git a/src/ltjclasses.dtx b/src/ltjclasses.dtx index 723a15d..2d3d1c9 100644 --- a/src/ltjclasses.dtx +++ b/src/ltjclasses.dtx @@ -10,7 +10,7 @@ % % \fi % -% \CheckSum{4478} +% \CheckSum{4509} %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z @@ -77,7 +77,14 @@ % \changes{v1.6}{2006/06/27}{フォントコマンドを修正。ありがとう、ymtさん。} % \changes{v1.6-ltj}{2011/09/27}{jclasses.dtx v1.6 をベースにLua\LaTeX-ja用に修正。} % \changes{v1.6-ltj-2}{2013/06/06}{luatexja.cfgに対応.} -% \changes{v1.6-ltj-3}{2014/06/08}{縦組みクラスの時のgeometry.styに対応.} +% \changes{v1.6-ltj-3}{2014/06/08}{縦組クラスの時のgeometry.styに対応.} +% \changes{v1.6-ltj-4}{2014/06/30}{組方向の変更箇所を現行のLua\TeX-jaの仕様に合うように修正.} +% \changes{v1.6-ltj-5}{2014/07/02}{\cs{ifydir}, \cs{iftdir}を使わないように修正.} +% \changes{v1.6-ltj-6}{2014/07/28}{縦組クラスでlltjext.styを読み込むように修正.} +% \changes{v1.6-ltj-7}{2014/11/15}{縦組クラスとeveryshi.styとの相性が悪い問題を修正.} +% \changes{v1.6-ltj-8}{2014/11/22}{縦組時のgeometry.styへの対応を別ファイル(lltjp-geometry.sty)に分離.それに伴いv1.6-ltj-3での変更を削除.} +% \changes{v1.6-ltj-9}{2015/01/01}{縦組クラスの日付出力でエラーになることなどを修正.} +% \changes{v1.6-ltj-10}{2015/10/18}{Lua\TeX\ 0.81.0に伴うプリミティブ名の変更に対応.} % \fi % % \iffalse @@ -107,16 +114,14 @@ %<11pt&bk>\ProvidesFile{ltjtbk11.clo} %<12pt&bk>\ProvidesFile{ltjtbk12.clo} % - [2014/06/08 v1.6-ltj-3 + [2015/10/18 v1.6-ltj-10 % Standard LuaLaTeX-ja class] %<10pt|11pt|12pt> Standard LuaLaTeX-ja file (size option)] %<*driver> ] \documentclass{ltjltxdoc} \GetFileInfo{ltjclasses.dtx} -\usepackage[kozuka-pr6n]{luatexja-preset} -\usepackage{unicode-math} -\setmathfont{Latin Modern Math} +\usepackage[ipaex,nfssonly]{luatexja-preset} \usepackage[unicode]{hyperref} \title{Lua\LaTeX-ja用\texttt{jclasses}互換クラス} \author{Lua\TeX-jaプロジェクト} @@ -164,7 +169,7 @@ % \end{quotation} % のエラーが起こった場合は、|lualatex-math|パッケージを読み込んでみて下さい。 % \item 出力PDFの用紙サイズが自動的に設定されるようにしてあります。 -% \item 縦組みクラスにおいて、|geometry|パッケージを読み込んだときに意図通りにならない問題に対応しました。 +% %%%\item 縦組みクラスにおいて、|geometry|パッケージを読み込んだときに意図通りにならない問題に対応しました。% % \end{itemize} % % \section{Lua\TeX-ja の読み込み} @@ -173,10 +178,6 @@ %<*article|report|book> \RequirePackage{luatexja} % \end{macrocode} -% 縦組みの場合は|geometry|対応のために|filehook|も読み込んでおきます。 -% \begin{macrocode} -%\RequirePackage{filehook} -% \end{macrocode} % % \section{オプションスイッチ} % ここでは、後ほど使用するいくつかのコマンドやスイッチを定義しています。 @@ -320,15 +321,6 @@ \setlength\paperheight {257mm} \setlength\paperwidth {182mm}} % \end{macrocode} -% 縦組みクラスについて、|geometry|パッケージが読み込まれると|\textwidth|と|\textheight|が -% ひっくり返ってしまう問題に対処します。 -% \begin{macrocode} -%<*tate> -\AtEndOfPackageFile{geometry}{% - \setlength{\@tempdima}{\textheight}% - \setlength{\textheight}{\textwidth}% - \setlength{\textwidth}{\@tempdima}} -% % % \subsection{サイズオプション} % 基準となるフォントの大きさを指定するオプションです。 @@ -392,13 +384,33 @@ % \changes{v1.0g}{1997/01/25}{Insert \cs{hbox}, to switch tate-mode.} % \changes{v1.1d}{1997/02/05}{開始ページがおかしくなるのを修正} % \changes{v1.1f}{1997/07/08}{縦組時にベースラインがおかしくなるのを修正} +% +% \changes{v1.6-ltj-4}{2014/06/30}{本文の組方向を \cs{AtBeginDocument} で +% 変更することができなくなったことに対応} % \begin{macrocode} \DeclareOption{tate}{% - \AtBeginDocument{\tate\message{《縦組モード》}% - \adjustbaseline}% + \tate\AtBeginDocument{\message{《縦組モード》}\adjustbaseline}% } % \end{macrocode} % +% 縦組クラスと|everyshi|パッケージの相性が悪い問題に対処します。 +% この処理は、ZRさんの|pxeveryshi|パッケージと実質的に同じ内容です。 +% \begin{macrocode} +%<*tate> +\AtEndOfPackageFile{everyshi}{% + \def\@EveryShipout@Output{% + \setbox8\vbox{% + \yoko + \@EveryShipout@Hook + \@EveryShipout@AtNextHook + \global\setbox\luatexoutputbox=\box\luatexoutputbox + }% + \gdef\@EveryShipout@AtNextHook{}% + \@EveryShipout@Org@Shipout\box\luatexoutputbox + }} +% +% \end{macrocode} +% % \subsection{両面、片面オプション} % twosideオプションが指定されると、両面印字出力に適した整形を行ないます。 % \begin{macrocode} @@ -493,38 +505,8 @@ % % \end{macrocode} % -% \subsection{オプションの実行} -% オプションの実行、およびサイズクラスのロードを行ないます。 -% \begin{macrocode} -%<*article|report|book> -%<*article> -%\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final,tate} -%\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final} -% -%<*report> -%\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final,openany,tate} -%\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final,openany} -% -%<*book> -%\ExecuteOptions{a4paper,10pt,twoside,onecolumn,final,openright,tate} -%\ExecuteOptions{a4paper,10pt,twoside,onecolumn,final,openright} -% -\ProcessOptions\relax -%\input{ltjtbk1\@ptsize.clo} -%\input{ltjtsize1\@ptsize.clo} -%\input{ltjbk1\@ptsize.clo} -%\input{ltjsize1\@ptsize.clo} -% \end{macrocode} -% 縦組用クラスファイルの場合は、ここで\file{plext.sty}が読み込まれていました。 -% Lua\TeX-jaでどうなるかは未定です。 -% \changes{v1.0e}{1996/03/21}{\cs{usepackage} to \cs{RequirePackage}} -% \begin{macrocode} -%%\RequirePackage{plext} -% -% \end{macrocode} -% -% \section{フォント} -% +% \subsection{フォントメトリックの変更} +% % Lua\LaTeX-jaの標準では、OTFパッケージ由来のメトリックが使われるようになっています。 % 本クラスでは、「p\TeX の組版と互換性をできるだけ持たせる」例を提示するため、 % \begin{itemize} @@ -542,7 +524,9 @@ % 何らかの理由で非埋め込みフォントが正しく利用できない場合にのみ |luatexja.cfg| によって % セットされるものです。 % -% +% \changes{v1.6-ltj-9}{2015/01/01}{サイズクラスのロード前にメトリックの変更を行わないと, +% \cs{Cht}等の値が反映されないのでこの場所に移動させました.} +% % \begin{macrocode} %<*article|report|book> \directlua{luatexbase.add_to_callback('luatexja.load_jfm', @@ -557,6 +541,39 @@ % % \end{macrocode} % +% \subsection{オプションの実行} +% オプションの実行、およびサイズクラスのロードを行ないます。 +% \begin{macrocode} +%<*article|report|book> +%<*article> +%\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final,tate} +%\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final} +% +%<*report> +%\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final,openany,tate} +%\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final,openany} +% +%<*book> +%\ExecuteOptions{a4paper,10pt,twoside,onecolumn,final,openright,tate} +%\ExecuteOptions{a4paper,10pt,twoside,onecolumn,final,openright} +% +\ProcessOptions\relax +%\input{ltjtbk1\@ptsize.clo} +%\input{ltjtsize1\@ptsize.clo} +%\input{ltjbk1\@ptsize.clo} +%\input{ltjsize1\@ptsize.clo} +% \end{macrocode} +% 縦組用クラスファイルの場合は、ここで\file{plext.sty}も読み込みます。 +% \changes{v1.0e}{1996/03/21}{\cs{usepackage} to \cs{RequirePackage}} +% \changes{v1.6-ltj-6}{2014/07/28}{Lua\TeX-jaでは,代わりに\file{lltjext.sty}を読み込みま +% す.これは\file{plext.sty}をLua\TeX-ja用に書きなおしたものです.} +% \begin{macrocode} +%\RequirePackage{lltjext} +% +% \end{macrocode} +% +% \section{フォント} +% % ここでは、\LaTeX{}のフォントサイズコマンドの定義をしています。 % フォントサイズコマンドの定義は、次のコマンドを用います。 % @@ -791,6 +808,8 @@ \setlength\columnsep{10\p@} \fi \setlength\columnseprule{0\p@} +\setlength{\@tempdima}{\paperwidth} +\setlength{\@tempdimb}{\paperheight} % \end{macrocode} % \end{macro} % \end{macro} @@ -799,15 +818,22 @@ % \begin{macro}{\pdfpageheight} % 出力のPDFの用紙サイズをここで設定しておきます。 % |tombow|が真のときは2インチ足しておきます。 +% +% [2015-10-18 LTJ] Lua\TeX\ 0.81.0ではプリミティブの名称変更がされたので, +% それに合わせておきます. +% % \begin{macrocode} -\setlength{\@tempdima}{\paperwidth} -\setlength{\@tempdimb}{\paperheight} \iftombow \advance \@tempdima 2in \advance \@tempdimb 2in \fi -\setlength{\pdfpagewidth}{\@tempdima} -\setlength{\pdfpageheight}{\@tempdimb} +\ifdefined\pdfpagewidth + \setlength{\pdfpagewidth}{\@tempdima} + \setlength{\pdfpageheight}{\@tempdimb} +\else + \setlength{\pagewidth}{\@tempdima} + \setlength{\pageheight}{\@tempdimb} +\fi % \end{macrocode} % \end{macro} % \end{macro} @@ -2137,7 +2163,7 @@ \newcommand{\maketitle}{\par \begingroup \renewcommand{\thefootnote}{\fnsymbol{footnote}}% - \def\@makefnmark{\hbox{\ifydir $\m@th^{\@thefnmark}$ + \def\@makefnmark{\hbox{\unless\ifnum\ltjgetparameter{direction}=3 $\m@th^{\@thefnmark}$ \else\hbox{\yoko$\m@th^{\@thefnmark}$}\fi}}% %<*tate> \long\def\@makefntext##1{\parindent 1\zw\noindent @@ -3054,7 +3080,7 @@ \advance\@enumdepth\@ne \edef\@enumctr{enum\romannumeral\the\@enumdepth}% \list{\csname label\@enumctr\endcsname}{% - \iftdir + \ifnum\ltjgetparameter{direction}=3 \ifnum \@listdepth=\@ne \topsep.5\normalbaselineskip \else\topsep\z@\fi \parskip\z@ \itemsep\z@ \parsep\z@ @@ -3082,7 +3108,7 @@ % \begin{macrocode} \newcommand{\labelitemi}{\textbullet} \newcommand{\labelitemii}{% - \iftdir + \ifnum\ltjgetparameter{direction}=3 {\textcircled{~}} \else {\normalfont\bfseries\textendash} @@ -3107,7 +3133,7 @@ \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% \expandafter \list{\csname \@itemitem\endcsname}{% - \iftdir + \ifnum\ltjgetparameter{direction}=3 \ifnum \@listdepth=\@ne \topsep.5\normalbaselineskip \else\topsep\z@\fi \parskip\z@ \itemsep\z@ \parsep\z@ @@ -3132,7 +3158,7 @@ % \begin{macrocode} \newenvironment{description} {\list{}{\labelwidth\z@ \itemindent-\leftmargin - \iftdir + \ifnum\ltjgetparameter{direction}=3 \leftmargin\leftskip \advance\leftmargin3\Cwd \rightmargin\rightskip \labelsep=1\zw \itemsep\z@ @@ -3369,11 +3395,11 @@ % \begin{macrocode} \long\def\@makecaption#1#2{% \vskip\abovecaptionskip - \iftdir\sbox\@tempboxa{#1\hskip1\zw#2}% + \ifnum\ltjgetparameter{direction}=3 \sbox\@tempboxa{#1\hskip1\zw#2}% \else\sbox\@tempboxa{#1: #2}% \fi \ifdim \wd\@tempboxa >\hsize - \iftdir #1\hskip1\zw#2\relax\par + \ifnum\ltjgetparameter{direction}=3 #1\hskip1\zw#2\relax\par \else #1: #2\relax\par\fi \else \global \@minipagefalse @@ -4078,17 +4104,20 @@ % % \begin{macro}{\today} % 縦組の場合は、漢数字で出力します。 +% +% \changes{v1.6-ltj-9}{2015/01/01}{縦組では,この漢数字による日付出力でエラーになりました. +% Lua\TeX-ja では,\cs{kansuji}の後に\cs{number}を続けることは出来ないので\cs{number}を削除しました.} % \begin{macrocode} \def\today{{% - \iftdir + \ifnum\ltjgetparameter{direction}=3 \if西暦 - \kansuji\number\year 年 - \kansuji\number\month 月 - \kansuji\number\day 日 + \kansuji\year 年 + \kansuji\month 月 + \kansuji\day 日 \else - 平成\ifnum\heisei=1 元年\else\kansuji\number\heisei 年\fi - \kansuji\number\month 月 - \kansuji\number\day 日 + 平成\ifnum\heisei=1 元年\else\kansuji\heisei 年\fi + \kansuji\month 月 + \kansuji\day 日 \fi \else \if西暦