diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls')
-rw-r--r-- | Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls | 653 |
1 files changed, 494 insertions, 159 deletions
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls index 352e80e1de6..7effdcf18cd 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls @@ -4,7 +4,7 @@ %% %% The original source files were: %% -%% bxjsclasses.dtx (with options: `report') +%% bxjscls.dtx (with options: `report') %% %% IMPORTANT NOTICE: %% @@ -14,7 +14,7 @@ %% with new filenames distinct from bxjsreport.cls. %% %% For distribution of the original source see the terms -%% for copying and modification in the file bxjsclasses.dtx. +%% for copying and modification in the file bxjscls.dtx. %% %% This generated file may be distributed as long as the %% original source files, as listed above, are part of the @@ -37,22 +37,37 @@ %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsreport} - [2012/05/01 v0.3a BXJS document classes] + [2015/08/05 v1.0 BXJS document classes] \RequirePackage{calc} \RequirePackage{keyval} -\let\bxjs@engine=n +\let\jsEngine=n \def\bxjs@test@engine#1#2{% \edef\bxjs@tmpa{\string#1}% \edef\bxjs@tmpb{\meaning#1}% \ifx\bxjs@tmpa\bxjs@tmpb #2\fi} -\bxjs@test@engine\kanjiskip{\let\bxjs@engine=j} -\bxjs@test@engine\jintercharskip{\let\bxjs@engine=J} -\bxjs@test@engine\XeTeXversion{\let\bxjs@engine=x} -\bxjs@test@engine\pdftexversion{\let\bxjs@engine=p} -\bxjs@test@engine\luatexversion{\let\bxjs@engine=l} -\newif\if@jsc@uplatex +\bxjs@test@engine\kanjiskip{\let\jsEngine=j} +\bxjs@test@engine\jintercharskip{\let\jsEngine=J} +\bxjs@test@engine\XeTeXversion{\let\jsEngine=x} +\bxjs@test@engine\pdftexversion{\let\jsEngine=p} +\bxjs@test@engine\luatexversion{\let\jsEngine=l} +\newif\ifjsWithupTeX \ifx\ucs\@undefined\else \ifnum\ucs"3000="3000 - \@jsc@uplatextrue + \jsWithupTeXtrue +\fi\fi +\let\if@jsc@uplatex\ifjsWithupTeX +\newif\ifjsWitheTeX +\bxjs@test@engine\eTeXversion{\jsWitheTeXtrue} +\ifjsWitheTeX \let\bxjs@protected\protected +\else \let\bxjs@protected\@empty +\fi +\ifjsWitheTeX + \def\bxjs@robust@def{\protected\def} +\else + \def\bxjs@robust@def{\DeclareRobustCommand*} +\fi +\newif\ifjsInPdfMode +\ifx\pdfoutput\@undefined\else\ifnum\pdfoutput>\z@ + \jsInPdfModetrue \fi\fi \let\jsArticle=a \let\jsBook=b @@ -62,7 +77,7 @@ \def\bxjs@clsname{bxjsreport} \@onlypreamble\bxjs@restore@jltrcc \let\bxjs@restore@jltrcc\@empty -\if l\bxjs@engine +\if l\jsEngine \def\bxjs@change@jltrcc#1{% \xdef\bxjs@restore@jltrcc{% \bxjs@restore@jltrcc @@ -71,7 +86,7 @@ \@tfor\bxjs@x:=西暦\do {\expandafter\bxjs@change@jltrcc\bxjs@x} \fi -\DeclareRobustCommand*{\jsInhibitGlue}{% +\bxjs@robust@def\jsInhibitGlue{% \ifx\inhibitglue\@undefined\else \inhibitglue \fi} \newif\if@restonecol \newif\if@titlepage @@ -123,8 +138,12 @@ \DeclareOption{30pt}{\bxjs@setbasefontsize{29.86pt}} \DeclareOption{36pt}{\bxjs@setbasefontsize{35.83pt}} \DeclareOption{43pt}{\bxjs@setbasefontsize{43pt}} -\DeclareOption{12Q}{\bxjs@setbasefontsize{3mm}} -\DeclareOption{14Q}{\bxjs@setbasefontsize{3.5mm}} +\DeclareOption{12Q}{\bxjs@setjbasefontsize{3mm}} +\DeclareOption{14Q}{\bxjs@setjbasefontsize{3.5mm}} +\DeclareOption{10ptj}{\bxjs@setjbasefontsize{10pt}} +\DeclareOption{10.5ptj}{\bxjs@setjbasefontsize{10.5pt}} +\DeclareOption{11ptj}{\bxjs@setjbasefontsize{11pt}} +\DeclareOption{12ptj}{\bxjs@setjbasefontsize{12pt}} \DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse} \DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} \DeclareOption{vartwoside}{\@twosidetrue \@mparswitchfalse} @@ -175,9 +194,21 @@ &\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup \tabskip\z@skip\cr }} -\newif\ifdraft -\DeclareOption{draft}{\drafttrue \setlength\overfullrule{5pt}} -\DeclareOption{final}{\draftfalse \setlength\overfullrule{0pt}} +\let\ifjsDraft\iffalse +\@onlypreamble\bxjs@draft +\def\bxjs@draft#1{% + \expandafter\let\expandafter\ifjsDraft\csname if#1\endcsname} +\DeclareOption{draft}{\bxjs@draft{true}\setlength\overfullrule{5pt}} +\DeclareOption{final}{\bxjs@draft{false}\setlength\overfullrule{0pt}} +\AtBeginDocument{% + \expandafter\ifx\csname ifdraft\endcsname\relax + \expandafter\let\csname ifdraft\expandafter\endcsname + \csname ifjsDraft\endcsname + \fi} +\newif\ifbxjs@papersize +\bxjs@papersizetrue +\DeclareOption{nopapersize}{\bxjs@papersizefalse} +\DeclareOption{papersize}{\bxjs@papersizetrue} \newif\if@english \@englishfalse \DeclareOption{english}{\@englishtrue} @@ -199,41 +230,192 @@ \else \@tempdimb=\@tempcntb\@ne \fi}% \xdef\bxjs@gtmpa{\the\@tempdimb}% \egroup #1=\bxjs@gtmpa\relax} -\newif\ifbxjs@ptexmodule +\DeclareOption{autodetect-engine}{% + \let\bxjs@engine@given=*} +\DeclareOption{latex}{% + \def\bxjs@engine@opt{latex}% + \let\bxjs@engine@given=n} \DeclareOption{platex}{% - \@tempswafalse - \if j\bxjs@engine \if@jsc@uplatex\else \@tempswatrue \fi\fi - \bxjs@opt@platex} + \def\bxjs@engine@opt{platex}% + \let\bxjs@engine@given=j} \DeclareOption{uplatex}{% - \@tempswafalse - \if j\bxjs@engine \if@jsc@uplatex \@tempswatrue \fi\fi - \bxjs@opt@platex} -\def\bxjs@opt@platex{% - \if@tempswa - \bxjs@ptexmoduletrue - \else - \ClassError\bxjs@clsname% - {Option `\CurrentOption' used on wrong engine}\@ehc - \fi} + \def\bxjs@engine@opt{uplatex}% + \let\bxjs@engine@given=u} +\DeclareOption{xelatex}{% + \def\bxjs@engine@opt{xelatex}% + \let\bxjs@engine@given=x} +\DeclareOption{pdflatex}{% + \def\bxjs@engine@opt{pdflatex}% + \let\bxjs@engine@given=p} +\DeclareOption{lualatex}{% + \def\bxjs@engine@opt{lualatex}% + \let\bxjs@engine@given=l} +\let\bxjs@driver@@dvimode=0 +\let\bxjs@driver@@dvipdfmx=1 +\let\bxjs@driver@@pdfmode=2 +\let\bxjs@driver@@xetex=3 +\DeclareOption{dvips}{% + \def\bxjs@driver@opt{dvips}% + \let\bxjs@driver@given\bxjs@driver@@dvimode} +\DeclareOption{dviout}{% + \def\bxjs@driver@opt{dviout}% + \let\bxjs@driver@given\bxjs@driver@@dvimode} +\DeclareOption{xdvi}{% + \def\bxjs@driver@opt{xdvi}% + \let\bxjs@driver@given\bxjs@driver@@dvimode} +\DeclareOption{dvipdfmx}{% + \def\bxjs@driver@opt{dvipdfmx}% + \let\bxjs@driver@given\bxjs@driver@@dvipdfmx} +\DeclareOption{pdftex}{% + \def\bxjs@driver@opt{pdftex}% + \let\bxjs@driver@given\bxjs@driver@@pdfmode} +\DeclareOption{luatex}{% + \def\bxjs@driver@opt{luatex}% + \let\bxjs@driver@given\bxjs@driver@@pdfmode} +\DeclareOption{xetex}{% + \def\bxjs@driver@opt{xetex}% + \let\bxjs@driver@given\bxjs@driver@@xetex} +\DeclareOption{dvipdfmx-if-dvi}{% + \def\bxjs@driver@opt{dvipdfmx-if-dvi}% + \let\bxjs@driver@given\@undefined} +\newif\ifbxjs@usezw \bxjs@usezwtrue +\DeclareOption{nozw}{% + \bxjs@usezwfalse} +\DeclareOption{zw}{% + \bxjs@usezwtrue} +\newif\ifbxjs@disguise@js \bxjs@disguise@jstrue +\DeclareOption{nojs}{% + \bxjs@disguise@jsfalse} +\DeclareOption{js}{% + \bxjs@disguise@jstrue} \def\bxjs@setkey{% \expandafter\bxjs@setkey@a\expandafter{\CurrentOption}} \def\bxjs@setkey@a{\setkeys{bxjs}} -\define@key{bxjs}{base}{\bxjs@setbasefontsize{#1}} +\DeclareOption*{\bxjs@setkey} +\newif\ifbxjs@scaleset \def\jsScale{0.924715} +\def\Cjascale{\jsScale} +\define@key{bxjs}{base}{\bxjs@setbasefontsize{#1}} +\@onlypreamble\bxjs@do@opt@jbase \let\bxjs@do@opt@jbase\relax -\define@key{bxjs}{jbase}{% - \def\bxjs@do@opt@jbase{\bxjs@opt@jbase{#1}}} -\def\bxjs@opt@jbase#1{% - \setlength\@tempdima{#1}% - \bxjs@invscale\@tempdima\jsScale - \bxjs@setbasefontsize{\@tempdima}} -\define@key{bxjs}{scale}{\edef\jsScale{#1}} +\define@key{bxjs}{jbase}{\bxjs@setjbasefontsize{#1}} +\def\bxjs@setjbasefontsize#1{% + \def\bxjs@do@opt@jbase{% + \setlength\@tempdima{#1}% + \bxjs@invscale\@tempdima\jsScale + \bxjs@setbasefontsize{\@tempdima}}} +\define@key{bxjs}{scale}{% + \bxjs@scalesettrue + \edef\jsScale{#1}} +\DeclareOption{noscale}{% + \bxjs@scalesettrue + \def\jsScale{1}} +\DeclareOption{CJK}{% + \ClassWarning\bxjs@clsname + {Option `CJK' was abolished}} \let\bxjs@param@mag\relax \define@key{bxjs}{mag}{\edef\bxjs@param@mag{#1}} \define@key{bxjs}{paper}{\edef\bxjs@param@paper{#1}} -\DeclareOption*{\bxjs@setkey} +\let\bxjs@jadriver\relax +\define@key{bxjs}{jadriver}{\edef\bxjs@jadriver{#1}} +\define@key{bxjs}{ja}{\edef\bxjs@jadriver{#1}} +\let\jsJaFont\@empty +\define@key{bxjs}{jafont}{\edef\jsJaFont{#1}} +\let\jsJaParam\@empty +\define@key{bxjs}{japaram}{\edef\jsJaParam{#1}} +\let\bxjs@magstyle@mag=m +\let\bxjs@magstyle@real=r +\let\bxjs@magstyle@xreal=x +\let\bxjs@magstyle\bxjs@magstyle@mag +\define@key{bxjs}{magstyle}{% + \expandafter\let\expandafter\bxjs@magstyle\csname + bxjs@magstyle@#1\endcsname + \ifx\bxjs@magstyle\relax + \ClassError\bxjs@clsname + {Invalid magstyle value `#1'}\@ehc + \let\bxjs@magstyle\bxjs@magstyle@mag + \fi} +\let\ltx@removeelement\@removeelement +\def\@removeelement#1#2#3{% + \def\reserved@a{#2}% + \ifx\reserved@a\@empty \let#3\@empty + \else \ltx@removeelement{#1}{#2}{#3}% + \fi} \ExecuteOptions{a4paper,oneside,onecolumn,titlepage,openany,final} \ProcessOptions\relax +\@expandtwoargs\@removeelement + {papersize}\@classoptionslist\@classoptionslist +\@expandtwoargs\@removeelement + {10pt}\@classoptionslist\@classoptionslist +\let\bxjs@tmpb\jsEngine +\ifx j\bxjs@tmpb\ifjsWithupTeX + \let\bxjs@tmpb=u +\fi\fi +\ifx p\bxjs@tmpb\ifjsInPdfMode\else + \let\bxjs@tmpb=n +\fi\fi +\ifx *\bxjs@engine@given + \let\bxjs@engine@given\bxjs@tmpb +\fi +\ifx\bxjs@engine@given\@undefined\else + \ifx\bxjs@engine@given\bxjs@tmpb\else + \ClassError\bxjs@clsname% + {Option `\bxjs@engine@opt' used on wrong engine}\@ehc + \fi +\fi +\@tempswatrue +\ifx \bxjs@driver@given\@undefined\else + \ifjsInPdfMode + \ifx\bxjs@driver@given\bxjs@driver@@pdfmode\else + \@tempswafalse + \fi + \else\ifx x\jsEngine + \ifx\bxjs@driver@given\bxjs@driver@@xetex\else + \@tempswafalse + \fi + \else + \ifx\bxjs@driver@given\bxjs@driver@@pdfmode + \@tempswafalse + \else\ifx\bxjs@driver@given\bxjs@driver@@xetex + \@tempswafalse + \fi\fi + \fi\fi +\fi +\if@tempswa\else + \ClassError\bxjs@clsname% + {Option `\bxjs@driver@opt' used on wrong engine}\@ehc +\fi +\ifjsInPdfMode \@tempswafalse +\else\ifx x\jsEngine \@tempswafalse +\else \@tempswatrue +\fi\fi +\if@tempswa + \ifx\bxjs@driver@opt\@undefined + \ClassWarningNoLine\bxjs@clsname + {No driver option is given} + \fi + \def\bxjs@tmpa{dvipdfmx-if-dvi} + \ifx\bxjs@driver@opt\bxjs@tmpa + \def\bxjs@driver@opt{dvipdfmx} + \let\bxjs@driver@given\bxjs@driver@@dvipdfmx + \g@addto@macro\@classoptionslist{,dvipdfmx} + \fi +\fi +\def\bxjs@@minimal{minimal} +\ifx\bxjs@jadriver\relax + \ifx j\jsEngine + \def\bxjs@jadriver{standard} + \else + \let\bxjs@jadriver\bxjs@@minimal + \fi +\fi +\ifx\bxjs@jadriver\bxjs@@minimal\else + \ifx\bxjs@engine@given\@undefined + \ClassError\bxjs@clsname% + {An engine option must be explicitly given}% + {When you employ a Japanese-driver you must specify a + correct\MessageBreak engine option.\MessageBreak\@ehc} +\fi\fi \bxjs@do@opt@jbase \if@slide \def\maybeblue{\@ifundefined{ver@color.sty}{}{\color{blue}}} @@ -243,8 +425,25 @@ \setlength\paperheight{\paperwidth} \setlength\paperwidth {\@tempdima} \fi +\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T + \@tempcnta="80 \loop \ifnum\@tempcnta<"100 + \catcode\@tempcnta\active + \advance\@tempcnta\@ne + \repeat +\fi +\ifbxjs@disguise@js +\def\bxjs@js@clsname{jsbook} + \@namedef{ver@\bxjs@js@clsname.cls}{2001/01/01 (bxjs)} +\fi \ifdim\bxjs@param@basefontsize<10pt \def\n@baseline{15}% \else \def\n@baseline{16}\fi +\newif\ifbxjs@mag +\newif\ifbxjs@nfss@patch +\ifx\bxjs@magstyle\bxjs@magstyle@mag + \bxjs@magtrue +\else\ifx\bxjs@magstyle\bxjs@magstyle@xreal + \bxjs@nfss@patchtrue +\fi\fi \ifx\bxjs@param@mag\relax \@tempdima=\bxjs@param@basefontsize \advance\@tempdima.001pt \multiply\@tempdima25 @@ -260,25 +459,90 @@ \expandafter\bxjs@tmpa\the\@tempcnta\@nil \edef\bxjs@param@basefontsize{\the\@tempdima} \fi +\@tempcnta\bxjs@param@mag \advance\@tempcnta100000 +\def\bxjs@tmpa#1#2#3#4\@nil{\@tempdima=#2#3.#4\p@} +\expandafter\bxjs@tmpa\the\@tempcnta\@nil +\edef\bxjs@real@mag{\strip@pt\@tempdima} \let\jsBaseFontSize\bxjs@param@basefontsize +\ifbxjs@mag + \let\bxjs@mpt\p@ + \catcode`\?=9 % \p@? read as \p@ +\else + \newdimen\bxjs@mpt + \bxjs@mpt=\bxjs@real@mag \p@ + \catcode`\?=11 \let\p@?\bxjs@mpt +\fi +\chardef\bxjs@qmcc=\catcode`\?\relax \newdimen\jsZw -\jsZw=10pt \jsZw=\jsScale\jsZw +\jsZw=10\bxjs@mpt \jsZw=\jsScale\jsZw +\ifbxjs@usezw + \providecommand*\zw{\jsZw} +\fi +\ifbxjs@nfss@patch +\RequirePackage{type1cm} +\expandafter\let\csname OT1/cmr/m/n/10\endcsname\relax +\expandafter\let\csname OMX/cmex/m/n/10\endcsname\relax +\let\bxjs@get@external@font\get@external@font +\def\get@external@font{% + \bxjs@preadjust@extract@font + \bxjs@get@external@font} +\def\bxjs@fstrunc#1{% + \edef\bxjs@tmpa{\strip@pt#1}% + \expandafter\bxjs@fstrunc@a\bxjs@tmpa.****\@nil} +\def\bxjs@fstrunc@a#1.#2#3#4#5#6\@nil{% + \if#5*\else + \edef\bxjs@tmpa{#1% + \ifnum#2#3>\z@ .#2\ifnum#3>\z@ #3\fi\fi}% + \fi} +\def\bxjs@preadjust@extract@font{% + \let\bxjs@req@size\f@size + \dimen@\f@size\p@ \bxjs@invscale\dimen@\bxjs@real@mag + \advance\dimen@.005pt\relax \bxjs@fstrunc\dimen@ + \let\bxjs@ref@size\bxjs@tmpa + \let\f@size\bxjs@ref@size} +\def\execute@size@function#1{% + \let\bxjs@cref@size\f@size + \let\f@size\bxjs@req@size + \csname s@fct@#1\endcsname} +\let\bxjs@DeclareErrorFont\DeclareErrorFont +\def\DeclareErrorFont#1#2#3#4#5{% + \@tempdimc#5\p@ \@tempdimc\bxjs@real@mag\@tempdimc + \edef\bxjs@tmpa{{#1}{#2}{#3}{#4}{\strip@pt\@tempdimc}} + \expandafter\bxjs@DeclareErrorFont\bxjs@tmpa} +\def\gen@sfcnt{% + \edef\mandatory@arg{\mandatory@arg\bxjs@cref@size}% + \empty@sfcnt} +\def\genb@sfcnt{% + \edef\mandatory@arg{% + \mandatory@arg\expandafter\genb@x\bxjs@cref@size..\@@}% + \empty@sfcnt} +\DeclareErrorFont{OT1}{cmr}{m}{n}{10} +\fi \chardef\bxjs@periodchar=`\. \def\@{\spacefactor\sfcode\bxjs@periodchar} -\def\@setfontsize#1#2#3{% - \ifx\protect\@typeset@protect - \let\@currsize#1% - \fi - \fontsize{#2}{#3}\selectfont - \jsZw=\f@size pt\relax - \jsZw=\jsScale \jsZw\relax +\def\bxjs@tmpa{\def\set@fontsize##1##2##3} +\expandafter\bxjs@tmpa\expandafter{% + \set@fontsize{#1}{#2}{#3}% + \expandafter\def\expandafter\size@update\expandafter{% + \size@update + \jsFontSizeChanged}% +} +\newcommand*\jsFontSizeChanged{% + \jsZw=\f@size\p@ + \jsZw=\jsScale \jsZw \ifdim\parindent>\z@ \if@english \parindent=1em \else \parindent=1\jsZw \fi \fi\relax \jsResetDimen} -\def\jsResetDimen{} +\newcommand*\jsResetDimen{} +\ifbxjs@mag + \let\bxjs@setfontsize\@setfontsize +\else + \def\bxjs@setfontsize#1#2#3{% + \@setfontsize#1{#2\bxjs@mpt}{#3\bxjs@mpt}} +\fi \emergencystretch 3\jsZw \newif\ifnarrowbaselines \if@english @@ -296,15 +560,20 @@ \belowdisplayskip=\skip4 \belowdisplayshortskip=\skip6\relax} \def\widebaselines{\narrowbaselinesfalse\@currsize\selectfont} -\renewcommand{\normalsize}{% - \ifnarrowbaselines - \@setfontsize\normalsize\@xpt\@xiipt - \else - \@setfontsize\normalsize\@xpt{\n@baseline}% +\def\bxjs@if@narrowbaselines{% + \ifnarrowbaselines\expandafter\@firstoftwo + \else \expandafter\@secondoftwo \fi - \abovedisplayskip 10\p@ \@plus3\p@ \@minus4\p@ - \abovedisplayshortskip \z@ \@plus3\p@ - \belowdisplayskip \abovedisplayskip +} +\renewcommand{\normalsize}{% + \bxjs@if@narrowbaselines{% + \bxjs@setfontsize\normalsize\@xpt\@xiipt + }{%else + \bxjs@setfontsize\normalsize\@xpt{\n@baseline}% + }% + \abovedisplayskip 11\p@? \@plus3\p@? \@minus4\p@? + \abovedisplayshortskip \z@ \@plus3\p@? + \belowdisplayskip 9\p@? \@plus3\p@? \@minus4\p@? \belowdisplayshortskip \belowdisplayskip \let\@listi\@listI} \normalsize @@ -319,13 +588,13 @@ \setlength\Cvs{\baselineskip} \setlength\Chs{1\jsZw} \newcommand{\small}{% - \ifnarrowbaselines - \@setfontsize\small\@ixpt{11}% - \else - \@setfontsize\small\@ixpt{13}% - \fi - \abovedisplayskip 9\p@ \@plus3\p@ \@minus4\p@ - \abovedisplayshortskip \z@ \@plus3\p@ + \bxjs@if@narrowbaselines{% + \bxjs@setfontsize\small\@ixpt{11}% + }{%else + \bxjs@setfontsize\small\@ixpt{13}% + }% + \abovedisplayskip 9\p@? \@plus3\p@? \@minus4\p@? + \abovedisplayshortskip \z@ \@plus3\p@? \belowdisplayskip \abovedisplayskip \belowdisplayshortskip \belowdisplayskip \def\@listi{\leftmargin\leftmargini @@ -333,39 +602,39 @@ \parsep \z@ \itemsep \parsep}} \newcommand{\footnotesize}{% - \ifnarrowbaselines - \@setfontsize\footnotesize\@viiipt{9.5}% - \else - \@setfontsize\footnotesize\@viiipt{11}% - \fi - \abovedisplayskip 6\p@ \@plus2\p@ \@minus3\p@ - \abovedisplayshortskip \z@ \@plus2\p@ + \bxjs@if@narrowbaselines{% + \bxjs@setfontsize\footnotesize\@viiipt{9.5}% + }{%else + \bxjs@setfontsize\footnotesize\@viiipt{11}% + }% + \abovedisplayskip 6\p@? \@plus2\p@? \@minus3\p@? + \abovedisplayshortskip \z@ \@plus2\p@? \belowdisplayskip \abovedisplayskip \belowdisplayshortskip \belowdisplayskip \def\@listi{\leftmargin\leftmargini \topsep \z@ \parsep \z@ \itemsep \parsep}} -\newcommand{\scriptsize}{\@setfontsize\scriptsize\@viipt\@viiipt} -\newcommand{\tiny}{\@setfontsize\tiny\@vpt\@vipt} +\newcommand{\scriptsize}{\bxjs@setfontsize\scriptsize\@viipt\@viiipt} +\newcommand{\tiny}{\bxjs@setfontsize\tiny\@vpt\@vipt} \if@twocolumn - \newcommand{\large}{\@setfontsize\large\@xiipt{\n@baseline}} + \newcommand{\large}{\bxjs@setfontsize\large\@xiipt{\n@baseline}} \else - \newcommand{\large}{\@setfontsize\large\@xiipt{17}} + \newcommand{\large}{\bxjs@setfontsize\large\@xiipt{17}} \fi -\newcommand{\Large}{\@setfontsize\Large\@xivpt{21}} -\newcommand{\LARGE}{\@setfontsize\LARGE\@xviipt{25}} -\newcommand{\huge}{\@setfontsize\huge\@xxpt{28}} -\newcommand{\Huge}{\@setfontsize\Huge\@xxvpt{33}} -\newcommand{\HUGE}{\@setfontsize\HUGE{30}{40}} +\newcommand{\Large}{\bxjs@setfontsize\Large\@xivpt{21}} +\newcommand{\LARGE}{\bxjs@setfontsize\LARGE\@xviipt{25}} +\newcommand{\huge}{\bxjs@setfontsize\huge\@xxpt{28}} +\newcommand{\Huge}{\bxjs@setfontsize\Huge\@xxvpt{33}} +\newcommand{\HUGE}{\bxjs@setfontsize\HUGE{30}{40}} \everydisplay=\expandafter{\the\everydisplay \narrowbaselines} \newcommand{\headfont}{\sffamily} \setlength\columnsep{2\Cwd} \setlength\columnseprule{0\p@} -\setlength\lineskip{1\p@} -\setlength\normallineskip{1\p@} -\setlength\lineskiplimit{1\p@} -\setlength\normallineskiplimit{1\p@} +\setlength\lineskip{1\p@?} +\setlength\normallineskip{1\p@?} +\setlength\lineskiplimit{1\p@?} +\setlength\normallineskiplimit{1\p@?} \renewcommand{\baselinestretch}{} \setlength\parskip{0\p@} \if@slide @@ -376,8 +645,10 @@ \@lowpenalty 51 \@medpenalty 151 \@highpenalty 301 +\ifbxjs@mag \mag=\bxjs@param@mag -\setlength{\topskip}{10pt} +\fi +\setlength{\topskip}{10\p@?} \def\bxjs@read@a{\futurelet\bxjs@tmpa\bxjs@read@b} \def\bxjs@read@b{% \ifx\bxjs@tmpa\bgroup \expandafter\bxjs@read@c @@ -386,11 +657,13 @@ \def\bxjs@read@d#1\@nil{} \expandafter\bxjs@read@a\bxjs@param@paper\@nil \edef\bxjs@layout@paper{% - truedimen,\if@landscape landscape,\fi \bxjs@param@paper} + \ifbxjs@mag truedimen,\fi + \if@landscape landscape,\fi + \bxjs@param@paper} \def\bxjs@layout{% headheight=\topskip,footskip=0.03367\paperheight,% headsep=\footskip-\topskip,includeheadfoot,% - hscale=0.76,,hmarginratio=1:1,% + hscale=0.76,hmarginratio=1:1,% vscale=0.83,vmarginratio=1:1,% } \newdimen\fullwidth @@ -401,6 +674,7 @@ \advance\@tempdimb-\textwidth \advance\oddsidemargin 0.5\@tempdimb \advance\evensidemargin 0.5\@tempdimb + \fullwidth=\textwidth \@tempdimb=\textheight \advance\textheight-\topskip \divide\textheight\baselineskip \multiply\textheight\baselineskip @@ -412,17 +686,17 @@ \advance\topmargin-\@tempdima \setlength\marginparsep{\columnsep} \setlength\marginparpush{\baselineskip} - \setlength\marginparwidth{\evensidemargin-1truein-\marginparsep} + \setlength\marginparwidth{\paperwidth-\oddsidemargin-1truein% + -\textwidth-1cm-\marginparsep} \divide\marginparwidth\Cwd \multiply\marginparwidth\Cwd \maxdepth=.5\topskip - \fullwidth=\textwidth } \@onlypreamble\bxjs@revert \let\bxjs@revert\@empty \edef\bxjs@tmpa{\the\ht\strutbox} -\ht\strutbox=10pt +\ht\strutbox=10\p@? \g@addto@macro\bxjs@revert{\ht\strutbox=\bxjs@tmpa\relax} -\if x\bxjs@engine +\if x\jsEngine \ifx\pdfpagewidth\@undefined \def\bxjs@Gm@driver{dvipdfm} \else @@ -436,6 +710,14 @@ \bxjs@InputIfFileExists{#1}{#2}{#3}% \edef\Gm@checkdrivers{\noexpand\Gm@setdriver{\bxjs@Gm@driver}}}% \fi +\ifbxjs@papersize + \ifx\bxjs@driver@given\bxjs@driver@@dvipdfmx + \PassOptionsToPackage{dvipdfm}{geometry} + \fi + \let\bxPapersizeSpecialDone=t +\else + \PassOptionsToPackage{driver=none}{geometry} +\fi \edef\bxjs@nxt{% \noexpand\RequirePackage[\bxjs@layout@paper,\bxjs@layout]{geometry}} \bxjs@nxt \bxjs@revert @@ -448,9 +730,8 @@ \def\bxjs@reset@layout#1{% \edef\bxjs@nxt{\noexpand\geometry{reset,\bxjs@layout@paper,#1,truedimen}}% \bxjs@nxt\bxjs@postproc@layout} -{\footnotesize\global\setlength\footnotesep{\baselineskip}} -\setlength\footnotesep{0.7\footnotesep} -\setlength{\skip\footins}{16\p@ \@plus 5\p@ \@minus 2\p@} +\footnotesep=11\p@? \footnotesep=0.7\footnotesep +\setlength{\skip\footins}{16\p@? \@plus 5\p@? \@minus 2\p@?} \setcounter{topnumber}{9} \renewcommand{\topfraction}{.85} \setcounter{bottomnumber}{9} @@ -461,17 +742,17 @@ \setcounter{dbltopnumber}{9} \renewcommand{\dbltopfraction}{.8} \renewcommand{\dblfloatpagefraction}{.8} -\setlength\floatsep {12\p@ \@plus 2\p@ \@minus 2\p@} -\setlength\textfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} -\setlength\intextsep {12\p@ \@plus 2\p@ \@minus 2\p@} -\setlength\dblfloatsep {12\p@ \@plus 2\p@ \@minus 2\p@} -\setlength\dbltextfloatsep{20\p@ \@plus 2\p@ \@minus 4\p@} -\setlength\@fptop{0\p@ \@plus 1fil} -\setlength\@fpsep{8\p@ \@plus 2fil} -\setlength\@fpbot{0\p@ \@plus 1fil} -\setlength\@dblfptop{0\p@ \@plus 1fil} -\setlength\@dblfpsep{8\p@ \@plus 2fil} -\setlength\@dblfpbot{0\p@ \@plus 1fil} +\setlength\floatsep {12\p@? \@plus 2\p@? \@minus 2\p@?} +\setlength\textfloatsep{20\p@? \@plus 2\p@? \@minus 4\p@?} +\setlength\intextsep {12\p@? \@plus 2\p@? \@minus 2\p@?} +\setlength\dblfloatsep {12\p@? \@plus 2\p@? \@minus 2\p@?} +\setlength\dbltextfloatsep{20\p@? \@plus 2\p@? \@minus 4\p@?} +\setlength\@fptop{0\p@? \@plus 1fil} +\setlength\@fpsep{8\p@? \@plus 2fil} +\setlength\@fpbot{0\p@? \@plus 1fil} +\setlength\@dblfptop{0\p@? \@plus 1fil} +\setlength\@dblfpsep{8\p@? \@plus 2fil} +\setlength\@dblfpbot{0\p@? \@plus 1fil} \def\ps@plainfoot{% \let\@mkboth\@gobbletwo \let\@oddhead\@empty @@ -489,6 +770,7 @@ \def\@oddhead{% \hbox to \fullwidth{\hfil\textbf{\thepage}}\hss}} \let\ps@plain\ps@plainfoot +\newif\if@omit@number \def\ps@headings{% \let\@oddfoot\@empty \let\@evenfoot\@empty @@ -503,7 +785,9 @@ \def\chaptermark##1{\markboth{% \ifnum \c@secnumdepth >\m@ne \if@mainmatter - \@chapapp\thechapter\@chappos\hskip1\jsZw + \if@omit@number\else + \@chapapp\thechapter\@chappos\hskip1\jsZw + \fi \fi \fi ##1}{}}% @@ -543,16 +827,16 @@ \begin{center} \mbox{} \\[1\jsZw] \large - {\maybeblue\hrule height0pt depth2pt\relax}\par + {\maybeblue\hrule height0\p@? depth2\p@?\relax}\par \smallskip \@title \smallskip - {\maybeblue\hrule height0pt depth2pt\relax}\par + {\maybeblue\hrule height0\p@? depth2\p@?\relax}\par \vfill {\small \@author}% \end{center} \else - \vskip 60\p@ + \vskip 60\p@? \begin{center}% {\LARGE \@title \par}% \vskip 3em% @@ -703,6 +987,7 @@ \unskip \@tempskipa #1\relax \hskip -\@tempskipa + \bxjs@ltj@inhibitglue \else \clubpenalty \@clubpenalty \everypar{\everyparhook}% @@ -713,7 +998,7 @@ \@afterheading \fi \if@slide - {\vskip-6pt\maybeblue\hrule height0pt depth1pt\vskip7pt\relax}% + {\vskip-6\p@?\maybeblue\hrule height0\p@? depth1\p@?\vskip7\p@?\relax}% \fi \par % 2000-12-18 \ignorespaces} @@ -729,6 +1014,7 @@ \endgroup \fi \@xsect{#3}} +\let\bxjs@ltj@inhibitglue\@empty \newcommand*\chaptermark[1]{} \setcounter{secnumdepth}{2} \newcounter{part} @@ -798,7 +1084,7 @@ \normalfont \ifnum \c@secnumdepth >-2\relax \huge\headfont \prepartname\thepart\postpartname - \par\vskip20\p@ + \par\vskip20\p@? \fi \Huge \headfont #2\par}% \@endpart} @@ -822,7 +1108,9 @@ \plainifnotempty % 元: \thispagestyle{plain} \global\@topnum\z@ \if@english \@afterindentfalse \else \@afterindenttrue \fi - \secdef\@chapter\@schapter} + \secdef + {\@omit@numberfalse\@chapter}% + {\@omit@numbertrue\@schapter}} \def\@chapter[#1]#2{% \ifnum \c@secnumdepth >\m@ne \if@mainmatter @@ -830,7 +1118,7 @@ \typeout{\@chapapp\thechapter\@chappos}% \addcontentsline{toc}{chapter}% {\protect\numberline - {\if@english\thechapter\else\@chapapp\thechapter\@chappos\fi}% + {\@chapapp\thechapter\@chappos}% #1}% \else\addcontentsline{toc}{chapter}{#1}\fi \else @@ -998,7 +1286,7 @@ \begin{list}{}{% \listparindent=1\jsZw \itemindent=\listparindent - \rightmargin=0pt + \rightmargin=\z@ \leftmargin=5\jsZw}\item[]}{\end{list}\vspace{\baselineskip}} \newenvironment{verse}{% \let \\=\@centercr @@ -1017,10 +1305,10 @@ \item\relax}{\endlist} \newenvironment{quote}% {\list{}{\rightmargin\z@}\item\relax}{\endlist} -\def\@begintheorem#1#2{\trivlist - \item[\hskip \labelsep{\bfseries #1\ #2}]} -\def\@opargbegintheorem#1#2#3{\trivlist - \item[\hskip \labelsep{\bfseries #1\ #2\ (#3)}]} +\def\@begintheorem#1#2{\trivlist\labelsep=1\jsZw + \item[\hskip \labelsep{\headfont #1\ #2}]} +\def\@opargbegintheorem#1#2#3{\trivlist\labelsep=1\jsZw + \item[\hskip \labelsep{\headfont #1\ #2(#3)}]} \newenvironment{titlepage}{% \cleardoublepage \if@twocolumn @@ -1041,13 +1329,13 @@ \gdef\@chapapp{\appendixname}% \gdef\@chappos{}% \gdef\thechapter{\@Alph\c@chapter}} -\setlength\arraycolsep{5\p@} -\setlength\tabcolsep{6\p@} +\setlength\arraycolsep{5\p@?} +\setlength\tabcolsep{6\p@?} \setlength\arrayrulewidth{.4\p@} \setlength\doublerulesep{2\p@} \setlength\tabbingsep{\labelsep} \skip\@mpfootins = \skip\footins -\setlength\fboxsep{3\p@} +\setlength\fboxsep{3\p@?} \setlength\fboxrule{.4\p@} \@addtoreset{equation}{chapter} \renewcommand\theequation @@ -1080,8 +1368,8 @@ {\end@dblfloat} \newlength\abovecaptionskip \newlength\belowcaptionskip -\setlength\abovecaptionskip{5\p@} % 元: 10\p@ -\setlength\belowcaptionskip{5\p@} % 元: 0\p@ +\setlength\abovecaptionskip{5\p@?} % 元: 10\p@ +\setlength\belowcaptionskip{5\p@?} % 元: 0\p@ \long\def\@makecaption#1#2{{\small \advance\leftskip .0628\linewidth \advance\rightskip .0628\linewidth @@ -1105,7 +1393,12 @@ \newcommand\@tocrmarg{2.55em} \newcommand\@dotsep{4.5} \setcounter{tocdepth}{1} +\newdimen\js@tocl@width \newcommand{\tableofcontents}{% + \settowidth\js@tocl@width{\headfont\prechaptername\postchaptername}% + \settowidth\@tempdima{\headfont\appendixname}% + \ifdim\js@tocl@width<\@tempdima \setlength\js@tocl@width{\@tempdima}\fi + \ifdim\js@tocl@width<2zw \divide\js@tocl@width by 2 \advance\js@tocl@width 1zw\fi \if@twocolumn \@restonecoltrue\onecolumn \else @@ -1119,7 +1412,7 @@ \newcommand*{\l@part}[2]{% \ifnum \c@tocdepth >-2\relax \addpenalty{-\@highpenalty}% - \addvspace{2.25em \@plus\p@}% + \addvspace{2.25em \@plus\p@?}% \begingroup \parindent \z@ \rightskip \@tocrmarg @@ -1136,27 +1429,38 @@ \newcommand*{\l@chapter}[2]{% \ifnum \c@tocdepth >\m@ne \addpenalty{-\@highpenalty}% - \addvspace{1.0em \@plus\p@} + \addvspace{1.0em \@plus\p@?} \begingroup \parindent\z@ \rightskip\@tocrmarg \parfillskip-\rightskip \leavevmode\headfont - \if@english\setlength\@lnumwidth{5.5em}\else\setlength\@lnumwidth{4.683\jsZw}\fi + \setlength\@lnumwidth{\js@tocl@width}\advance\@lnumwidth 2.683\jsZw \advance\leftskip\@lnumwidth \hskip-\leftskip #1\nobreak\hfil\nobreak\hbox to\@pnumwidth{\hss#2}\par \penalty\@highpenalty \endgroup \fi} -\newcommand*{\l@section}{\@dottedtocline{1}{1\jsZw}{3.683\jsZw}} -\newcommand*{\l@subsection} {\@dottedtocline{2}{3.8em}{3.2em}} -\newcommand*{\l@subsubsection}{\@dottedtocline{3}{7.0em}{4.1em}} -\newcommand*{\l@paragraph} {\@dottedtocline{4}{10em}{5em}} -\newcommand*{\l@subparagraph} {\@dottedtocline{5}{12em}{6em}} + % \newcommand*{\l@section}{\@dottedtocline{1}{1\jsZw}{3.683\jsZw}} +\newcommand*{\l@section}{% + \@tempdima\js@tocl@width \advance\@tempdima -1\jsZw + \@dottedtocline{1}{\@tempdima}{3.683\jsZw}} +\newcommand*{\l@subsection}{% + \@tempdima\js@tocl@width \advance\@tempdima 2.683\jsZw + \@dottedtocline{2}{\@tempdima}{3.5\jsZw}} +\newcommand*{\l@subsubsection}{% + \@tempdima\js@tocl@width \advance\@tempdima 6.183\jsZw + \@dottedtocline{3}{\@tempdima}{4.5\jsZw}} +\newcommand*{\l@paragraph}{% + \@tempdima\js@tocl@width \advance\@tempdima 10.683\jsZw + \@dottedtocline{4}{\@tempdima}{5.5\jsZw}} +\newcommand*{\l@subparagraph}{% + \@tempdima\js@tocl@width \advance\@tempdima 16.183\jsZw + \@dottedtocline{5}{\@tempdima}{6.5\jsZw}} \newdimen\@lnumwidth \def\numberline#1{\hb@xt@\@lnumwidth{#1\hfil}\hspace{0pt}} \def\@dottedtocline#1#2#3#4#5{\ifnum #1>\c@tocdepth \else - \vskip \z@ \@plus.2\p@ + \vskip \z@ \@plus.2\p@? {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip \parindent #2\relax\@afterindenttrue \interlinepenalty\@M @@ -1235,7 +1539,7 @@ \@mkboth{\indexname}{}% \plainifnotempty % \thispagestyle{plain} \parindent\z@ - \parskip\z@ \@plus .3\p@\relax + \parskip\z@ \@plus .3\p@?\relax \let\item\@idxitem \raggedright \footnotesize\narrowbaselines @@ -1250,7 +1554,7 @@ \newcommand{\@idxitem}{\par\hangindent 4\jsZw} % 元 40pt \newcommand{\subitem}{\@idxitem \hspace*{2\jsZw}} % 元 20pt \newcommand{\subsubitem}{\@idxitem \hspace*{3\jsZw}} % 元 30pt -\newcommand{\indexspace}{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} +\newcommand{\indexspace}{\par \vskip 10\p@? \@plus5\p@? \@minus3\p@?\relax} \newcommand\seename{\if@english see\else →\fi} \newcommand\alsoname{\if@english see also\else →\fi} \let\footnotes@ve=\footnote @@ -1259,9 +1563,9 @@ \def\footnotemark{\jsInhibitGlue\footnotemarks@ve} \def\thefootnote{\ifnum\c@footnote>\z@\leavevmode\lower.5ex\hbox{*}\@arabic\c@footnote\fi} \renewcommand{\footnoterule}{% - \kern-3\p@ + \kern-3\p@? \hrule width .4\columnwidth - \kern 2.6\p@} + \kern 2.6\p@?} \@addtoreset{footnote}{chapter} \long\def\@footnotetext{% \insert\footins\bgroup @@ -1287,27 +1591,27 @@ \parindent 1\jsZw \noindent \llap{\@makefnmark\hskip0.3\jsZw}#1} +\let\jsInhibitGlueAtParTop\@empty +\def\everyparhook{\jsInhibitGlueAtParTop} +\AtBeginDocument{\everypar{\everyparhook}} \def\@inhibitglue{% \futurelet\@let@token\@@inhibitglue} \def\@@inhibitglue{% - \ifx\@let@token「 + \ifx\@let@token「% \jsInhibitGlue \else - \ifx\@let@token( + \ifx\@let@token(% \jsInhibitGlue \else - \ifx\@let@token『 + \ifx\@let@token『% \jsInhibitGlue \else - \ifx\@let@token[ + \ifx\@let@token[% \jsInhibitGlue \fi \fi \fi \fi} -\def\everyparhook{\jsInhibitGlueAtParTop} -\let\jsInhibitGlueAtParTop\@inhibitglue -\AtBeginDocument{\everypar{\everyparhook}} \def\@doendpe{% \@endpetrue \def\par{% @@ -1355,7 +1659,9 @@ \else \clubpenalty \@clubpenalty \everypar{\everyparhook}% - \fi\everyparhook}% + \fi + \bxjs@ltj@inhibitglue + \everyparhook}% \if@noitemarg \@noitemargfalse \if@nmbrlist @@ -1408,28 +1714,56 @@ \newcommand{\bibname}{\if@english Bibliography\else 参考文献\fi} \newcommand{\indexname}{\if@english Index\else 索引\fi} \newcommand{\figurename}{\if@english Fig.~\else 図\fi} -\newcommand{\tablename}{\if@english Table.~\else 表\fi} -\newcommand{\appendixname}{\if@english Appendix~\else 付録\fi} +\newcommand{\tablename}{\if@english Table~\else 表\fi} +\newcommand{\appendixname}{\if@english \else 付録\fi} +\@tempswafalse +\if p\jsEngine \@tempswatrue \fi +\if n\jsEngine \@tempswatrue \fi +\if@tempswa \expandafter\@firstoftwo +\else \expandafter\@secondoftwo +\fi +{% +\newif\ifjsSeireki \jsSeirekitrue +\def\西暦{\jsSeirekitrue} +\def\和暦{\jsSeirekifalse} +\def\Seireki{\jsSeirekitrue} +\def\Wareki{\jsSeirekifalse} +\def\bxjs@if@use@seireki{% + \ifjsSeireki \expandafter\@firstoftwo + \else \expandafter\@secondoftwo \fi} +}{% \newif\if西暦 \西暦true \def\西暦{\西暦true} \def\和暦{\西暦false} +\def\Seireki{\西暦true} +\def\Wareki{\西暦false} +\def\bxjs@if@use@seireki{% + \if西暦 \expandafter\@firstoftwo + \else \expandafter\@secondoftwo \fi} +} +\let\bxjs@unxp\@firstofone +\bxjs@test@engine\unexpanded{\let\bxjs@unxp\unexpanded} +\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T + \def\bxjs@iai{\noexpand~} +\else \def\bxjs@iai{} +\fi \newcount\heisei \heisei\year \advance\heisei-1988\relax -\def\today{% +\edef\today{% \if@english \ifcase\month\or January\or February\or March\or April\or May\or June\or July\or August\or September\or October\or November\or December\fi \space\number\day, \number\year \else - \if西暦 - \number\year 年 - \number\month 月 - \number\day 日 - \else - 平成\number\heisei 年 - \number\month 月 - \number\day 日 - \fi + \noexpand\bxjs@if@use@seireki{% + \number\year\bxjs@iai\bxjs@unxp{年}% + \bxjs@iai\number\month\bxjs@iai\bxjs@unxp{月}% + \bxjs@iai\number\day\bxjs@iai\bxjs@unxp{日}% + }{% + \bxjs@unxp{平成}\bxjs@iai\number\heisei\bxjs@iai\bxjs@unxp{年}% + \bxjs@iai\number\month\bxjs@iai\bxjs@unxp{月}% + \bxjs@iai\number\day\bxjs@iai\bxjs@unxp{日}% + }% \fi} \hyphenation{ado-be post-script ghost-script phe-nom-e-no-log-i-cal man-u-script} \pagestyle{plain}% @@ -1442,8 +1776,9 @@ \onecolumn \raggedbottom \fi -\ifbxjs@ptexmodule - \input{bxjsptex.def} +\catcode`\?=12 +\ifx\bxjs@jadriver\relax\else +\input{bxjsja-\bxjs@jadriver.def} \fi \bxjs@restore@jltrcc \endinput |