texlive[50556] Master/texmf-dist: pxchfon (23mar19)

commits+karl at tug.org commits+karl at tug.org
Sat Mar 23 23:05:34 CET 2019


Revision: 50556
          http://tug.org/svn/texlive?view=revision&revision=50556
Author:   karl
Date:     2019-03-23 23:05:34 +0100 (Sat, 23 Mar 2019)
Log Message:
-----------
pxchfon (23mar19)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/platex/pxchfon/README-ja.md
    trunk/Master/texmf-dist/doc/platex/pxchfon/README.md
    trunk/Master/texmf-dist/doc/platex/pxchfon/pxchfon.pdf
    trunk/Master/texmf-dist/doc/platex/pxchfon/pxchfon.tex
    trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjar-b-l0j.vf
    trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjar-l-l0j.vf
    trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjar-r-l0j.vf
    trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjas-b-l0j.vf
    trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjas-r-l0j.vf
    trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjas-x-l0j.vf
    trunk/Master/texmf-dist/tex/platex/pxchfon/pxchfon.sty

Added Paths:
-----------
    trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/cfjam-r-l0j.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-r-l0j.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-rz-l0j.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-bz-l0j.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-lz-l0j.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-rz-l0j.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-bz-l0j.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-rz-l0j.tfm
    trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-xz-l0j.tfm
    trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjam-r-l0j.vf

Modified: trunk/Master/texmf-dist/doc/platex/pxchfon/README-ja.md
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/platex/pxchfon/README.md
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/platex/pxchfon/pxchfon.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/platex/pxchfon/pxchfon.tex
===================================================================
--- trunk/Master/texmf-dist/doc/platex/pxchfon/pxchfon.tex	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/doc/platex/pxchfon/pxchfon.tex	2019-03-23 22:05:34 UTC (rev 50556)
@@ -10,8 +10,8 @@
 \usepackage{metalogo}
 \usepackage{shortvrb}
 \MakeShortVerb{\|}
-\newcommand{\PkgVersion}{1.3a}
-\newcommand{\PkgDate}{2019/03/20}
+\newcommand{\PkgVersion}{1.4a}
+\newcommand{\PkgDate}{2019/03/24}
 \newcommand{\Pkg}[1]{\textsf{#1}}
 \newcommand{\Meta}[1]{$\langle$\mbox{}#1\mbox{}$\rangle$}
 \newcommand{\Note}{\par\noindent ※}
@@ -807,8 +807,23 @@
 \setmarugothicfont{SourceHanSans-Medium.otf}
 \end{verbatim}\end{quote}
 
+\item |sourcehan-jp|\Means
+  Source Han Serif JP(源ノ明朝)+ Source Han Sans JP(源ノ角ゴシック)、
+  地域別サブセットOTF版。
+
+\begin{quote}\small\begin{verbatim}
+\setminchofont{SourceHanSerifJP-Regular.otf}
+\setlightminchofont{SourceHanSerifJP-Light.otf}
+\setboldminchofont{SourceHanSerifJP-Bold.otf}
+\setgothicfont{SourceHanSansJP-Medium.otf}
+\setmediumgothicfont{SourceHanSansJP-Regular.otf}
+\setboldgothicfont{SourceHanSansJP-Bold.otf}
+\setxboldgothicfont{SourceHanSansJP-Heavy.otf}
+\setmarugothicfont{SourceHanSansJP-Medium.otf}
+\end{verbatim}\end{quote}
+
 \item |noto-otc|\Means
-  Noto Serif CJK + Noto Sans CJK、
+  Noto Serif CJK JP + Noto Sans CJK JP、
   OTC版。
 
 \begin{quote}\small\begin{verbatim}
@@ -823,20 +838,35 @@
 \end{verbatim}\end{quote}
 
 \item |noto|\Means
-  Noto Serif CJK + Noto Sans CJK、
+  Noto Serif CJK JP + Noto Sans CJK JP、
   言語別OTF版。
 
 \begin{quote}\small\begin{verbatim}
-\setminchofont{NotoSerifCJK-Regular.otf}
-\setlightminchofont{NotoSerifCJK-Light.otf}
-\setboldminchofont{NotoSerifCJK-Bold.otf}
-\setgothicfont{NotoSansCJK-Medium.otf}
-\setmediumgothicfont{NotoSansCJK-Regular.otf}
-\setboldgothicfont{NotoSansCJK-Bold.otf}
-\setxboldgothicfont{NotoSansCJK-Black.otf}
-\setmarugothicfont{NotoSansCJK-Medium.otf}
+\setminchofont{NotoSerifCJKjp-Regular.otf}
+\setlightminchofont{NotoSerifCJKjp-Light.otf}
+\setboldminchofont{NotoSerifCJKjp-Bold.otf}
+\setgothicfont{NotoSansCJKjp-Medium.otf}
+\setmediumgothicfont{NotoSansCJKjp-Regular.otf}
+\setboldgothicfont{NotoSansCJKjp-Bold.otf}
+\setxboldgothicfont{NotoSansCJKjp-Black.otf}
+\setmarugothicfont{NotoSansCJKjp-Medium.otf}
 \end{verbatim}\end{quote}
 
+\item |noto-jp|\Means
+  Noto Serif JP + Noto Sans JP、
+  地域別サブセットOTF版。
+
+\begin{quote}\small\begin{verbatim}
+\setminchofont{NotoSerifJP-Regular.otf}
+\setlightminchofont{NotoSerifJP-Light.otf}
+\setboldminchofont{NotoSerifJP-Bold.otf}
+\setgothicfont{NotoSansJP-Medium.otf}
+\setmediumgothicfont{NotoSansJP-Regular.otf}
+\setboldgothicfont{NotoSansJP-Bold.otf}
+\setxboldgothicfont{NotoSansJP-Black.otf}
+\setmarugothicfont{NotoSansJP-Medium.otf}
+\end{verbatim}\end{quote}
+
 \end{itemize}
 
 %-------------------
@@ -1030,10 +1060,12 @@
 1.2版から本来の仕様が適用される。}。
 
 \begin{itemize}
+\item |sourcehan-otc|
 \item |sourcehan|
-\item |sourcehan-otc|
+\item |sourcehan-jp|
+\item |noto-otc|
 \item |noto|
-\item |noto-otc|
+\item |noto-jp|
 \end{itemize}
 
 \paragraph{特殊プリセット指定\<(過渡的)}
@@ -1090,18 +1122,29 @@
 \label{sec:Mechanism-Alph}
 
 指定された和文フォントの半角部分からなる欧文フォントファミリとして
-OT1/cfjar(明朝)とOT1/cfjas(ゴシック)を定義し、
-既定の欧文ファミリに設定している
-(明朝→|\rmdefault|;ゴシック→|\sfdefault|)
-\footnote{従って、欧文フォントの置換(\texttt{alphabet}や
-\texttt{relfont}オプション)を利用する場合は、欧文エンコーディングが
-OT1である必要がある。}。
-その上で、この欧文ファミリに対するマップ指定を和文と同じ方法で行っている。
+OT1/cfjar(明朝)、OT1/cfjas(ゴシック)、OT1/cfjam(丸ゴシック)
+の3つ(以下では\Strong{CFJAファミリ}と総称する)を定義している
+\footnote{1.4版からはT1エンコーディングにもCFJAファミリを定義する。
+現状で対応しているのはOT1とT1のみであるので、欧文フォントの置換
+(\texttt{alphabet}や\texttt{relfont}オプション)
+を利用する文書は、欧文エンコーディングがOT1かT1である必要がある。}。
+その上で、CFJAファミリに対するマップ指定を和文と同じ方法で行っている。
+なお、CFJAファミリは内部ではOT1として扱われるが、
+実際にはOT1の一部のグリフしか持っていない。
 
-従って、例えば一時的に従来のCMフォントに切り替えたい場合はファミリ
-をcmrに変更すればよい。なお、このcfjarとcfjasフォントは内部では
-OT1として扱われるが、実際にはOT1の一部のグリフしか持っていない。
+\paragraph{alphabetオプション指定時}
+オプション |alphabet| を指定した場合、
+CFJAファミリを既定の欧文ファミリとして設定する
+(cfjar→|\rmdefault|;cfjas→|\sfdefault|)。
+従って、例えば一時的に従来のCMフォントを使いたい場合は、
+適宜ファミリの変更(|\fontfamily{cmr}|等)を行えばよい。
 
+\paragraph{relfontオプション指定時}
+オプション |relfont| を指定した場合、
+CFJAファミリを和文ファミリの従属欧文フォントに
+(cfjarを |\mcfamily| に、cfjasを |\gtfamily| に、
+cfjamを |\mgfamily| に対して)設定する。
+
 %===========================================================
 \section{注意事項}
 \label{sec:Notice}

Added: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/cfjam-r-l0j.tfm
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/cfjam-r-l0j.tfm
===================================================================
--- trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/cfjam-r-l0j.tfm	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/cfjam-r-l0j.tfm	2019-03-23 22:05:34 UTC (rev 50556)

Property changes on: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/cfjam-r-l0j.tfm
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-r-l0j.tfm
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-r-l0j.tfm
===================================================================
--- trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-r-l0j.tfm	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-r-l0j.tfm	2019-03-23 22:05:34 UTC (rev 50556)

Property changes on: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-r-l0j.tfm
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-rz-l0j.tfm
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-rz-l0j.tfm
===================================================================
--- trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-rz-l0j.tfm	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-rz-l0j.tfm	2019-03-23 22:05:34 UTC (rev 50556)

Property changes on: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjam-rz-l0j.tfm
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-bz-l0j.tfm
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-bz-l0j.tfm
===================================================================
--- trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-bz-l0j.tfm	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-bz-l0j.tfm	2019-03-23 22:05:34 UTC (rev 50556)

Property changes on: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-bz-l0j.tfm
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-lz-l0j.tfm
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-lz-l0j.tfm
===================================================================
--- trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-lz-l0j.tfm	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-lz-l0j.tfm	2019-03-23 22:05:34 UTC (rev 50556)

Property changes on: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-lz-l0j.tfm
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-rz-l0j.tfm
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-rz-l0j.tfm
===================================================================
--- trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-rz-l0j.tfm	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-rz-l0j.tfm	2019-03-23 22:05:34 UTC (rev 50556)

Property changes on: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjar-rz-l0j.tfm
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-bz-l0j.tfm
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-bz-l0j.tfm
===================================================================
--- trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-bz-l0j.tfm	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-bz-l0j.tfm	2019-03-23 22:05:34 UTC (rev 50556)

Property changes on: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-bz-l0j.tfm
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-rz-l0j.tfm
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-rz-l0j.tfm
===================================================================
--- trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-rz-l0j.tfm	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-rz-l0j.tfm	2019-03-23 22:05:34 UTC (rev 50556)

Property changes on: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-rz-l0j.tfm
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-xz-l0j.tfm
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-xz-l0j.tfm
===================================================================
--- trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-xz-l0j.tfm	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-xz-l0j.tfm	2019-03-23 22:05:34 UTC (rev 50556)

Property changes on: trunk/Master/texmf-dist/fonts/tfm/public/pxchfon/r-cfjas-xz-l0j.tfm
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Added: trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjam-r-l0j.vf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjam-r-l0j.vf
===================================================================
--- trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjam-r-l0j.vf	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjam-r-l0j.vf	2019-03-23 22:05:34 UTC (rev 50556)

Property changes on: trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjam-r-l0j.vf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Modified: trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjar-b-l0j.vf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjar-l-l0j.vf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjar-r-l0j.vf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjas-b-l0j.vf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjas-r-l0j.vf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/fonts/vf/public/pxchfon/cfjas-x-l0j.vf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/tex/platex/pxchfon/pxchfon.sty
===================================================================
--- trunk/Master/texmf-dist/tex/platex/pxchfon/pxchfon.sty	2019-03-23 22:05:15 UTC (rev 50555)
+++ trunk/Master/texmf-dist/tex/platex/pxchfon/pxchfon.sty	2019-03-23 22:05:34 UTC (rev 50556)
@@ -10,7 +10,7 @@
 
 %% package declaration
 \NeedsTeXFormat{pLaTeX2e}
-\ProvidesPackage{pxchfon}[2019/03/20 v1.3a]
+\ProvidesPackage{pxchfon}[2019/03/24 v1.4a]
 \def\pxcz at pkgname{pxchfon}
 
 %% preparations
@@ -219,10 +219,10 @@
   kozuka-pro,kozuka-pr6,kozuka-pr6n,hiragino-pro,hiragino-pron,%
   hiragino-elcapitan-pro,hiragino-elcapitan-pron,%
   morisawa-pro,morisawa-pr6n,yu-win,yu-win10,yu-win10+,yu-osx,%
-  sourcehan-otc,sourcehan,noto-otc,noto,%
+  sourcehan-otc,sourcehan,sourcehan-jp,noto-otc,noto,noto-jp,%
   sourcehan-otc+,sourcehan+,noto-otc+,noto+,%
   %(alias)
-  hiragino,%
+  hiragino,noto-otf,%
   noEmbed,kozuka,hiragino-elcapitan,morisawa}
 \pxcz at onlypreamble@def\pxcz at all@abolished at preset{%
   ipa-otf,ipa-otf-dx,kozuka4,kozuka6,kozuka6n,
@@ -355,8 +355,11 @@
   \let\pxcz at switch@font at xjistrue\pxcz at switch@font at xjisfalse
 \fi
 
-%--------------------------------------- preset-triggered setup
+%--------------------------------------- preset-dependent setup
 
+%% variables
+\newif\ifpxcz at warn@unless at all@defined
+
 %% \pxcz at apply@opt at unicode
 % Forces the 'unicode' setup (unless a directunicode option was given).
 \@onlypreamble\pxcz at apply@opt at unicode
@@ -399,8 +402,11 @@
 % equivalent to the corresponding 'XXXX+' preset.
 \pxcz at do{sourcehan}{\pxcz at apply@opt at unicode}
 \pxcz at do{sourcehan-otc}{\pxcz at apply@opt at unicode}
+\pxcz at do{sourcehan-jp}{\pxcz at apply@opt at unicode}
 \pxcz at do{noto}{\pxcz at apply@opt at unicode}
+\pxcz at do{noto-otf}{\pxcz at apply@opt at unicode}
 \pxcz at do{noto-otc}{\pxcz at apply@opt at unicode}
+\pxcz at do{noto-jp}{\pxcz at apply@opt at unicode}
 \pxcz at do{sourcehan+}{\pxcz at apply@opt at unicodeP}
 \pxcz at do{sourcehan-otc+}{\pxcz at apply@opt at unicodeP}
 \pxcz at do{noto+}{\pxcz at apply@opt at unicodeP}
@@ -474,6 +480,9 @@
   \fi
   \let\pxcz at expert=f
 \fi
+\if t\pxcz at expert
+  \pxcz at warn@unless at all@definedtrue
+\fi
 
 %--------------------------------------- user interface
 
@@ -605,6 +614,11 @@
 \newcommand*\usefontmapfile[1]{%
   \JaFontUserDefinedMap{\pxcz at addtospec@alt\pxcz at mapfile{#1}}}
 
+%% \pxcz at check@extra
+% Executed at the begin-document hook.
+\@onlypreamble\pxcz at check@extra
+\let\pxcz at check@extra\@empty
+
 %--------------------------------------- map entry handling
 
 %%<*> \setnewglyphcmapprefix{<str>}
@@ -796,14 +810,13 @@
 \pxcz at declare@entry at modifier{HWid}{%
   \ifx\pxcz at font\pxcz at noembed
     \let\pxcz at cmap\pxcz at cmap@hwuni
+  \else\ifnum\pxcz at directunicode=\pxcz at directunicode@full
+    \let\pxcz at cmap\pxcz at cmap@directuni
   \else
     \let\pxcz at cmap\pxcz at cmap@uni
     \pxcz at switch@font at for{hwid}%
-  \fi
-  \pxcz at add@lopt{hwid}%
-  \def\pxcz at tmpa{mgr}\ifx\pxcz at sym\pxcz at tmpa
-    \let\pxcz at font\@empty
-  \fi}
+  \fi\fi
+  \pxcz at add@lopt{hwid}}
 % FWid
 \pxcz at declare@entry at modifier{FWid}{%
   \pxcz at switch@font at for{fwid}%
@@ -952,12 +965,19 @@
 }
 \pxcz at mapentry{ALPHA}{%
 \Entry{mnl}{r-cfjar-l- at PXcjk0@}{unicode}         {HWid}%
+\Entry{mnl}{r-cfjar-lz- at PXcjk0@}{UniJIS-UCS2-H}  {Uni*,FWid}%
 \Entry{mnr}{r-cfjar-r- at PXcjk0@}{unicode}         {HWid}%
+\Entry{mnr}{r-cfjar-rz- at PXcjk0@}{UniJIS-UCS2-H}  {Uni*,FWid}%
 \Entry{mnb}{r-cfjar-b- at PXcjk0@}{unicode}         {HWid}%
+\Entry{mnb}{r-cfjar-bz- at PXcjk0@}{UniJIS-UCS2-H}  {Uni*,FWid}%
 \Entry{gtr}{r-cfjas-r- at PXcjk0@}{unicode}         {HWid}%
+\Entry{gtr}{r-cfjas-rz- at PXcjk0@}{UniJIS-UCS2-H}  {Uni*,FWid}%
 \Entry{gtb}{r-cfjas-b- at PXcjk0@}{unicode}         {HWid}%
+\Entry{gtb}{r-cfjas-bz- at PXcjk0@}{UniJIS-UCS2-H}  {Uni*,FWid}%
 \Entry{gtx}{r-cfjas-x- at PXcjk0@}{unicode}         {HWid}%
-\Entry{mgr}{r-cfjas-r- at PXcjk0@}{unicode}         {HWid}%
+\Entry{gtx}{r-cfjas-xz- at PXcjk0@}{UniJIS-UCS2-H}  {Uni*,FWid}%
+\Entry{mgr}{r-cfjam-r- at PXcjk0@}{unicode}         {HWid}%
+\Entry{mgr}{r-cfjam-rz- at PXcjk0@}{UniJIS-UCS2-H}  {Uni*,FWid}%
 }
 \pxcz at mapentry{UTF}{%
 \Entry{mnr}{unijmin-h}     {UniJIS-UTF16-H}      {Uni*,Switch}%
@@ -1366,26 +1386,40 @@
 
 %--------------------------------------- 'alphabet' option
 
-%% \pxcz at decl@shape{<fam>}{<ser>}{<font>}
+%% \pxcz at afont@enc at list
+\def\pxcz at afont@enc at list{OT1,T1}
+%% \pxcz at decl@family{<fam>}
+\@onlypreamble\pxcz at decl@family
+\def\pxcz at decl@family#1{%
+  \@for\pxcz at x:=\pxcz at afont@enc at list\do{%
+    \DeclareFontFamily{\pxcz at x}{#1}{}}}
+%% \pxcz at decl@shape{<fam>}{<ser>}<sw>{<font>}
 \@onlypreamble\pxcz at decl@shape
-\def\pxcz at decl@shape#1#2#3{%
-\DeclareFontShape{OT1}{#1}{#2}{n}{<->#3}{}%
-\DeclareFontShape{OT1}{#1}{#2}{it}{<->ssub*#1/#2/n}{}}
+\def\pxcz at decl@shape#1#2#3#4{%
+  \if s#3%
+    \@for\pxcz at x:=\pxcz at afont@enc at list\do{%
+      \DeclareFontShape{\pxcz at x}{#1}{#2}{n}{<->ssub*#4}{}}%
+  \else
+    \DeclareFontShape{OT1}{#1}{#2}{n}{<->#4-l0j}{}%
+    \DeclareFontShape {T1}{#1}{#2}{n}{<->#4-l0j}{}% FIXME
+  \fi
+  \@for\pxcz at x:=\pxcz at afont@enc at list\do{%
+    \DeclareFontShape{\pxcz at x}{#1}{#2}{it}{<->ssub*#1/#2/n}{}%
+    \DeclareFontShape{\pxcz at x}{#1}{#2}{sl}{<->ssub*#1/#2/n}{}}}
 
-\let\pxcz at check@extra\@empty
-\@onlypreamble\pxcz at check@extra
-%
 \ifpxcz at alphafont   %---- <*alphabet>
 \ifpxcz at otf@deluxe  %---- <*otfdx> : otf with deluxe option
   % define families cfjar & cfjas
-\DeclareFontFamily{OT1}{cfjar}{}%
-\pxcz at decl@shape{cfjar}{l}{cfjar-l-l0j}%
-\pxcz at decl@shape{cfjar}{m}{cfjar-r-l0j}%
-\pxcz at decl@shape{cfjar}{bx}{cfjar-b-l0j}%
-\DeclareFontFamily{OT1}{cfjas}{}%
-\pxcz at decl@shape{cfjas}{m}{cfjas-r-l0j}%
-\pxcz at decl@shape{cfjas}{bx}{cfjas-b-l0j}%
-\pxcz at decl@shape{cfjas}{eb}{cfjas-x-l0j}%
+\pxcz at decl@family{cfjar}%
+\pxcz at decl@shape{cfjar}{l}n{cfjar-l}%
+\pxcz at decl@shape{cfjar}{m}n{cfjar-r}%
+\pxcz at decl@shape{cfjar}{bx}n{cfjar-b}%
+\pxcz at decl@family{cfjas}%
+\pxcz at decl@shape{cfjas}{m}n{cfjas-r}%
+\pxcz at decl@shape{cfjas}{bx}n{cfjas-b}%
+\pxcz at decl@shape{cfjas}{eb}n{cfjas-x}%
+\pxcz at decl@family{cfjam}%
+\pxcz at decl@shape{cfjam}{m}n{cfjam-r}%
   % redefine \ltseries & \ebseries so they affect roman font
 \let\ltseries\relax \let\ebseries\relax
 \DeclareRobustCommand\ltseries{%
@@ -1395,18 +1429,18 @@
   \not at math@alphabet\ebseries\relax
   \fontseries\ebdefault\selectfont}%
 \else               %---- <*!otfdx>
-\DeclareFontFamily{OT1}{cfjar}{}%
-\pxcz at decl@shape{cfjar}{m}{cfjar-r-l0j}%
-\pxcz at decl@shape{cfjar}{bx}{ssub*cfjas/m/n}%
-\DeclareFontFamily{OT1}{cfjas}{}%
-\pxcz at decl@shape{cfjas}{m}{cfjas-r-l0j}%
-\pxcz at decl@shape{cfjas}{bx}{ssub*cfjas/m/n}%
+\pxcz at decl@family{cfjar}%
+\pxcz at decl@shape{cfjar}{m}n{cfjar-r}%
+\pxcz at decl@shape{cfjar}{bx}s{cfjas/m/n}%
+\pxcz at decl@family{cfjas}%
+\pxcz at decl@shape{cfjas}{m}n{cfjas-r}%
+\pxcz at decl@shape{cfjas}{bx}s{cfjas/m/n}%
 \@onlypreamble\pxcz at err@dxotf
 \def\pxcz at err@dxotf#1{%
   \pxcz at error{Loaded before '#1' with 'deluxe'}%
   {This package must be loaded after '#1' with 'deluxe' option
   when using both.}}
-\def\pxcz at check@extra{%
+\g at addto@macro\pxcz at check@extra{%
   \expandafter\let\expandafter\pxcz at x\csname pxcz at FS/mnr\endcsname
   \ifx\pxcz at x\@empty\else
     % if mnr is replaced but gtr is not then ...
@@ -1422,6 +1456,12 @@
 
 %--------------------------------------- begin-document hook
 
+%% variables
+\let\pxcz at afont@enc\relax
+
+%% \pxcz at mgfamily@hook
+\def\pxcz at mgfamily@hook{\romanfamily{cfjam}}
+
 %% \pxcz at set@page at hook{<text>}
 \@onlypreamble\pxcz at set@page at hook
 \ifpxcz at everypage
@@ -1435,7 +1475,7 @@
   \global\setbox\@begindvibox\vbox{\yoko\unvbox\@begindvibox#1}}
 \fi
 
-%% the begin-document hook
+%% \pxcz at check@alldefined{<sym>,...}
 \@onlypreamble\pxcz at check@alldefined
 \def\pxcz at check@alldefined#1{%
   \pxcz at oktrue
@@ -1442,6 +1482,34 @@
   \@for\pxcz at x:={#1}\do{%
     \expandafter\ifx\csname pxcz at FS/\pxcz at x\endcsname\@empty
       \pxcz at okfalse \fi}}
+
+%% \pxcz at decl@relfont{<fam>}{<afam>}{<ser>,...}
+\@onlypreamble\pxcz at decl@relfont
+\def\pxcz at decl@relfont#1#2#3{%
+  \@for\pxcz at x:={#3}\do{%
+    \expandafter\ifx\csname\k at encoding/#1/\pxcz at x/n\endcsname\relax\else
+      \edef\pxcz at tmpa{\noexpand\DeclareRelationFont
+        {\k at encoding}{#1}{\pxcz at x}{}{\pxcz at afont@enc}{#2}{\pxcz at x}{}%
+      }\pxcz at tmpa
+    \fi}%
+  \pxcz at info{Relation font set for \k at encoding/#1}}
+
+%% \pxcz at check@afont at enc
+\@onlypreamble\pxcz at check@afont at enc
+\def\pxcz at check@afont at enc{%
+  \pxcz at oktrue % OT1 is always okay
+  \def\pxcz at tmpa{OT1}\ifx\pxcz at tmpa\pxcz at afont@enc\else
+    % otherwise, noembed must not be used
+    \@for\pxcz at x:=\pxcz at sym@list\do{%
+      \expandafter\ifx\csname pxcz at FS/\pxcz at x\endcsname\pxcz at noembed
+        \pxcz at okfalse \fi}%
+    \expandafter\ifx\csname\pxcz at afont@enc+cfjar\endcsname\relax
+      \pxcz at okfalse \fi
+  \fi
+  % if not okay, use OT1 instead
+  \ifpxcz at ok\else \def\pxcz at afont@enc{OT1}\fi}
+
+%% the begin-document hook
 \@onlypreamble\pxcz at doc@hook
 \def\pxcz at doc@hook{%
   \pxcz at user@hook
@@ -1451,24 +1519,41 @@
   \ifx t\pxcz at strict@csi
     \pxcz at inspect@flavor at all
   \fi
-  \ifpxcz at alpha
+  \ifpxcz at alpha % 'alphabet'
     \pxcz at check@alldefined{mnl,mnr,mnb}%
     \ifpxcz at ok \renewcommand\rmdefault{cfjar}\fi
     \pxcz at check@alldefined{gtr,gtb,gtx}%
     \ifpxcz at ok \renewcommand\sfdefault{cfjas}\fi
-    \edef\pxcz at tmpa{\encodingdefault}\def\pxcz at tmpb{OT1}
-    \ifx\pxcz at tmpa\pxcz at tmpb\else
+    % attach hook to \mgfamily if mgr font is defined
+    \pxcz at check@alldefined{mgr}
+    \ifpxcz at ok\ifpxcz at otf@deluxe
+      \begingroup
+        \def\pxcz at x##1{\toks@\expandafter{##1}%
+          \xdef##1{\noexpand\pxcz at mgfamily@hook\the\toks@}%
+        }\expandafter\pxcz at x\csname mgfamily \endcsname
+      \endgroup
+    \fi\fi
+    % decide alphabet font encoding
+    \edef\pxcz at afont@enc{\encodingdefault}%
+    \pxcz at check@afont at enc\ifpxcz at ok\else
       \pxcz at warn{Default encoding is changed to 'OT1' because%
         \MessageBreak'alphabet' option is in effect}%
+      \renewcommand\encodingdefault{OT1}%
     \fi
-    \renewcommand\encodingdefault{OT1}\normalfont
+    \normalfont
     \pxcz at addtospec{ALPHA}%
   \fi
-  \ifpxcz at rel
+  \ifpxcz at rel % 'relfont'
+    \edef\pxcz at afont@enc{\encodingdefault}%
+    \pxcz at check@afont at enc
     \pxcz at check@alldefined{mnl,mnr,mnb}%
-    \ifpxcz at ok \pxcz at decl@relfont\mcdefault{cfjar}{l}\fi
+    \ifpxcz at ok \pxcz at decl@relfont\mcdefault{cfjar}{m,bx,l}\fi
     \pxcz at check@alldefined{gtr,gtb,gtx}%
-    \ifpxcz at ok \pxcz at decl@relfont\gtdefault{cfjas}{eb}\fi
+    \ifpxcz at ok \pxcz at decl@relfont\gtdefault{cfjas}{m,bx,eb}\fi
+    \pxcz at check@alldefined{mgr}%
+    \ifpxcz at ok\ifpxcz at otf@deluxe
+      \pxcz at decl@relfont\mgdefault{cfjam}{m}%
+    \fi\fi
     \pxcz at addtospec{ALPHA}%
   \fi
   \ifpxcz at uptex\else
@@ -1499,6 +1584,20 @@
   \@ifpackageloaded{pxfontenc}{\pxcz at oktrue}{}%
   \ifpxcz at ok \pxcz at addtospec{PXOTF}%
   \fi
+  % warn if some weights are not substituted, and if necessaty
+  \ifpxcz at warn@unless at all@defined
+    \ifpxcz at otf@deluxe
+      \pxcz at check@alldefined{mnl,mnr,mnb,gtr,gtb,gtx,mgr}%
+    \else \pxcz at check@alldefined{mnr,mnb,gtr,gtb}%
+    \fi
+    \ifpxcz at ok\else
+      \PackageWarningNoLine\pxcz at pkgname
+       {Some font weights are not substituted.\MessageBreak
+        Thus some features of pxchfon might not work\MessageBreak
+        properly when applied to such weights}%
+    \fi
+  \fi
+  %
   \pxcz at check@extra
   \pxcz at addtospec{USR}%
   \ifpxcz at enabled
@@ -1517,17 +1616,6 @@
 }
 \AtBeginDocument{\pxcz at doc@hook}
 
-%% \pxcz at decl@relfont
-\@onlypreamble\pxcz at decl@relfont
-\def\pxcz at decl@relfont#1#2#3{%
-  \DeclareRelationFont{\k at encoding}{#1}{m}{}{OT1}{#2}{m}{}%
-  \DeclareRelationFont{\k at encoding}{#1}{bx}{}{OT1}{#2}{bx}{}%
-  \ifpxcz at otf@deluxe
-    \DeclareRelationFont{\k at encoding}{#1}{#3}{}{OT1}{#2}{#3}{}%
-  \fi
-  \pxcz at info{Relation font set for \k at encoding/#1}%
-}
-
 %--------------------------------------- strict-CSI mode
 \ifx t\pxcz at strict@csi
 % In this section, the e-TeX extension plus \pdffiledump and
@@ -1877,6 +1965,13 @@
    {SourceHanSans-Regular.otf}{SourceHanSans-Bold.otf}%
    {SourceHanSans-Heavy.otf}{SourceHanSans-Medium.otf}%
    {SourceHanSans-Medium.otf}}
+% Source Han Sans/Serif, "Region-specific Subset OTF"
+\pxcz at declare@preset{sourcehan-jp}{%
+  \pxcz at multiweight{SourceHanSerifJP-Light.otf}%
+   {SourceHanSerifJP-Regular.otf}{SourceHanSerifJP-Bold.otf}%
+   {SourceHanSansJP-Regular.otf}{SourceHanSansJP-Bold.otf}%
+   {SourceHanSansJP-Heavy.otf}{SourceHanSansJP-Medium.otf}%
+   {SourceHanSansJP-Medium.otf}}
 % Noto Sans/Serif CJK, "OpenType/CFF Collection (OTC)"
 \pxcz at declare@preset{noto-otc}{%
   \pxcz at multiweight{:0:NotoSerifCJK-Light.ttc}%
@@ -1891,6 +1986,13 @@
    {NotoSansCJKjp-Regular.otf}{NotoSansCJKjp-Bold.otf}%
    {NotoSansCJKjp-Black.otf}{NotoSansCJKjp-Medium.otf}%
    {NotoSansCJKjp-Medium.otf}}
+% Noto Sans/Serif CJK, "Region-specific Subset OpenType/CFF (Subset OTF)"
+\pxcz at declare@preset{noto-jp}{%
+  \pxcz at multiweight{NotoSerifJP-Light.otf}%
+   {NotoSerifJP-Regular.otf}{NotoSerifJP-Bold.otf}%
+   {NotoSansJP-Regular.otf}{NotoSansJP-Bold.otf}%
+   {NotoSansJP-Black.otf}{NotoSansJP-Medium.otf}%
+   {NotoSansJP-Medium.otf}}
 %(alias)
 \pxcz at declare@preset at alias{hiragino}{hiragino-pro}
 \pxcz at declare@preset at alias{noEmbed}{noembed}
@@ -1897,6 +1999,7 @@
 \pxcz at declare@preset at alias{kozuka}{kozuka-pro}
 \pxcz at declare@preset at alias{hiragino-elcapitan}{hiragino-elcapitan-pro}
 \pxcz at declare@preset at alias{morisawa}{morisawa-pro}
+\pxcz at declare@preset at alias{noto-otf}{noto}
 %(plus-variants)
 \pxcz at declare@preset at alias{sourcehan+}{sourcehan}
 \pxcz at declare@preset at alias{sourcehan-otc+}{sourcehan-otc}



More information about the tex-live-commits mailing list