X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=src%2Fltjsclasses.dtx;h=76fe37f27e8b110501723240f821c579374075ba;hb=eb118f3e5ea0852407b5261817700401699528b9;hp=f8acc836ddfbde53ff0ea701abee599e7146d3be;hpb=acfcadaf0e0195c0338276b5641c9ecb39e25c3b;p=luatex-ja%2Fluatexja.git diff --git a/src/ltjsclasses.dtx b/src/ltjsclasses.dtx index f8acc83..76fe37f 100644 --- a/src/ltjsclasses.dtx +++ b/src/ltjsclasses.dtx @@ -22,7 +22,7 @@ % ----------------------------------------- % % \fi -% \CheckSum{5199} +% \CheckSum{5229} %% \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 @@ -50,11 +50,12 @@ %<*driver> \ProvidesFile{ltjsclasses.dtx} % - [2014/02/07 ] + [2015/10/18 ] %<*driver> \documentclass{ltjsarticle} \usepackage{doc} -\usepackage[kozuka-pr6n]{luatexja-preset} +\usepackage{fontspec} +\usepackage[ipaex,nfssonly]{luatexja-preset} \usepackage{unicode-math} \setmathfont{Latin Modern Math} \usepackage[unicode]{hyperref} @@ -130,7 +131,11 @@ % これがあると |grfext.sty| を読み込んだ際にエラーを引き起こすので削除しました。 % \end{itemize} % -% [2014-02-07] jsclasses 2014-02-07 ベースにしました. +% [2014-02-07 LTJ] jsclasses 2014-02-07 ベースにしました. +% +% [2014-07-26 LTJ] 縦組用和文フォントの設定を加えました. +% +% [2014-12-24 LTJ] |\@setfontsize| 中の和欧文間空白の設定で if 文が抜けていたのを直しました. % % \StopEventually{} % @@ -709,6 +714,9 @@ % \begin{macro}{\pdfpageheight} % 出力のPDFの用紙サイズをここで設定しておきます。 % |tombow| が真のときは2インチ足しておきます。 +% +% [2015-10-18 LTJ] Lua\TeX\ 0.81.0ではプリミティブの名称変更がされたので, +% それに合わせておきます. % \begin{macrocode} \setlength{\@tempdima}{\paperwidth} \setlength{\@tempdimb}{\paperheight} @@ -716,8 +724,13 @@ \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} @@ -749,6 +762,8 @@ % 何らかの理由で非埋め込みフォントが正しく利用できない場合にのみ |luatexja.cfg| によって % セットされるものです。 % +% [2014-07-26 LTJ] なお,現状のところ,縦組用JFMは |jfm-ujisv.lua| しか準備していません. +% % \begin{macrocode} %<*!jspf> \expandafter\let\csname JY3/mc/m/n/10\endcsname\relax @@ -764,6 +779,8 @@ \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.924872] \ltj@stdgtfont:jfm=ujis}{} \fi \fi +\DeclareFontShape{JT3}{mc}{m}{n}{<-> s * [0.924872] \ltj@stdmcfont:jfm=ujisv}{} +\DeclareFontShape{JT3}{gt}{m}{n}{<-> s * [0.924872] \ltj@stdgtfont:jfm=ujisv}{} % % \end{macrocode} % @@ -791,12 +808,18 @@ \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.903375] \ltj@stdgtfont:jfm=ujis}{} \fi \fi +\DeclareFontShape{JT3}{mc}{m}{n}{<-> s * [0.903375] \ltj@stdmcfont:jfm=ujisv}{} +\DeclareFontShape{JT3}{gt}{m}{n}{<-> s * [0.903375] \ltj@stdgtfont:jfm=ujisv}{} % % \end{macrocode} % % 和文でイタリック体,斜体,サンセリフ体, % タイプライタ体の代わりにゴシック体を使うことにします。 % +% [2014-03-25 LTJ] タイプライタ体に合わせるファミリを |\jttdefault| とし, +% 通常のゴシック体と別にできるようにしました.|\jttdefault| は,標準で +% |\gtdefault| と定義しています. +% % [2003-03-16] イタリック体,斜体について,和文でゴシックを当てていましたが, % 数学の定理環境などで多量のイタリック体を使うことがあり,ゴシックに % すると黒々となってしまうという弊害がありました。 @@ -827,6 +850,7 @@ %% \DeclareFontShape{JT3}{gt}{m}{sl}{<->ssub*gt/m/n}{} %% \DeclareFontShape{JT3}{mc}{bx}{it}{<->ssub*gt/m/n}{} %% \DeclareFontShape{JT3}{mc}{bx}{sl}{<->ssub*gt/m/n}{} +\renewcommand\jttdefault{\gtdefault} \DeclareRobustCommand\rmfamily {\not@math@alphabet\rmfamily\mathrm \romanfamily\rmdefault\kanjifamily\mcdefault\selectfont} @@ -835,7 +859,7 @@ \romanfamily\sfdefault\kanjifamily\gtdefault\selectfont} \DeclareRobustCommand\ttfamily {\not@math@alphabet\ttfamily\mathtt - \romanfamily\ttdefault\kanjifamily\gtdefault\selectfont} + \romanfamily\ttdefault\kanjifamily\jttdefault\selectfont} % \end{macrocode} %% % Lua\TeX-jaでは和文組版に伴うグルーはノードベースで挿入するようになり,また @@ -951,6 +975,14 @@ % % [2008-02-18] |english| オプションで |\parindent| を 1em にしました。 % +% [2014-05-14 LTJ] |\ltjsetparameter|の実行は時間がかかるので, +% |\ltjsetkanjiskip| と |\ltjsetxkanjiskip|(両者とも, +% 実行前には |\ltj@setpar@global| の実行が必要)にしました. +% +% [2014-12-24 LTJ] |jsclasses| では,|\@setfontsize| 中で |xkanjiskip| を +% 設定するのは現在の和欧文間空白の自然長が正の場合だけでした. +% |ltjsclasses| では最初からこの判定が抜けてしまっていたので,復活させます. +% % \begin{macrocode} \def\@setfontsize#1#2#3{% % \@nomath#1% @@ -965,9 +997,15 @@ \parindent=1\zw \fi \fi - \ltjsetparameter{kanjiskip={0\zw plus .1\zw minus .01\zw}} - \if@slide \ltjsetparameter{xkanjiskip={0.1em}} \else - \ltjsetparameter{xkanjiskip={0.25em plus 0.15em minus 0.06em}} + \ltj@setpar@global + \ltjsetkanjiskip\z@ plus .1\zw minus .01\zw + \@tempskipa=\ltjgetparameter{xkanjiskip} + \ifdim\@tempskipa>\z@ + \if@slide + \ltjsetxkanjiskip .1em + \else + \ltjsetxkanjiskip .25em plus .15em minus .06em + \fi \fi} % \end{macrocode} % \end{macro} @@ -994,6 +1032,9 @@ % % TODO: Hasumiさん [qa:54539] のご指摘は考慮中です。 % +% [2015-01-07 LTJ] 遅くなりましたが, +% \url{http://oku.edu.mie-u.ac.jp/tex/mod/forum/discuss.php?d=1005} にあったZRさんのパッチを取り込みました. +% % \begin{macrocode} \newif\ifnarrowbaselines \if@english @@ -1011,6 +1052,11 @@ \belowdisplayskip=\skip4 \belowdisplayshortskip=\skip6\relax} \def\widebaselines{\narrowbaselinesfalse\@currsize\selectfont} +\def\ltj@@ifnarrowbaselines{% + \ifnarrowbaselines\expandafter\@firstoftwo + \else \expandafter\@secondoftwo + \fi +} % \end{macrocode} % \end{macro} % \end{macro} @@ -1035,11 +1081,9 @@ % % \begin{macrocode} \renewcommand{\normalsize}{% - \ifnarrowbaselines - \@setfontsize\normalsize\@xpt\@xiipt - \else - \@setfontsize\normalsize\@xpt{\n@baseline}% - \fi + \ltj@@ifnarrowbaselines + {\@setfontsize\normalsize\@xpt\@xiipt}% + {\@setfontsize\normalsize\@xpt{\n@baseline}}% % \end{macrocode} % % 数式の上のアキ(|\abovedisplayskip|), @@ -1110,13 +1154,11 @@ % % \begin{macrocode} \newcommand{\small}{% - \ifnarrowbaselines -% \@setfontsize\small\@ixpt{11}% -% \@setfontsize\small{8.8888}{11}% - \else -% \@setfontsize\small\@ixpt{13}% -% \@setfontsize\small{8.8888}{13.2418}% - \fi + \ltj@@ifnarrowbaselines +% {\@setfontsize\small\@ixpt{11}}% +% {\@setfontsize\small{8.8888}{11}}% +% {\@setfontsize\small\@ixpt{13}}% +% {\@setfontsize\small{8.8888}{13.2418}}% \abovedisplayskip 9\p@ \@plus3\p@ \@minus4\p@ \abovedisplayshortskip \z@ \@plus3\p@ \belowdisplayskip \abovedisplayskip @@ -1136,13 +1178,11 @@ % % \begin{macrocode} \newcommand{\footnotesize}{% - \ifnarrowbaselines -% \@setfontsize\footnotesize\@viiipt{9.5}% -% \@setfontsize\footnotesize{8.8888}{11}% - \else -% \@setfontsize\footnotesize\@viiipt{11}% -% \@setfontsize\footnotesize{8.8888}{13.2418}% - \fi + \ltj@@ifnarrowbaselines +% {\@setfontsize\footnotesize\@viiipt{9.5}}% +% {\@setfontsize\footnotesize{8.8888}{11}}% +% {\@setfontsize\footnotesize\@viiipt{11}}% +% {\@setfontsize\footnotesize{8.8888}{13.2418}}% \abovedisplayskip 6\p@ \@plus2\p@ \@minus3\p@ \abovedisplayshortskip \z@ \@plus2\p@ \belowdisplayskip \abovedisplayskip @@ -1589,7 +1629,7 @@ % はトンボの内側に |1in| のスペース(|1truein| ではなく)を挿入するので, % 場合分けしています。 % -% [2011-10-03] Lua\TeX{} (pdf\TeX?) では |1truein| ではなく +% [2011-10-03 LTJ] Lua\TeX{} (pdf\TeX?) では |1truein| ではなく % |1in| になるようです。 % % \begin{macrocode} @@ -1634,7 +1674,7 @@ % [2003-06-26] |\headheight| を |\topskip| に直しました。 % 以前はこの二つは値が同じであったので,変化はないはずです。 % -% [2011-10-03] ここも |\oddsidemargin| のときと同様に |-\inv@mag in| ではなく +% [2011-10-03 LTJ] ここも |\oddsidemargin| のときと同様に |-\inv@mag in| ではなく % |-1in| にします。 % % \begin{macrocode} @@ -2434,7 +2474,7 @@ % 二つ挿入した |\everyparhook| のうち後者が |\paragraph| 類の後で2回実行され, % それ以降は前者が実行されます。 % -% [2011-10-05] Lua\TeX-jaでは |\everyparhook| は不要なので削除。 +% [2011-10-05 LTJ] Lua\TeX-jaでは |\everyparhook| は不要なので削除。 % % \begin{macrocode} \def\@xsect#1{% @@ -3854,15 +3894,21 @@ % % [2003-11-05] ロジックを少し変えてみました。 % +% [2015-05-26] |listings| パッケージを使うときに|title| を指定すると次のエラーが出るのを修正. +% \begin{verbatim} +% ! Missing number, treated as zero. +% \end{verbatim} +% +% % \begin{macrocode} %<*!jspf> % \long\def\@makecaption#1#2{{\small % \advance\leftskip1cm % \advance\rightskip1cm % \vskip\abovecaptionskip -% \sbox\@tempboxa{#1\hskip1\zw\relax #2}% +% \sbox\@tempboxa{#1{\hskip1\zw}#2}% % \ifdim \wd\@tempboxa >\hsize -% #1\hskip1\zw\relax #2\par +% #1{\hskip1\zw}#2\par % \else % \global \@minipagefalse % \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% @@ -3872,9 +3918,9 @@ \advance\leftskip .0628\linewidth \advance\rightskip .0628\linewidth \vskip\abovecaptionskip - \sbox\@tempboxa{#1\hskip1\zw\relax #2}% + \sbox\@tempboxa{#1{\hskip1\zw}#2}% \ifdim \wd\@tempboxa <\hsize \centering \fi - #1\hskip1\zw\relax #2\par + #1{\hskip1\zw}#2\par \vskip\belowcaptionskip}} % %<*jspf> @@ -4589,9 +4635,11 @@ % % [2013-05-14] plcore.ltx に倣った形に書き直しました(Thanks: 北川さん)。 % +% [2014-07-02 LTJ] |\ifydir| を使わない形に書換えました. +% % \begin{macrocode} \renewcommand\@makefnmark{\hbox{}\hbox{% - \ifydir \@textsuperscript{\normalfont\@thefnmark}% + \unless\ifnum\ltjgetparameter{direction}=3 \@textsuperscript{\normalfont\@thefnmark}% \else\hbox{\yoko\@textsuperscript{\normalfont\@thefnmark}}\fi}\hbox{}} % \end{macrocode} % \end{macro} @@ -4711,7 +4759,7 @@ % % 段落頭のかぎかっこなどを見かけ1字半下げから全角1字下げに直します。 % -% [2012-04-24] LuaTeX-jaではJFMに段落開始時の括弧類の字下げ幅をコントロール +% [2012-04-24 LTJ] LuaTeX-jaではJFMに段落開始時の括弧類の字下げ幅をコントロール % する機能がありますが,|\item| 直後ではラベル用のボックスが段落先頭になる % ため,うまく働きませんでした.形を変えて復活させます. % @@ -5139,7 +5187,8 @@ \renewcommand\kanjifamilydefault{\gtdefault} \renewcommand\familydefault{\sfdefault} \raggedright - \ltjsetparameter{xkanjiskip={0.1em}}\relax + \ltj@setpar@global + \ltjsetxkanjiskip{0.1em}\relax \fi % \end{macrocode} %