summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def')
-rw-r--r--Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def113
1 files changed, 90 insertions, 23 deletions
diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
index 44ec5bc312d..95f40207fcf 100644
--- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
+++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
@@ -21,10 +21,24 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
\ProvidesFile{bxjsja-standard.def}
- [2017/04/01 v1.5b BXJS document classes]
+ [2017/06/10 v1.5c BXJS document classes]
%% このファイルは日本語文字を含みます
\input{bxjsja-minimal.def}
\bxjs@simplejasetupfalse
+\newif\ifbxjs@jp@jismmiv
+\bxjs@cslet{bxjs@kv@jis2004@true}\bxjs@jp@jismmivtrue
+\bxjs@cslet{bxjs@kv@jis2004@false}\bxjs@jp@jismmivfalse
+\define@key{bxjsStd}{jis2004}[true]{%
+ \bxjs@set@keyval{jis2004}{#1}{}}
+\let\bxjs@jp@font\@empty
+\define@key{bxjsStd}{font}{%
+ \edef\bxjs@jp@font{#1}}
+\def\bxjs@next#1{\bxjs@safe@setkeys{bxjsStd}{#1}}
+\expandafter\bxjs@next\expandafter{\jsJaParam}
+\ifbxjs@jp@jismmiv
+ \g@addto@macro\@classoptionslist{,jis2004}
+ \PassOptionsToPackage{jis2004}{otf}
+\fi
\ifjsWitheTeX
\@tempdima=0.25mm
\protected\edef\jQ{\dimexpr\the\@tempdima\relax}
@@ -46,6 +60,45 @@
\@tempdima\bxjs@truept \bxjs@invscale\@tempdima\jsScale
\protected\edef\ascpt{\dimexpr\the\@tempdima\relax}
\fi
+\def\jsSetQHLength#1#2{%
+ \begingroup
+ \bxjs@parse@qh{#2}%
+ \ifx\bxjs@tmpb\relax \setlength\@tempdima{#2}%
+ \else \@tempdima\bxjs@tmpb\relax
+ \fi
+ \xdef\bxjs@g@tmpa{\the\@tempdima}%
+ \endgroup
+ #1=\bxjs@g@tmpa\relax}
+\if j\jsEngine
+\def\bxjs@parse@qh#1{%
+ \let\bxjs@tmpb\relax}
+\else
+\def\bxjs@parse@qh#1{%
+ \def\bxjs@tmpa{#1}\let\bxjs@tmpb\relax
+ \bxjs@parse@qh@a{trueQ}\trueQ
+ \bxjs@parse@qh@a{trueH}\trueH
+ \bxjs@parse@qh@a{Q}\jQ
+ \bxjs@parse@qh@a{H}\jH}
+\def\bxjs@parse@qh@a#1#2{%
+ \ifx\bxjs@tmpb\relax
+ \def\bxjs@next##1#1\@nil##2\@nnil{\bxjs@parse@qh@b{##1}{##2}}%
+ \expandafter\bxjs@next\bxjs@tmpa\@nil#1\@nil\@nnil{#2}%
+ \fi}
+\def\bxjs@parse@qh@b#1#2#3{%
+ \ifx\@nnil#2\@nnil\else \def\bxjs@tmpb{#1#3}\fi}
+\fi
+\def\jafontsize#1#2{%
+ \begingroup
+ \bxjs@jafontsize@a{#1}%
+ \@tempdimb\jsInverseScale\@tempdima
+ \bxjs@jafontsize@a{#2}%
+ \xdef\bxjs@g@tmpa{%
+ \noexpand\fontsize{\the\@tempdimb}{\the\@tempdima}}%
+ \endgroup\bxjs@g@tmpa}
+\def\bxjs@jafontsize@a#1{%
+ \bxjs@parse@qh{#1}%
+ \ifx\bxjs@tmpb\relax \def\bxjs@tmpb{#1}\fi
+ \@defaultunits\@tempdima\bxjs@tmpb pt\relax\@nnil}
\def\bxjs@kanjiskip{0pt}
\newcommand*\setkanjiskip[1]{%
\edef\bxjs@kanjiskip{#1}%
@@ -130,8 +183,13 @@
\loop\if@tempswa
\read\@inputcheck to\bxjs@tmpa
\expandafter\bxjs@get@ke@a\bxjs@tmpa\@nil kanjiEmbed \@nil\@nnil
- \ifx\bxjs@tmpa\relax\else
- \global\let\bxjs@g@tmpa\bxjs@tmpa
+ \ifx\bxjs@tmpb\relax\else
+ \global\let\bxjs@g@tmpa\bxjs@tmpb
+ \@tempswafalse
+ \fi
+ \expandafter\bxjs@get@ke@b\bxjs@tmpa\@nil jaEmbed \@nil\@nnil
+ \ifx\bxjs@tmpb\relax\else
+ \global\let\bxjs@g@tmpa\bxjs@tmpb
\@tempswafalse
\fi
\ifeof\@inputcheck \@tempswafalse \fi
@@ -142,8 +200,13 @@
}
\@onlypreamble\bxjs@get@ke@a
\def\bxjs@get@ke@a#1kanjiEmbed #2\@nil#3\@nnil{%
- \ifx$#1$\def\bxjs@tmpa{#2}%
- \else \let\bxjs@tmpa\relax
+ \ifx$#1$\def\bxjs@tmpb{#2}%
+ \else \let\bxjs@tmpb\relax
+ \fi}
+\@onlypreamble\bxjs@get@ke@b
+\def\bxjs@get@ke@b#1jaEmbed #2\@nil#3\@nnil{%
+ \ifx$#1$\def\bxjs@tmpb{#2}%
+ \else \let\bxjs@tmpb\relax
\fi}
\newcommand*\jachar[1]{%
\begingroup
@@ -227,17 +290,21 @@
\else \def\>{\protect\bxjs@put@xkanjiskip}
\fi
\fi
+\ifbxjs@jp@jismmiv
+ \PassOptionsToPackage{prefer2004jis}{pxchfon}
+ \PassOptionsToPackage{prefer2004jis}{pxbabel}
+\fi
\let\bxjs@tmpa\jsJaFont
\ifx\bxjs@tmpa\bxjs@@auto
\let\bxjs@tmpa\@empty
\else\ifx\bxjs@tmpa\bxjs@@noEmbed
\def\bxjs@tmpa{noembed}
\fi\fi
-\ifx\jsJaFont\@empty\else
- \edef\bxjs@nxt{%
- \noexpand\RequirePackage[\jsJaFont]
- {pxchfon}[2010/05/12]}% v0.5
- \bxjs@nxt
+\edef\bxjs@tmpa{\bxjs@catopt\bxjs@tmpa\bxjs@jp@font}
+\ifx\bxjs@tmpa\@empty\else
+ \edef\bxjs@next{%
+ \noexpand\RequirePackage[\bxjs@tmpa]{pxchfon}[2010/05/12]% v0.5
+ }\bxjs@next
\fi
\begingroup
\global\let\@gtempa\relax
@@ -304,11 +371,11 @@
\fi
\else\if p\jsEngine
\bxjs@adjust@jafont{f}
-\edef\bxjs@nxt{%
- \noexpand\RequirePackage[%
- \ifx\bxjs@tmpa\@empty\else \bxjs@tmpa,\fi
- whole,autotilde]{bxcjkjatype}[2013/10/15]}% v0.2c
-\bxjs@nxt
+\edef\bxjs@tmpa{\bxjs@catopt\bxjs@tmpa\bxjs@jp@font}
+\edef\bxjs@tmpa{\bxjs@catopt\bxjs@tmpa{whole,autotilde}}
+\edef\bxjs@next{%
+ \noexpand\RequirePackage[\bxjs@tmpa]{bxcjkjatype}[2013/10/15]% v0.2c
+}\bxjs@next
\bxjs@cjk@loaded
\ifbxjs@hyperref@enc
\PassOptionsToPackage{unicode}{hyperref}
@@ -374,14 +441,14 @@
{xeCJK or zxjatype is too old}\@ehc
\fi
\bxjs@adjust@jafont{f}
+\edef\bxjs@tmpa{\bxjs@catopt\bxjs@tmpa\bxjs@jp@font}
\ifx\bxjs@tmpa\@empty
\setCJKmainfont[BoldFont=IPAexGothic]{IPAexMincho}
\setCJKsansfont[BoldFont=IPAexGothic]{IPAexGothic}
\else
- \edef\bxjs@nxt{%
- \noexpand\RequirePackage[\bxjs@tmpa]%
- {zxjafont}[2013/01/28]}% v0.2a
- \bxjs@nxt
+ \edef\bxjs@next{%
+ \noexpand\RequirePackage[\bxjs@tmpa]{zxjafont}[2013/01/28]}% v0.2a
+ }\bxjs@next
\fi
\ifnum\strcmp{\the\XeTeXversion\XeTeXrevision}{0.99992}>\m@ne
\ifbxjs@hyperref@enc
@@ -434,15 +501,15 @@
\ifx\bxjs@tmpa\bxjs@@noEmbed
\def\bxjs@tmpa{noembed}
\fi
+\edef\bxjs@tmpa{\bxjs@catopt\bxjs@tmpa\bxjs@jp@font}
\ifx\bxjs@tmpa\@empty
\defaultjfontfeatures{ Kerning=Off }
\setmainjfont[BoldFont=IPAexGothic,JFM=ujis]{IPAexMincho}
\setsansjfont[BoldFont=IPAexGothic,JFM=ujis]{IPAexGothic}
\else
- \edef\bxjs@nxt{%
- \noexpand\RequirePackage[\bxjs@tmpa]
- {luatexja-preset}}%
- \bxjs@nxt
+ \edef\bxjs@next{%
+ \noexpand\RequirePackage[\bxjs@tmpa]{luatexja-preset}%
+ }\bxjs@next
\fi
\DeclareRobustCommand\rmfamily
{\not@math@alphabet\rmfamily\mathrm