summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-11-03 21:08:36 +0000
committerKarl Berry <karl@freefriends.org>2018-11-03 21:08:36 +0000
commit0fe320209795205ffb3b6f01e216820f854eef42 (patch)
tree673298fc464518514d18fb0343ea80aab6794d44 /Master
parente0fba477b7614dae0067d85728e716a4f930b98a (diff)
luatexja (3nov18)
git-svn-id: svn://tug.org/texlive/trunk@49067 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/luatex/luatexja/README8
-rw-r--r--Master/texmf-dist/doc/luatex/luatexja/ltjclasses.pdfbin406056 -> 405894 bytes
-rw-r--r--Master/texmf-dist/doc/luatex/luatexja/ltjsclasses.pdfbin500002 -> 501077 bytes
-rw-r--r--Master/texmf-dist/doc/luatex/luatexja/luatexja-en.pdfbin460977 -> 463972 bytes
-rw-r--r--Master/texmf-dist/doc/luatex/luatexja/luatexja-ja.pdfbin835356 -> 846152 bytes
-rw-r--r--Master/texmf-dist/doc/luatex/luatexja/luatexja.dtx116
-rw-r--r--Master/texmf-dist/source/luatex/luatexja/ltjclasses.dtx21
-rw-r--r--Master/texmf-dist/source/luatex/luatexja/ltjsclasses.dtx20
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-fontspec-25c.sty12
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-fontspec-26h.sty12
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-preset.sty16
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/lltjext.sty9
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltj-jfont.lua897
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjarticle.cls10
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjbk10.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjbk11.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjbk12.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjbook.cls10
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjreport.cls10
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjsarticle.cls11
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjsbook.cls11
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjsize10.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjsize11.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjsize12.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjskiyou.cls11
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjspf.cls11
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjsreport.cls11
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjtarticle.cls10
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjtbk10.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjtbk11.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjtbk12.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjtbook.cls10
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjtreport.cls10
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjtsize10.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjtsize11.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/ltjtsize12.clo2
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/luatexja.sty6
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/patches/lltjdefs.sty14
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/patches/lltjfont.sty68
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-siunitx.sty46
-rw-r--r--Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-unicode-math.sty4
41 files changed, 774 insertions, 614 deletions
diff --git a/Master/texmf-dist/doc/luatex/luatexja/README b/Master/texmf-dist/doc/luatex/luatexja/README
index 795335d28ba..a826fe9bc2b 100644
--- a/Master/texmf-dist/doc/luatex/luatexja/README
+++ b/Master/texmf-dist/doc/luatex/luatexja/README
@@ -1,4 +1,4 @@
-The LuaTeX-ja Package 20180930.0
+The LuaTeX-ja Package 20181103.0
--------------------------------
Copyright (c) 2011--2018 The LuaTeX-ja project
License: modified BSD (see COPYING)
@@ -40,9 +40,9 @@ Installation
2. If you must/want to install manually:
a. Download the source archive from CTAN,
- or tagged as 20180930.0 in the Git repository by
+ or tagged as 20181103.0 in the Git repository by
<http://git.osdn.jp/view?p=luatex-ja/luatexja.git
- ;a=snapshot;h=refs/tags/20180930.0;sf=tgz>
+ ;a=snapshot;h=refs/tags/20181103.0;sf=tgz>
b. Extract the archive and process following three files by LuaLaTeX
to generate classes for Japanese typesetting:
@@ -87,4 +87,4 @@ Notes
* src/*.{ins.dtx} and src/ltj-kinsoku_make.tex are not needed in regular use.
-Last commit date: Sun Sep 30 20:54:11 2018 +0900
+Last commit date: Sat Nov 3 09:59:06 2018 +0900
diff --git a/Master/texmf-dist/doc/luatex/luatexja/ltjclasses.pdf b/Master/texmf-dist/doc/luatex/luatexja/ltjclasses.pdf
index 1642aad933c..e8e0c93c474 100644
--- a/Master/texmf-dist/doc/luatex/luatexja/ltjclasses.pdf
+++ b/Master/texmf-dist/doc/luatex/luatexja/ltjclasses.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/luatex/luatexja/ltjsclasses.pdf b/Master/texmf-dist/doc/luatex/luatexja/ltjsclasses.pdf
index a37dc8ce888..ab0a081311f 100644
--- a/Master/texmf-dist/doc/luatex/luatexja/ltjsclasses.pdf
+++ b/Master/texmf-dist/doc/luatex/luatexja/ltjsclasses.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/luatex/luatexja/luatexja-en.pdf b/Master/texmf-dist/doc/luatex/luatexja/luatexja-en.pdf
index ab4b5a87290..8b237916f78 100644
--- a/Master/texmf-dist/doc/luatex/luatexja/luatexja-en.pdf
+++ b/Master/texmf-dist/doc/luatex/luatexja/luatexja-en.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/luatex/luatexja/luatexja-ja.pdf b/Master/texmf-dist/doc/luatex/luatexja/luatexja-ja.pdf
index 7ebd389671e..617341fd7a2 100644
--- a/Master/texmf-dist/doc/luatex/luatexja/luatexja-ja.pdf
+++ b/Master/texmf-dist/doc/luatex/luatexja/luatexja-ja.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/luatex/luatexja/luatexja.dtx b/Master/texmf-dist/doc/luatex/luatexja/luatexja.dtx
index 5f8441f36be..de3c5f576a6 100644
--- a/Master/texmf-dist/doc/luatex/luatexja/luatexja.dtx
+++ b/Master/texmf-dist/doc/luatex/luatexja/luatexja.dtx
@@ -11,7 +11,7 @@
\IfFileExists{luatex85.sty}{\RequirePackage{luatex85}}{}
%<en>\documentclass[a4paper,titlepage]{article}
-%<ja>\documentclass[a4paper,titlepage]{ltjsarticle}
+%<ja>\documentclass[a4paper,10ptj,titlepage]{ltjsarticle}
%%%%%%%%
\makeatletter
@@ -49,7 +49,7 @@
\usepackage[kozuka-pr6n]{luatexja-preset}
\usepackage{unicode-math}
\setmonojfont{KozGoPr6N-Regular.otf}
-\setmathfont[Scale=MatchLowercase]{xits-math.otf}
+\setmathfont[Scale=MatchLowercase]{XITSMath}
\setLaTeXa{\scshape a}
%<*ja>
@@ -68,7 +68,7 @@
{\normalfont\normalsize\bfseries\raisebox{.2ex}{$\mdlgblksquare\mkern1mu$}}}
%</en>
%<*ja>
-\usepackage[textwidth=45\zw, lines=45, footskip=6mm]{geometry}
+\usepackage[textwidth=44\zw, lines=41, footskip=6mm]{geometry}
\usepackage{luatexja-adjust}%\ltjdisableadjust
\advance\leftmargini-1\zw\advance\leftmarginii-1\zw
%</ja>
@@ -610,7 +610,7 @@ and \emph{Japanese fonts} for fonts used in \textbf{JAchar}.
%<ja>本プロジェクトはOSDNのサービスを用いて運営されている.
%<en>\paragraph{Members}\
-%<ja>\paragraph{開発メンバー}\
+%<ja>\clearpage\paragraph{開発メンバー}\
%<*en>
\begin{multienumerate}
@@ -631,7 +631,7 @@ and \emph{Japanese fonts} for fonts used in \textbf{JAchar}.
% \paragraph{Acknowledgments} -- 挿入するならここ
-\clearpage
+%<en>\clearpage
%<en>\section{Getting Started}
%<ja>\section{使い方}
%<en>\subsection{Installation}
@@ -970,11 +970,11 @@ for Japanese, you only have to load \texttt{luatexja.sty}:
\end{lstlisting}
%<*en>
It also does minimal settings (counterparts in \pLaTeX\ are \texttt{%
-plfonts.dtx} and \texttt{pldefs.ltx}):
+plfonts.dtx} and \texttt{pldefs.ltx}).
%</en>
%<*ja>
これで\pLaTeX の\texttt{plfonts.dtx}と\texttt{pldefs.ltx}に相当する最低限の設定が
-なされる:
+なされる.
%</ja>
\begin{itemize}
@@ -1011,7 +1011,7 @@ By default, the following fonts are used for these two families.
\bottomrule
\end{tabular}
\end{center}
-Note that the bold series (series \texttt{bx}~or~\texttt{b}) in both family
+\item Note that the bold series (series \texttt{bx}~or~\texttt{b}) in both family
are same as the medium series of gothic family.
There is no italic nor slanted shape for these \texttt{mc}~and~\texttt{gt}.
%</en>
@@ -1026,6 +1026,7 @@ Note that the bold series (series \texttt{bx}~or~\texttt{b}) in both family
\bottomrule
\end{tabular}
\end{center}
+ \newpage
\item 標準では,次のフォントが用いられる:
\begin{center}\small
\begin{tabular}{ccccc}
@@ -1036,18 +1037,35 @@ Note that the bold series (series \texttt{bx}~or~\texttt{b}) in both family
\bottomrule
\end{tabular}
\end{center}
-どちらのファミリにおいても,太字(\cs{bfseries})のフォントは
+
+明朝・ゴシックどちらのファミリにおいても,太字(\cs{bfseries})のフォントは
ゴシック体中字(\cs{gtfamily}\cs{mdseries})で使われるフォントと同じであることに注意.
また,どちらのファミリでもイタリック体・スラント体は定義されない.
- 和文の太字を表すシリーズ名は,(元々のComputer Modernが
+ \item 和文の太字を表すシリーズ名は,(元々のComputer Modernが
太字に\texttt{bx}を用いていたことから)伝統的に\texttt{bx}~(Bold Extended)が使われてきた.
しかし,太字にシリーズ\texttt{b}を使うフォントも増えてきたため,
バージョン20180616.0以降では和文の太字として\texttt{bx},~\texttt{b}の両方を扱えるようにした.
%</ja>
-%<en>\item Japanese characters in math mode are typeset by the font family \texttt{mc}.
-%<ja>\item 数式モード中の和文文字は明朝体(\texttt{mc})で出力される.
+%<*en>
+ \item From version~20181102.0, one can specifies \texttt{disablejfam} option at
+ loading \LuaTeX-ja. This option prevents loading a patch for \LaTeX, which are
+ needed to support Japanese characters in math mode.
+
+ Without \texttt{disablejfam} option, one can typeset Japanese characters in
+ math mode as~\verb+$あ$+ (see Page~\pageref{para:jachar_in_math}) as before.
+ Japanese characters in math mode are typeset by the font family \texttt{mc}.
+%</en>
+%<*ja>
+ \item バージョン20181102.0以降では,\texttt{disablejfam}オプションを\LuaTeX-ja読み込み時に
+ 指定できるようになった.このオプションは,数式モード中に直に和文文字を書けるようにするための
+ \LaTeX へのパッチを読み込まない.
+
+ \texttt{disablejfam}のない状況では,以前と同様に和文文字を数式モード中に
+ 直に書くことができる(但し\autoref{para:jachar_in_math}ページの記述も参照).
+ その際には明朝体(\texttt{mc})で出力される.
+%</ja>
%<*en>
\item \cs{jttdefault}%
\footnote{%
@@ -1332,12 +1350,16 @@ auto select&\cs{fontencoding}&\cs{fontfamily}&---&---&\cs{usefont}\\
\end{itemize}
%<*en>
-\paragraph{Remark: Japanese characters in math mode}
+\paragraph{Japanese characters in math mode}
+\label{para:jachar_in_math}
+
Since \pTeX\ supports Japanese characters in math mode, there are
sources like the following:
%</en>
%<*ja>
-\paragraph{注意:数式モード中の和文文字}
+\paragraph{数式モード中の和文文字}
+\label{para:jachar_in_math}
+
\pTeX では,特に何もしないでも数式中に和文文字を記述することができた.そのため,
以下のようなソースが見られた:
%</ja>
@@ -1376,20 +1398,34 @@ In this point of view,
$f_{\text{高温}}$~%
($f_{\text{high temperature}}$).
\[ y=(x-1)^2+2\quad
- \mathrel{\text{よって}}\quad y>0 \]
+ \mathrel{\mbox{よって}}\quad y>0 \]
$5\in 素:=\{\,p\in\mathbb N:\text{$p$ is a prime}\,\}$.
\end{LTXexample}
+
%<*en>
We also believe that using Japanese characters as identifiers is rare,
hence we don't describe how to change Japanese fonts in math mode in
this chapter. For the method, please see Subsection~\ref{ssec:math}.
+
+{\emshape When \LuaTeX-ja is loaded with \texttt{disablejfam}~option,
+ one cannot write Japanese characters in math mode as~\verb+$素$+.
+ At that case, one have to use \cs{mbox} (or~\cs{text} in the \Pkg{amsmath} package).
+}
%</en>
%<*ja>
-また\LuaTeX-jaプロジェクトでは,和文文字が識別子として用いられることはほとんどない
+なお\LuaTeX-jaプロジェクトでは,和文文字が識別子として用いられることはほとんどない
と考えており,したがってこの節では数式モード中の和文フォントを変更する方法については
記述しない.この方法については\ref{ssec:math}節を参照のこと.
+
+{\gtfamily\bfseries
+ 既に記述した通り,\texttt{disablejfam}オプションを指定して\LuaTeX-jaを読み込んだ場合は,
+ \verb+$素$+ のように直接和文文字を数式モード中に記述することはできなくなる.
+ \cs{mbox},あるいは\Pkg{amsmath}パッケージの提供する\cs{text}命令などを使うことになる.
+}
%</ja>
+
+
%<en>\subsection{\Pkg{luatexja-fontspec} package}
%<ja>\subsection{\Pkg{luatexja-fontspec}パッケージ}
\label{ssec:fontspec}
@@ -6083,12 +6119,24 @@ assignment, where \cs{DeclareRelationFont} does a global assignment.
font family with respect to current Japanese font family,
which was set by
\cs{DeclareRelationFont} or \cs{SetRelationFont}.
+
+ The following is an example of \cs{SetRelationFont} and \cs{userelfont}:
%</en>
%<*ja>
次回(のみ)の\cs{selectfont}の実行時に,現在の欧文フォントのエンコーディング/ファミリ/…… を,
\cs{DeclareRelationFont} か \cs{SetRelationFont} で指定された
現在の和文フォントに対応する「従属欧文」フォントに変更する.
+
+ 以下に \cs{SetRelationFont} と \cs{userelfont} の例を
+紹介しておこう.\cs{userelfont} の使用によって,「abc」の部分のフォントが
+Latin Modern Sans Serif (TU/lmss/m/n) に変わっていることがわかる.
%</ja>
+\begin{LTXexample}[width=0.3\textwidth]
+\makeatletter
+\SetRelationFont{JY3}{\k@family}{m}{n}{TU}{lmss}{m}{n}
+ % \k@family: current Japanese font family
+\userelfont\selectfont あいうabc
+\end{LTXexample}
\item[\cs{adjustbaseline}]
%<*en>
@@ -6194,21 +6242,35 @@ current Japanese font is changed, or only after \cs{selectfont} is executed.
%</en>
\end{cslist}
+
%<*en>
-As closing this subsection, we shall introduce an example of
-\cs{SetRelationFont} and \cs{userelfont}:
+Furthermore, \LuaTeX-ja applies patches which enables NFSS2 commands,
+such~as \cs{DeclareSymbolFont}~and~\cs{SetSymbolFont}, to specify
+Japanee fonts as math fonts.
+
+Specifying \texttt{disablejfam} option in \cs{usepackage} prevents
+applying these patches.
+Hence one cannot write Japanese Characters in math mode directly
+if \texttt{disablejfam} option is specified.
+The code below does not work either:
+\begin{lstlisting}
+\DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
+\DeclareSymbolFontAlphabet{\mathmc}{mincho}
+\end{lstlisting}
%</en>
%<*ja>
-この節の終わりに,\cs{SetRelationFont} と \cs{userelfont} の例を
-紹介しておこう.\cs{userelfont} の使用によって,「abc」の部分のフォントが
-Latin Modern Sans Serif (TU/lmss/m/n) に変わっていることがわかる.
+この他にも,標準では
+\cs{DeclareSymbolFont}, \cs{SetSymbolFont} などの命令で
+(NFSS2の枠組みで)数式フォントとして日本語フォントを使えるようにするためのパッチを当てている.
+
+一方,\texttt{disablejfam}オプション指定時には,これらのパッチを当てないので
+\begin{lstlisting}
+\DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
+\DeclareSymbolFontAlphabet{\mathmc}{mincho}
+\end{lstlisting}
+のように設定しても,数式モード中に直に日本語を記述することはできない.
+\verb|$\mathmc{あ}$| のように \cs{mathmc} で囲んでもできない.
%</ja>
-\begin{LTXexample}[width=0.3\textwidth]
-\makeatletter
-\SetRelationFont{JY3}{\k@family}{m}{n}{TU}{lmss}{m}{n}
- % \k@family: current Japanese font family
-\userelfont\selectfont あいうabc
-\end{LTXexample}
%<en>\subsection{Detail of \cs{fontfamily} command}
%<ja>\subsection{\cs{fontfamily}コマンドの詳細}
diff --git a/Master/texmf-dist/source/luatex/luatexja/ltjclasses.dtx b/Master/texmf-dist/source/luatex/luatexja/ltjclasses.dtx
index 5efdadbf2f4..ff744ea8902 100644
--- a/Master/texmf-dist/source/luatex/luatexja/ltjclasses.dtx
+++ b/Master/texmf-dist/source/luatex/luatexja/ltjclasses.dtx
@@ -116,6 +116,7 @@
% \changes{v1.7g}{2017/09/19}{内部処理で使ったボックス0を空にした}
% \changes{v1.7h}{2018/02/04}{和文スケール値\cs{Cjascale}を定義}
% \changes{v1.8}{2018/07/03}{\cs{today}のデフォルトを和暦から西暦に変更}
+% \changes{v1.8-ltj-16}{2018/10/08}{Lua\TeX-jaが|disablejfam|オプションをサポートしたことによる変更}
% \fi
%
% \iffalse
@@ -145,7 +146,7 @@
%<11pt&bk>\ProvidesFile{ltjtbk11.clo}
%<12pt&bk>\ProvidesFile{ltjtbk12.clo}
%</tate>
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
%<article|report|book> Standard LuaLaTeX-ja class]
%<10pt|11pt|12pt> Standard LuaLaTeX-ja file (size option)]
%<*driver>
@@ -202,7 +203,7 @@
% 全ての変更点を知りたい場合は、|jclasses.dtx|と|ltjclasses.dtx|で|diff|を
% とって下さい。
% \begin{itemize}
-% \item |disablejfam|オプションを無効化。もし
+% \item もし
% \begin{quotation}
% |! LaTeX Error: Too many math alphabets used in version ****.|
% \end{quotation}
@@ -543,12 +544,12 @@
% |mathrmmc|オプションは、
% |\mathrm|と|\mathbf|を和欧文両対応にするためのクラスオプションです。
% \changes{v1.1d}{1992/02/04}{disablejfamの判断を間違えてたのを修正}
+% \changes{v1.8-ltj-16}{2018/10/08}{Lua\TeX-ja本体が,主にメモリ消費を抑える目的で
+% |disablejfam|オプションをサポートしました。そのため以前出していた警告は削除します。}
% \begin{macrocode}
\if@compatibility
\@mathrmmctrue
\else
- \DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\@currname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{mathrmmc}{\@mathrmmctrue}
\fi
% \end{macrocode}
@@ -3852,7 +3853,12 @@
% \LaTeX{} 2.09
% compatibility mode では和文数式フォントfamが2重定義されていた
% ので、その部分を変更しました。
+%
+% \changes{v1.8-ltj-14}{2018/10/08}{Lua\TeX-ja本体が|disablejfam|オプションをサポートしました。
+% クラス読み込み時に|disablejfam|オプションを指定した場合は、それがLua\TeX-jaに渡されて
+% 数式中に日本語を記述することができなくなります(|\mathmc|, |\mathgt|も定義されません)。}
% \begin{macrocode}
+\unless\ifltj@disablejfam
\if@compatibility\else
\DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
\DeclareSymbolFontAlphabet{\mathmc}{mincho}
@@ -3866,6 +3872,7 @@
\reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
}%
\fi
+\fi
% \end{macrocode}
%
% ここでは\LaTeX~2.09で一般的に使われていたコマンドを定義しています。
@@ -3989,7 +3996,7 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@tocmarg}
+% \begin{macro}{\@tocrmarg}
% 複数行にわたる場合の右マージンです。
% \begin{macrocode}
\newcommand{\@tocrmarg}{2.55em}
@@ -4069,13 +4076,15 @@
%
% このマクロは\file{ltsect.dtx}で定義されています。
% \begin{macrocode}
+\providecommand*\protected@file@percent{}
\def\addcontentsline#1#2#3{%
\protected@write\@auxout
{\let\label\@gobble \let\index\@gobble \let\glossary\@gobble
%<tate>\@temptokena{\rensuji{\thepage}}}%
%<yoko>\@temptokena{\thepage}}%
{\string\@writefile{#1}%
- {\protect\contentsline{#2}{#3}{\the\@temptokena}}}%
+ {\protect\contentsline{#2}{#3}{\the\@temptokena}%
+ \protected@file@percent}}%
}
% \end{macrocode}
% \end{macro}
diff --git a/Master/texmf-dist/source/luatex/luatexja/ltjsclasses.dtx b/Master/texmf-dist/source/luatex/luatexja/ltjsclasses.dtx
index ebe2c0c1c8a..256a917828e 100644
--- a/Master/texmf-dist/source/luatex/luatexja/ltjsclasses.dtx
+++ b/Master/texmf-dist/source/luatex/luatexja/ltjsclasses.dtx
@@ -44,10 +44,10 @@
%<*driver>
\ProvidesFile{ltjsclasses.dtx}
%</driver>
- [2018/09/23 ltjsclasses ]
+ [2018/10/08 ltjsclasses ]
%<*driver>
\IfFileExists{luatex85.sty}{\RequirePackage{luatex85}}{}
-\documentclass{ltjsarticle}
+\documentclass[disablejfam]{ltjsarticle}
\usepackage{hypdoc}
\hypersetup{unicode=true}
\begingroup
@@ -117,7 +117,8 @@
% \item 標準では\texttt{jfm-ujis.lua}(Lua\TeX-ja標準のメトリック,OTFパッケージのものがベース)を使用します。
% \item \texttt{uplatex}オプション,\texttt{autodetect-engine}オプションを
% 削除してあります(前者ではエラーを出すようにしています)。
-% \item \texttt{disablejfam}オプションが無効になっています。もし
+% \item \texttt{disablejfam}オプションはクラス側では何もしません(ただLua\TeX-ja本体に
+% 渡されるだけです).もし
% \begin{quotation}
% |! LaTeX Error: Too many math alphabets used in version ****.|
% \end{quotation}
@@ -596,10 +597,8 @@
% 実際に使用可能な数式ファミリの数を増やすためには\texttt{lualatex-math}パッケージを
% 読み込む必要があることに注意が必要です。
%
-% \begin{macrocode}
-\DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\jsc@clsname}{The class option 'disablejfam' is obsolete}}
-% \end{macrocode}
+% [2018-10-08 LTJ] Lua\TeX-ja本体が\texttt{disablejfam}オプションをサポートしたので,
+% クラスファイルからは削除します.
%
% \paragraph{ドラフト}
%
@@ -1053,8 +1052,11 @@
%
% \begin{macrocode}
\AtBeginDocument{%
- \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
- \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}}%
+ \unless\ifltj@disablejfam
+ \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
+ \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
+ \fi
+}%
% \end{macrocode}
%
% \begin{macro}{\textsterling}
diff --git a/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-fontspec-25c.sty b/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-fontspec-25c.sty
index dd0bd9b2ee9..b4d08cdce1e 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-fontspec-25c.sty
+++ b/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-fontspec-25c.sty
@@ -3,7 +3,7 @@
%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{luatexja-fontspec-25c}[2018/06/15 fontspec support of LuaTeX-ja]
+\ProvidesPackage{luatexja-fontspec-25c}[2018/10/08 fontspec support of LuaTeX-ja]
\RequirePackage{l3keys2e,luatexja}
\ExplSyntaxOn
@@ -281,14 +281,18 @@
\DeclareDocumentCommand \setmainjfont { O{} m O{} } {
\ltj_fontspec_set_family:Nnn \mcdefault {#1,#3}{#2}
- \DeclareSymbolFont{mincho}{JY3}{\l_fontspec_family_tl}{\mddefault}{n}
- \SetSymbolFont{mincho}{bold}{JY3}{\l_fontspec_family_tl}{\bfdefault}{n}
+ \unless\ifltj@disablejfam
+ \DeclareSymbolFont{mincho}{JY3}{\l_fontspec_family_tl}{\mddefault}{n}
+ \SetSymbolFont{mincho}{bold}{JY3}{\l_fontspec_family_tl}{\bfdefault}{n}
+ \fi
\normalfont
}
\DeclareDocumentCommand \setsansjfont { O{} m O{} } {
\ltj_fontspec_set_family:Nnn \gtdefault {#1,#3}{#2}
- \DeclareMathAlphabet{\mathgt}{JY3}{\l_fontspec_family_tl}{\mddefault}{n}
+ \unless\ifltj@disablejfam
+ \DeclareMathAlphabet{\mathgt}{JY3}{\l_fontspec_family_tl}{\mddefault}{n}
+ \fi
\normalfont
}
diff --git a/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-fontspec-26h.sty b/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-fontspec-26h.sty
index 6c1ffdd64d2..ac6757f7bff 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-fontspec-26h.sty
+++ b/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-fontspec-26h.sty
@@ -3,7 +3,7 @@
%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{luatexja-fontspec-26h}[2018/08/02 fontspec support of LuaTeX-ja]
+\ProvidesPackage{luatexja-fontspec-26h}[2018/10/08 fontspec support of LuaTeX-ja]
\RequirePackage{l3keys2e,luatexja}
\ExplSyntaxOn
@@ -315,14 +315,18 @@
\DeclareDocumentCommand \setmainjfont { O{} m O{} } {
\ltj_fontspec_set_family:Nnn \mcdefault {#1,#3}{#2}
- \DeclareSymbolFont{mincho}{JY3}{\mcdefault}{\mddefault}{n}
- \SetSymbolFont{mincho}{bold}{JY3}{\mcdefault}{\bfdefault}{n}
+ \unless\ifltj@disablejfam
+ \DeclareSymbolFont{mincho}{JY3}{\mcdefault}{\mddefault}{n}
+ \SetSymbolFont{mincho}{bold}{JY3}{\mcdefault}{\bfdefault}{n}
+ \fi
\normalfont
}
\DeclareDocumentCommand \setsansjfont { O{} m O{} } {
\ltj_fontspec_set_family:Nnn \gtdefault {#1,#3}{#2}
- \DeclareMathAlphabet{\mathgt}{JY3}{\gtdefault}{\mddefault}{n}
+ \unless\ifltj@disablejfam
+ \DeclareMathAlphabet{\mathgt}{JY3}{\gtdefault}{\mddefault}{n}
+ \fi
\normalfont
}
diff --git a/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-preset.sty b/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-preset.sty
index b4681e91997..69104467507 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-preset.sty
+++ b/Master/texmf-dist/tex/luatex/luatexja/addons/luatexja-preset.sty
@@ -1,5 +1,5 @@
% luatexja-preset.sty
-\ProvidesPackage{luatexja-preset}[2018/09/30 Japanese font presets]
+\ProvidesPackage{luatexja-preset}[2018/10/08 Japanese font presets]
\RequirePackage{expl3,l3keys2e}
\RequirePackage{luatexja}
@@ -465,7 +465,7 @@
\cs_new:Nn \ltj_preset_declare_font_shape:nnnnnn {
\DeclareFontShape{#1}{#2}{#3}{#4}{ <-> s*[\Cjascale]
{ \bool_if:NT \g_ltjpreset_noembed_bool {psft:} #5
- ;-kern \tl_use:N \l_ltjpreset_kanji_shape_tl; #6 } } {}
+ ;-kern \tl_use:N \l_ltjpreset_kanji_shape_tl; #6 } } {}
}
\cs_new:Nn \ltj_preset_define_family:nnn {
\ltj_preset_declare_font_shape:nnnnnn { JY3 }
@@ -505,9 +505,11 @@
\DeclareKanjiFamily{JT3}{\mcdefault}{}
\DeclareKanjiFamily{JY3}{\gtdefault}{}
\DeclareKanjiFamily{JT3}{\gtdefault}{}
- \SetSymbolFont{mincho}{normal}{JY3}{\mcdefault}{m}{n}
- \SetSymbolFont{mincho}{bold}{JY3}{\mcdefault}{bx}{n}
- \DeclareMathAlphabet{\mathgt}{JY3}{\gtdefault}{m}{n}
+ \unless\ifltj@disablejfam
+ \SetSymbolFont{mincho}{normal}{JY3}{\mcdefault}{m}{n}
+ \SetSymbolFont{mincho}{bold}{JY3}{\mcdefault}{bx}{n}
+ \DeclareMathAlphabet{\mathgt}{JY3}{\gtdefault}{m}{n}
+ \fi
\bool_if:NT \g_ltjpreset_deluxe_bool {
\DeclareKanjiFamily{JY3}{ltjpmg \int_to_arabic:n { \g_ltjpreset_applycount_int }}{}
\DeclareKanjiFamily{JT3}{ltjpmg \int_to_arabic:n { \g_ltjpreset_applycount_int }}{}
@@ -573,11 +575,11 @@
] { \ltjpreset_font_gt_m: }
\bool_if:NT \g_ltjpreset_deluxe_bool {
%% mg
- \bool_if_exist:NTF \setfontfamily {
+ \bool_if_exist:NTF \setfontfamily {
\setjfontfamily \mgfamily [
BoldFont = \ltjpreset_font_mg_m: \tl_use:N \l_ltjpreset_add_features_tl
] { \ltjpreset_font_mg_m: }
- } {
+ } {
\newjfontfamily \mgfamily [
BoldFont = \ltjpreset_font_mg_m: \tl_use:N \l_ltjpreset_add_features_tl
] { \ltjpreset_font_mg_m: }
diff --git a/Master/texmf-dist/tex/luatex/luatexja/lltjext.sty b/Master/texmf-dist/tex/luatex/luatexja/lltjext.sty
index 9c6867f2264..eb1087ad6ba 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/lltjext.sty
+++ b/Master/texmf-dist/tex/luatex/luatexja/lltjext.sty
@@ -3,7 +3,7 @@
%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{lltjext}[2018/09/29 v1.2j-ltj-10 Macros for vertical writing]
+\ProvidesPackage{lltjext}[2018/10/07 v1.2k-ltj-10 Macros for vertical writing]
\RequirePackage{luatexja}
\newcount\ltj@ext@dir
\let\ltj@lltjext@orig@tabular=\tabular
@@ -206,8 +206,8 @@
\if Z\caption@posa\def\caption@posa{#4}\fi
\if Z\caption@posb\def\caption@posb{#5}\fi}}
\@onlypreamble\DeclareLayoutCaption
-\DeclareLayoutCaption{figure}<y>(.8\linewidth)[cd]
-\DeclareLayoutCaption{table}<y>(.8\linewidth)[cu]
+\DeclareLayoutCaption{figure}<n>(.8\linewidth)[cd]
+\DeclareLayoutCaption{table}<n>(.8\linewidth)[cu]
\def\layoutcaption{\def\caption@dir{Z}\captionwidth\z@
\def\caption@posa{Z}\def\caption@posb{Z}%
\@ifnextchar<\X@layoutcaption{%
@@ -276,7 +276,8 @@
\setbox0\hbox{\hbox{\captiondir
\captionfontsetup\parindent\z@\inhibitglue
\csname fnum@\@captype\endcsname  #1}}%"
- \if@tempswa\@tempdima\ltjgetht0\relax\else\@tempdima\ltjgetwd0\relax\fi
+ \if@tempswa\@tempdima\ltjgetht0 \advance\@tempdima\ltjgetdp0
+ \else\@tempdima\ltjgetwd0 \fi
\ifdim\@tempdima>\captionwidth \@tempdima\captionwidth \fi
\@pboxswfalse
\setbox0\hbox{%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltj-jfont.lua b/Master/texmf-dist/tex/luatex/luatexja/ltj-jfont.lua
index ad29ad432a2..372b39784d2 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltj-jfont.lua
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltj-jfont.lua
@@ -3,7 +3,7 @@
--
luatexbase.provides_module({
name = 'luatexja.jfont',
- date = '2018/06/15',
+ date = '2018/11/01',
description = 'Loader for Japanese fonts',
})
@@ -68,101 +68,101 @@ function luatexja.jfont.define_jfm(to)
t.char_type = {}; t.chars = {}
for i,v in pairs(t) do
if type(i) == 'number' then -- char_type
- if not v.chars then
- if i ~= 0 then defjfm_res= nil; return end
- else
- for j,w in pairs(v.chars) do
- if type(w) == 'number' and w~=-1 then
- elseif type(w) == 'string' and utf.len(w)==1 then
- w = utf.byte(w)
- elseif type(w) == 'string' and utf.len(w)==2 and utf.sub(w,2) == '*' then
- w = utf.byte(utf.sub(w,1,1))
- end
- if not t.chars[w] then
- t.chars[w] = i
- else
- defjfm_res= nil; return
- end
- end
- v.chars = nil
- end
- if type(v.align)~='string' then
- v.align = 'left' -- left
- end
- if type(v.width)~='number' then
- v.width = nil
- end
- if type(v.height)~='number' then
- v.height = (jfm_dir=='tate') and 0.0
- end
- if type(v.depth)~='number' then
- v.depth = (jfm_dir=='tate') and 0.0
- end
- if type(v.italic)~='number' then
- v.italic = 0.0
- end
- if type(v.left)~='number' then
- v.left = 0.0
- end
- if type(v.down)~='number' then
- v.down = 0.0
- end
- if t.version>=2 then
- if v.end_stretch then defjfm_res= nil; return end
- if v.end_shrink then defjfm_res= nil; return end
- if v.end_adjust then
- if type(v.end_adjust)~='table' then
- v.end_adjust = nil
- elseif #(v.end_adjust)==0 then
- v.end_adjust = nil
- else
- table.sort(v.end_adjust)
- end
- end
- else
- v.end_adjust = nil
- if v.end_stretch and v.end_stretch~=0.0 then
- v.end_adjust = (v.end_adjust or {})
- v.end_adjust[#(v.end_adjust)+1] = v.end_stretch
- end
- if v.end_shrink and v.end_ahrink~=0.0 then
- v.end_adjust = (v.end_adjust or {})
- v.end_adjust[#(v.end_adjust)+1] = -v.end_shrink
- end
- if v.end_adjust then v.end_adjust[#(v.end_adjust)+1] = 0.0 end
- end
- v.kern = v.kern or {}; v.glue = v.glue or {}
- for j,x in pairs(v.glue) do
- if v.kern[j] then defjfm_res= nil; return end
- x.ratio, x[5] = (x.ratio or (x[5] and 0.5*(1+x[5]) or 0.5)), nil
- do
- local xp
- xp, x[4] = (x.priority or x[4]), nil
- if type(xp)=='table' and t.version>=2 then
- if type(xp[1])~='number' or xp[1]<-4 or xp[1]>3 then defjfm_res=nil end -- stretch
- if type(xp[2])~='number' or xp[2]<-4 or xp[2]>3 then defjfm_res=nil end -- shrink
- xp = (xp[1]+4)*8+(xp[2]+4)
- elseif xp and type(xp)~='number' then
- defjfm_res = nil
- else
- xp = (xp or 0)*9+36
- if xp<0 or xp>=64 then defjfm_res=nil end
- end
- x.priority = xp
- end
- x.kanjiskip_natural = norm_val(x.kanjiskip_natural)
- x.kanjiskip_stretch = norm_val(x.kanjiskip_stretch)
- x.kanjiskip_shrink = norm_val(x.kanjiskip_shrink)
- end
- for j,x in pairs(v.kern) do
- if type(x)=='number' then
+ if not v.chars then
+ if i ~= 0 then defjfm_res= nil; return end
+ else
+ for j,w in pairs(v.chars) do
+ if type(w) == 'number' and w~=-1 then
+ elseif type(w) == 'string' and utf.len(w)==1 then
+ w = utf.byte(w)
+ elseif type(w) == 'string' and utf.len(w)==2 and utf.sub(w,2) == '*' then
+ w = utf.byte(utf.sub(w,1,1))
+ end
+ if not t.chars[w] then
+ t.chars[w] = i
+ else
+ defjfm_res= nil; return
+ end
+ end
+ v.chars = nil
+ end
+ if type(v.align)~='string' then
+ v.align = 'left' -- left
+ end
+ if type(v.width)~='number' then
+ v.width = nil
+ end
+ if type(v.height)~='number' then
+ v.height = (jfm_dir=='tate') and 0.0
+ end
+ if type(v.depth)~='number' then
+ v.depth = (jfm_dir=='tate') and 0.0
+ end
+ if type(v.italic)~='number' then
+ v.italic = 0.0
+ end
+ if type(v.left)~='number' then
+ v.left = 0.0
+ end
+ if type(v.down)~='number' then
+ v.down = 0.0
+ end
+ if t.version>=2 then
+ if v.end_stretch then defjfm_res= nil; return end
+ if v.end_shrink then defjfm_res= nil; return end
+ if v.end_adjust then
+ if type(v.end_adjust)~='table' then
+ v.end_adjust = nil
+ elseif #(v.end_adjust)==0 then
+ v.end_adjust = nil
+ else
+ table.sort(v.end_adjust)
+ end
+ end
+ else
+ v.end_adjust = nil
+ if v.end_stretch and v.end_stretch~=0.0 then
+ v.end_adjust = (v.end_adjust or {})
+ v.end_adjust[#(v.end_adjust)+1] = v.end_stretch
+ end
+ if v.end_shrink and v.end_ahrink~=0.0 then
+ v.end_adjust = (v.end_adjust or {})
+ v.end_adjust[#(v.end_adjust)+1] = -v.end_shrink
+ end
+ if v.end_adjust then v.end_adjust[#(v.end_adjust)+1] = 0.0 end
+ end
+ v.kern = v.kern or {}; v.glue = v.glue or {}
+ for j,x in pairs(v.glue) do
+ if v.kern[j] then defjfm_res= nil; return end
+ x.ratio, x[5] = (x.ratio or (x[5] and 0.5*(1+x[5]) or 0.5)), nil
+ do
+ local xp
+ xp, x[4] = (x.priority or x[4]), nil
+ if type(xp)=='table' and t.version>=2 then
+ if type(xp[1])~='number' or xp[1]<-4 or xp[1]>3 then defjfm_res=nil end -- stretch
+ if type(xp[2])~='number' or xp[2]<-4 or xp[2]>3 then defjfm_res=nil end -- shrink
+ xp = (xp[1]+4)*8+(xp[2]+4)
+ elseif xp and type(xp)~='number' then
+ defjfm_res = nil
+ else
+ xp = (xp or 0)*9+36
+ if xp<0 or xp>=64 then defjfm_res=nil end
+ end
+ x.priority = xp
+ end
+ x.kanjiskip_natural = norm_val(x.kanjiskip_natural)
+ x.kanjiskip_stretch = norm_val(x.kanjiskip_stretch)
+ x.kanjiskip_shrink = norm_val(x.kanjiskip_shrink)
+ end
+ for j,x in pairs(v.kern) do
+ if type(x)=='number' then
v.kern[j] = {x, 0.5}
elseif type(x)=='table' then
v.kern[j] = { x[1], (x.ratio or (x[2] and 0.5*(1+x[2]) or 0.5)) }
end
- end
- t.char_type[i] = v
- t[i] = nil
+ end
+ t.char_type[i] = v
+ t[i] = nil
end
end
if t.version<3 then
@@ -185,17 +185,17 @@ do
local function myround(a) return floor(a+0.5) end
local function mult_table(old,scale) -- modified from table.fastcopy
if old then
- local new = { }
- for k,v in next, old do
- if type(v) == "table" then
- new[k] = mult_table(v,scale)
- elseif type(v) == "number" then
- new[k] = myround(v*scale)
- else
- new[k] = v
- end
- end
- return new
+ local new = { }
+ for k,v in next, old do
+ if type(v) == "table" then
+ new[k] = mult_table(v,scale)
+ elseif type(v) == "number" then
+ new[k] = myround(v*scale)
+ else
+ new[k] = v
+ end
+ end
+ return new
else return nil end
end
update_jfm_cache = function (j,sz)
@@ -205,28 +205,28 @@ do
t.chars = metrics[j].chars
t.char_type = mult_table(metrics[j].char_type, sz)
for i,v in pairs(t.char_type) do
- v.align = (v.align=='left') and 0 or
- ((v.align=='right') and 1 or 0.5)
- if type(i) == 'number' then -- char_type
- for k,w in pairs(v.glue) do
- v[k] = {
- nil,
- ratio=w.ratio/sz,
- priority=FROM_JFM + w.priority/sz,
- width = w[1], stretch = w[2], shrink = w[3],
- kanjiskip_natural = w.kanjiskip_natural and w.kanjiskip_natural/sz,
- kanjiskip_stretch = w.kanjiskip_stretch and w.kanjiskip_stretch/sz,
- kanjiskip_shrink = w.kanjiskip_shrink and w.kanjiskip_shrink/sz,
- }
- end
- for k,w in pairs(v.kern) do
- local g = node_new(id_kern, 1)
- setfield(g, 'kern', w[1])
- set_attr(g, attr_icflag, FROM_JFM)
- v[k] = {g, ratio=w[2]/sz}
- end
- end
- v.glue, v.kern = nil, nil
+ v.align = (v.align=='left') and 0 or
+ ((v.align=='right') and 1 or 0.5)
+ if type(i) == 'number' then -- char_type
+ for k,w in pairs(v.glue) do
+ v[k] = {
+ nil,
+ ratio=w.ratio/sz,
+ priority=FROM_JFM + w.priority/sz,
+ width = w[1], stretch = w[2], shrink = w[3],
+ kanjiskip_natural = w.kanjiskip_natural and w.kanjiskip_natural/sz,
+ kanjiskip_stretch = w.kanjiskip_stretch and w.kanjiskip_stretch/sz,
+ kanjiskip_shrink = w.kanjiskip_shrink and w.kanjiskip_shrink/sz,
+ }
+ end
+ for k,w in pairs(v.kern) do
+ local g = node_new(id_kern, 1)
+ setfield(g, 'kern', w[1])
+ set_attr(g, attr_icflag, FROM_JFM)
+ v[k] = {g, ratio=w[2]/sz}
+ end
+ end
+ v.glue, v.kern = nil, nil
end
t.kanjiskip = mult_table(metrics[j].kanjiskip, sz)
t.xkanjiskip = mult_table(metrics[j].xkanjiskip,sz)
@@ -237,9 +237,9 @@ do
end
luatexbase.create_callback("luatexja.find_char_class", "data",
- function (arg, fmtable, char)
- return 0
- end)
+ function (arg, fmtable, char)
+ return 0
+ end)
local find_char_class
do
local start_time_measure = ltjb.start_time_measure
@@ -272,22 +272,22 @@ do
local global_flag -- true if \globaljfont, false if \jfont
local function load_jfont_metric()
if jfm_file_name=='' then
- ltjb.package_error('luatexja',
- 'no JFM specified',
- 'To load and define a Japanese font, a JFM must be specified.'..
- "The JFM 'ujis' will be used for now.")
- jfm_file_name='ujis'
+ ltjb.package_error('luatexja',
+ 'no JFM specified',
+ 'To load and define a Japanese font, a JFM must be specified.'..
+ "The JFM 'ujis' will be used for now.")
+ jfm_file_name='ujis'
end
for j,v in ipairs(metrics) do
- if v.name==jfm_file_name then return j end
+ if v.name==jfm_file_name then return j end
end
luatexja.load_lua('jfm-' .. jfm_file_name .. '.lua')
if defjfm_res then
- defjfm_res.name = jfm_file_name
- table.insert(metrics, defjfm_res)
- return #metrics
+ defjfm_res.name = jfm_file_name
+ table.insert(metrics, defjfm_res)
+ return #metrics
else
- return nil
+ return nil
end
end
@@ -299,7 +299,7 @@ do
cstemp = cstemp:sub(1, ((cstemp:sub(-1,-1)==' ') and (cstemp:len()>=2)) and -2 or -1)
global_flag = g and '\\global' or ''
tex.sprint(cat_lp, '\\expandafter\\font\\csname ',
- (cstemp==' ') and '\\space' or cstemp, '\\endcsname')
+ (cstemp==' ') and '\\space' or cstemp, '\\endcsname')
end
luatexbase.create_callback("luatexja.define_jfont", "data", function (ft, fn) return ft end)
@@ -312,28 +312,28 @@ do
local fn = font.id(cstemp)
local f = font_getfont(fn)
if not j then
- ltjb.package_error('luatexja',
- "bad JFM `" .. jfm_file_name .. "'",
- 'The JFM file you specified is not valid JFM file.\n'..
- 'So defining Japanese font is cancelled.')
- tex.sprint(cat_lp, global_flag, '\\expandafter\\let\\csname ',
- (cstemp==' ') and '\\space' or cstemp,
- '\\endcsname=\\relax')
- return
+ ltjb.package_error('luatexja',
+ "bad JFM `" .. jfm_file_name .. "'",
+ 'The JFM file you specified is not valid JFM file.\n'..
+ 'So defining Japanese font is cancelled.')
+ tex.sprint(cat_lp, global_flag, '\\expandafter\\let\\csname ',
+ (cstemp==' ') and '\\space' or cstemp,
+ '\\endcsname=\\relax')
+ return
end
if not f then return end
update_jfm_cache(j, f.size)
local ad = identifiers[fn].parameters
local sz = metrics[j].size_cache[f.size]
local fmtable = { jfm = j, size = f.size, var = jfm_var,
- with_kanjiskip = jfm_ksp,
- zw = sz.zw, zh = sz.zh,
- ascent = ad.ascender,
- descent = ad.descender,
- chars = sz.chars, char_type = sz.char_type,
- kanjiskip = sz.kanjiskip, xkanjiskip = sz.xkanjiskip,
+ with_kanjiskip = jfm_ksp,
+ zw = sz.zw, zh = sz.zh,
+ ascent = ad.ascender,
+ descent = ad.descender,
+ chars = sz.chars, char_type = sz.char_type,
+ kanjiskip = sz.kanjiskip, xkanjiskip = sz.xkanjiskip,
chars_cbcache = {},
- vert_activated = is_vert_enabled,
+ vert_activated = is_vert_enabled,
}
if auto_enable_vrt2 then
local t = identifiers[fn]
@@ -344,11 +344,14 @@ do
t.shared.features[vrt2_exist and 'vrt2' or 'vert'] = true
end
+ --texio.write_nl('term and log',
+ --'JFNT\t' .. identifiers[fn].name .. '\t' .. identifiers[fn].size .. '\t' .. fn, '')
+
fmtable = luatexbase.call_callback("luatexja.define_jfont", fmtable, fn)
font_metric_table[fn]=fmtable
tex.sprint(cat_lp, global_flag, '\\protected\\expandafter\\def\\csname ',
- (cstemp==' ') and '\\space' or cstemp, '\\endcsname{\\ltj@cur'..
- (jfm_dir == 'yoko' and 'j' or 't') .. 'fnt', fn, '\\relax}')
+ (cstemp==' ') and '\\space' or cstemp, '\\endcsname{\\ltj@cur'..
+ (jfm_dir == 'yoko' and 'j' or 't') .. 'fnt', fn, '\\relax}')
jfm_file_name = nil
end
end
@@ -360,12 +363,12 @@ do
-- PUBLIC function
function luatexja.jfont.get_zw()
local a = font_metric_table[
- tex_get_attr((get_dir_count()==dir_tate) and attr_curtfnt or attr_curjfnt)]
+ tex_get_attr((get_dir_count()==dir_tate) and attr_curtfnt or attr_curjfnt)]
return a and a.zw or 0
end
function luatexja.jfont.get_zh()
local a = font_metric_table[
- tex_get_attr((get_dir_count()==dir_tate) and attr_curtfnt or attr_curjfnt)]
+ tex_get_attr((get_dir_count()==dir_tate) and attr_curtfnt or attr_curjfnt)]
return a and a.zw or 0
end
end
@@ -377,60 +380,60 @@ do
local function extract_metric(name)
do
local nametemp
- nametemp = name:match('^{(.*)}$')
- if nametemp then name = nametemp
+ nametemp = name:match('^{(.*)}$')
+ if nametemp then name = nametemp
else
- nametemp = name:match('^"(.*)"$')
- name = nametemp or name
+ nametemp = name:match('^"(.*)"$')
+ name = nametemp or name
end
end
jfm_file_name = ''; jfm_var = ''; jfm_ksp = true
local tmp, index = name:sub(1, 5), 1
if tmp == 'file:' or tmp == 'name:' or tmp == 'psft:' then
- index = 6
+ index = 6
end
local p = name:find(":", index); index = p and (p+1) or index
while index do
- local l = name:len()+1
- local q = name:find(";", index) or l
- if name:sub(index, index+3)=='jfm=' and q>index+4 then
- jfm_file_name = name:sub(index+4, q-1)
- if l~=q then
- name = name:sub(1,index-1) .. name:sub(q+1)
- else
- name = name:sub(1,index-1)
- index = nil
- end
- elseif name:sub(index, index+6)=='jfmvar=' and q>index+6 then
- jfm_var = name:sub(index+7, q-1)
- if l~=q then
- name = name:sub(1,index-1) .. name:sub(q+1)
- else
- name = name:sub(1,index-1)
- index = nil
- end
- else
- index = (l~=q) and (q+1) or nil
- end
+ local l = name:len()+1
+ local q = name:find(";", index) or l
+ if name:sub(index, index+3)=='jfm=' and q>index+4 then
+ jfm_file_name = name:sub(index+4, q-1)
+ if l~=q then
+ name = name:sub(1,index-1) .. name:sub(q+1)
+ else
+ name = name:sub(1,index-1)
+ index = nil
+ end
+ elseif name:sub(index, index+6)=='jfmvar=' and q>index+6 then
+ jfm_var = name:sub(index+7, q-1)
+ if l~=q then
+ name = name:sub(1,index-1) .. name:sub(q+1)
+ else
+ name = name:sub(1,index-1)
+ index = nil
+ end
+ else
+ index = (l~=q) and (q+1) or nil
+ end
end
if jfm_file_name~='' then
- local l = name:sub(-1)
- name = name
- .. ((l==':' or l==';') and '' or ';')
- .. 'jfm=' .. jfm_file_name
- if jfm_var~='' then
- name = name .. 'jfmvar=' .. jfm_var
- end
+ local l = name:sub(-1)
+ name = name
+ .. ((l==':' or l==';') and '' or ';')
+ .. 'jfm=' .. jfm_file_name
+ if jfm_var~='' then
+ name = name .. ';jfmvar=' .. jfm_var
+ end
end
for x in gmatch (name, "[:;]([+%%-]?)ltjks") do
- jfm_ksp = not (x=='-')
+ jfm_ksp = not (x=='-')
end
if jfm_dir == 'tate' then
- is_vert_enabled = (not name:match('[:;]%-vert')) and (not name:match('[:;]%-vrt2'))
- auto_enable_vrt2
- = (not name:match('[:;][+%-]?vert')) and (not name:match('[:;][+%-]?vrt2'))
+ is_vert_enabled = (not name:match('[:;]%-vert')) and (not name:match('[:;]%-vrt2'))
+ auto_enable_vrt2
+ = (not name:match('[:;][+%-]?vert')) and (not name:match('[:;][+%-]?vrt2'))
else
- is_vert_enabled, auto_enable_vrt2 = nil, nil
+ is_vert_enabled, auto_enable_vrt2 = nil, nil
end
return name
end
@@ -468,7 +471,7 @@ do
end
function luatexja.jfont.is_kenc(enc)
tex.sprint(cat_lp, '\\let\\ifin@\\if'
- .. (kyenc_list[enc] or ktenc_list[enc] or 'false '))
+ .. (kyenc_list[enc] or ktenc_list[enc] or 'false '))
end
local kfam_list, Nkfam_list = {}, {}
@@ -477,23 +480,23 @@ do
end
function luatexja.jfont.search_kfam(fam, use_fd)
if kfam_list[fam] then
- tex.sprint(cat_lp, '\\let\\ifin@\\iftrue '); return
+ tex.sprint(cat_lp, '\\let\\ifin@\\iftrue '); return
elseif Nkfam_list[fam] then
- tex.sprint(cat_lp, '\\let\\ifin@\\iffalse '); return
+ tex.sprint(cat_lp, '\\let\\ifin@\\iffalse '); return
elseif use_fd then
- for i,_ in pairs(kyenc_list) do
- if kpse.find_file(string.lower(i)..fam..'.fd') then
- tex.sprint(cat_lp, '\\let\\ifin@\\iftrue '); return
- end
- end
- for i,_ in pairs(ktenc_list) do
- if kpse.find_file(string.lower(i)..fam..'.fd') then
- tex.sprint(cat_lp, '\\let\\ifin@\\iftrue '); return
- end
- end
- Nkfam_list[fam]=true; tex.sprint(cat_lp, '\\let\\ifin@\\iffalse '); return
+ for i,_ in pairs(kyenc_list) do
+ if kpse.find_file(string.lower(i)..fam..'.fd') then
+ tex.sprint(cat_lp, '\\let\\ifin@\\iftrue '); return
+ end
+ end
+ for i,_ in pairs(ktenc_list) do
+ if kpse.find_file(string.lower(i)..fam..'.fd') then
+ tex.sprint(cat_lp, '\\let\\ifin@\\iftrue '); return
+ end
+ end
+ Nkfam_list[fam]=true; tex.sprint(cat_lp, '\\let\\ifin@\\iffalse '); return
else
- tex.sprint(cat_lp, '\\let\\ifin@\\iffalse '); return
+ tex.sprint(cat_lp, '\\let\\ifin@\\iffalse '); return
end
end
local ffam_list, Nffam_list = {}, {}
@@ -506,20 +509,20 @@ do
function luatexja.jfont.search_ffam_declared()
local s = ''
for i,_ in pairs(fenc_list) do
- s = s .. '\\cdp@elt{' .. i .. '}'
+ s = s .. '\\cdp@elt{' .. i .. '}'
end
tex.sprint(cat_lp, s)
end
function luatexja.jfont.search_ffam_fd(fam)
if Nffam_list[fam] then
- tex.sprint(cat_lp, '\\let\\ifin@\\iffalse '); return
+ tex.sprint(cat_lp, '\\let\\ifin@\\iffalse '); return
else
- for i,_ in pairs(fenc_list) do
- if kpse.find_file(string.lower(i)..fam..'.fd') then
- tex.sprint(cat_lp, '\\let\\ifin@\\iftrue '); return
- end
- end
- Nffam_list[fam]=true; tex.sprint(cat_lp, '\\let\\ifin@\\iffalse '); return
+ for i,_ in pairs(fenc_list) do
+ if kpse.find_file(string.lower(i)..fam..'.fd') then
+ tex.sprint(cat_lp, '\\let\\ifin@\\iftrue '); return
+ end
+ end
+ Nffam_list[fam]=true; tex.sprint(cat_lp, '\\let\\ifin@\\iffalse '); return
end
end
@@ -538,15 +541,15 @@ function luatexja.jfont.set_alt_font(b,e,ind,bfnt)
if b>e then b, e = e, b end
if b*e<=0 then
ltjb.package_error('luatexja',
- 'bad character range ([' .. b .. ',' .. e .. ']). ' ..
- 'I take the intersection with [0x80, 0x10ffff].')
+ 'bad character range ([' .. b .. ',' .. e .. ']). ' ..
+ 'I take the intersection with [0x80, 0x10ffff].')
b, e = math.max(0x80,b),math.min(ucs_out-1,e)
elseif e<0 then -- b<e<0
-- do nothing
elseif b<0x80 or e>=ucs_out then
ltjb.package_warning('luatexja',
- 'bad character range ([' .. b .. ',' .. e .. ']). ' ..
- 'I take the intersection with [0x80, 0x10ffff].')
+ 'bad character range ([' .. b .. ',' .. e .. ']). ' ..
+ 'I take the intersection with [0x80, 0x10ffff].')
b, e = math.max(0x80,b), math.min(ucs_out-1,e)
end
if not alt_font_table[bfnt] then alt_font_table[bfnt]={} end
@@ -555,13 +558,13 @@ function luatexja.jfont.set_alt_font(b,e,ind,bfnt)
if bfnt==ind then ind = nil end -- ind == bfnt の場合はテーブルから削除
if e>=0 then -- character range
for i=b, e do
- if ac[i]then t[i]=ind end
+ if ac[i]then t[i]=ind end
end
else
b, e = -e, -b
local tx = font_metric_table[bfnt].chars
for i,v in pairs(tx) do
- if b<=v and v<=e and ac[i] then t[i]=ind end
+ if b<=v and v<=e and ac[i] then t[i]=ind end
end
end
end
@@ -598,15 +601,15 @@ function luatexja.jfont.set_alt_font_latex(b,e,ind,bbase)
if b>e then b, e = e, b end
if b*e<=0 then
ltjb.package_error('luatexja',
- 'bad character range ([' .. b .. ',' .. e .. ']). ' ..
- 'I take the intersection with [0x80, 0x10ffff].')
+ 'bad character range ([' .. b .. ',' .. e .. ']). ' ..
+ 'I take the intersection with [0x80, 0x10ffff].')
b, e = math.max(0x80,b),math.min(ucs_out-1,e)
elseif e<0 then -- b<e<0
-- do nothing
elseif b<0x80 or e>=ucs_out then
ltjb.package_warning('luatexja',
- 'bad character range ([' .. b .. ',' .. e .. ']). ' ..
- 'I take the intersection with [0x80, 0x10ffff].')
+ 'bad character range ([' .. b .. ',' .. e .. ']). ' ..
+ 'I take the intersection with [0x80, 0x10ffff].')
b, e = math.max(0x80,b), math.min(ucs_out-1,e)
end
@@ -648,9 +651,9 @@ do
function luatexja.jfont.output_alt_font_cmd(dir, bbase)
alt_font_base = bbase
if dir == 't' then
- alt_font_base_num = tex.getattribute(attr_curtfnt)
+ alt_font_base_num = tex.getattribute(attr_curtfnt)
else
- alt_font_base_num = tex.getattribute(attr_curjfnt)
+ alt_font_base_num = tex.getattribute(attr_curjfnt)
end
local t = alt_font_table[alt_font_base_num]
if t then
@@ -711,17 +714,17 @@ do
function luatexja.jfont.cleanup_size_cache()
--local gs, ke = 0, 0
for _,n in pairs(metrics) do
- for i,t in pairs(n.size_cache) do
- for _,v in pairs(t.char_type) do
- for k,w in pairs(v) do
- if type(k)=='number' then
- --if w[1] then gs = gs + 1 else ke = ke + 1 end
- if w[1] then node_free(w[1]) end
- end
- end
- end
- n.size_cache[i]=nil
- end
+ for i,t in pairs(n.size_cache) do
+ for _,v in pairs(t.char_type) do
+ for k,w in pairs(v) do
+ if type(k)=='number' then
+ --if w[1] then gs = gs + 1 else ke = ke + 1 end
+ if w[1] then node_free(w[1]) end
+ end
+ end
+ end
+ n.size_cache[i]=nil
+ end
end
end
end
@@ -751,33 +754,33 @@ do
if id.specification and id.resources then
local rot = {}
for i,_ in pairs(id.characters) do
- if rotate_in_uax50(i) then rot[i] = true end
+ if rotate_in_uax50(i) then rot[i] = true end
end
if id.resources.sequences then
- for _,i in pairs(id.resources.sequences) do
- if i.order[1]== 'vert' and i.type == 'gsub_single' and i.steps then
- for _,j in pairs(i.steps) do
- if type(j)=='table' then
- if type(j.coverage)=='table' then
- for i,_ in pairs(j.coverage) do rot[i]=nil end
- end
- end
- end
- end
- end; end
- -- コードポイントが共有されているグリフについて
+ for _,i in pairs(id.resources.sequences) do
+ if i.order[1]== 'vert' and i.type == 'gsub_single' and i.steps then
+ for _,j in pairs(i.steps) do
+ if type(j)=='table' then
+ if type(j.coverage)=='table' then
+ for i,_ in pairs(j.coverage) do rot[i]=nil end
+ end
+ end
+ end
+ end
+ end; end
+ -- コードポイントが共有されているグリフについて
if id.resources.duplicates then
- for i,v in pairs(id.resources.duplicates) do
- local f = rot[i]
+ for i,v in pairs(id.resources.duplicates) do
+ local f = rot[i]
for j,_ in pairs(v) do f = f and rot[j] end
rot[i]=f
for j,_ in pairs(v) do rot[j] = f end
end; end
-
- for i,_ in pairs(rot) do
- dest = dest or {}
- dest[i] = dest[i] or {}
- dest[i].rotation = true
+
+ for i,_ in pairs(rot) do
+ dest = dest or {}
+ dest[i] = dest[i] or {}
+ dest[i].rotation = true
end
end
return dest
@@ -793,9 +796,9 @@ do
local flds = fields(glyph)
local vw, tsb, vk = nil, nil, nil
for _,i in ipairs(flds) do
- if i=='vwidth' then vw = glyph.vwidth end
- if i=='tsidebearing' then tsb = glyph.tsidebearing end
- if i=='vkerns' then vk = glyph.vkerns end
+ if i=='vwidth' then vw = glyph.vwidth end
+ if i=='tsidebearing' then tsb = glyph.tsidebearing end
+ if i=='vkerns' then vk = glyph.vkerns end
end
return vw, tsb, vk
end
@@ -806,59 +809,59 @@ do
if glyphmax < 0 then return dest end
local tg = glyphs.glyphs
for i = glyphmin, glyphmax do
- local gv = tg[i]
- if gv then
- if gv.altuni then
- for _,at in pairs(gv.altuni) do
- local bu, vsel = at.unicode, at.variant
- if vsel then
- if vsel>=0xE0100 then vsel = vsel - 0xE0100 end
- local uniq_flag = true
+ local gv = tg[i]
+ if gv then
+ if gv.altuni then
+ for _,at in pairs(gv.altuni) do
+ local bu, vsel = at.unicode, at.variant
+ if vsel then
+ if vsel>=0xE0100 then vsel = vsel - 0xE0100 end
+ local uniq_flag = true
if dest and dest[bu] then
- for i,_ in pairs(dest[bu]) do
- if i==vsel then uniq_flag = false; break end
- end
+ for i,_ in pairs(dest[bu]) do
+ if i==vsel then uniq_flag = false; break end
+ end
+ end
+ if uniq_flag then
+ dest = dest or {}; dest[bu] = dest[bu] or {}
+ dest[bu][vsel] = unitable[gv.name]
+ end
+ end
+ end
+ end
+ -- vertical metric
+ local vw, tsb, vk = glyph_vmetric(gv)
+ local gi = unitable[gv.name]
+ if gi and vw and vw~=asc_des then
+ -- We do not use tsidebearing, since (1) fontloader does not read VORG table
+ -- and (2) 'tsidebearing' doea not appear in the returned table by fontloader.fields.
+ -- Hence, we assume that vertical origin == ascender
+ -- (see capsule_glyph_tate in ltj-setwidth.lua)
+ dest = dest or {}; dest[gi] = dest[gi] or {}
+ dest[gi].vwidth = vw/units
+ end
+ -- vertical kern
+ if gi and vk then
+ dest = dest or {};
+ local dest_vk = dest.vkerns or {}; dest.vkerns = dest_vk
+ for _,v in pairs(vk) do
+ if unitable[v.char] then
+ local vl = v.lookup
+ if type(vl)=='table' then
+ for _,vlt in pairs(vl) do
+ dest_vk[vlt] = dest_vk[vlt] or {}
+ dest_vk[vlt][gi] = dest_vk[vlt][gi] or {}
+ dest_vk[vlt][gi][unitable[v.char]] = v.off
+ end
+ else
+ dest_vk[vl] = dest_vk[vl] or {}
+ dest_vk[vl][gi] = dest_vk[vl][gi] or {}
+ dest_vk[vl][gi][unitable[v.char]] = v.off
end
- if uniq_flag then
- dest = dest or {}; dest[bu] = dest[bu] or {}
- dest[bu][vsel] = unitable[gv.name]
- end
- end
- end
- end
- -- vertical metric
- local vw, tsb, vk = glyph_vmetric(gv)
- local gi = unitable[gv.name]
- if gi and vw and vw~=asc_des then
- -- We do not use tsidebearing, since (1) fontloader does not read VORG table
- -- and (2) 'tsidebearing' doea not appear in the returned table by fontloader.fields.
- -- Hence, we assume that vertical origin == ascender
- -- (see capsule_glyph_tate in ltj-setwidth.lua)
- dest = dest or {}; dest[gi] = dest[gi] or {}
- dest[gi].vwidth = vw/units
- end
- -- vertical kern
- if gi and vk then
- dest = dest or {};
- local dest_vk = dest.vkerns or {}; dest.vkerns = dest_vk
- for _,v in pairs(vk) do
- if unitable[v.char] then
- local vl = v.lookup
- if type(vl)=='table' then
- for _,vlt in pairs(vl) do
- dest_vk[vlt] = dest_vk[vlt] or {}
- dest_vk[vlt][gi] = dest_vk[vlt][gi] or {}
- dest_vk[vlt][gi][unitable[v.char]] = v.off
- end
- else
- dest_vk[vl] = dest_vk[vl] or {}
- dest_vk[vl][gi] = dest_vk[vl][gi] or {}
- dest_vk[vl][gi][unitable[v.char]] = v.off
- end
- end
- end
- end
- end
+ end
+ end
+ end
+ end
end
return dest
end
@@ -870,41 +873,41 @@ do
fl = fontloader.open(id.filename)
else
fl = fontloader.open(id.filename, id.fontname) -- マニュアルにはこっちで書いてあるが?
- if not fl then
+ if not fl then
local index
- for i,v in ipairs(t) do
+ for i,v in ipairs(t) do
if v.fontname == id.fontname then index=i; break end
end
- fl = fontloader.open(id.filename, index)
+ fl = fontloader.open(id.filename, index)
end
end
if not fl then fontloader.close(fl); return dest end
local ind_to_uni, unicodes = {}, {}
for i,v in pairs(id.characters) do
- ind_to_uni[v.index] = i
+ ind_to_uni[v.index] = i
end
if fl.glyphs then
- local tg, glyphmin, glyphmax = fl.glyphs, fl.glyphmin, fl.glyphmax
+ local tg, glyphmin, glyphmax = fl.glyphs, fl.glyphmin, fl.glyphmax
if 0 <= glyphmax then
for i = glyphmin, glyphmax do
if tg[i] and tg[i].name then unicodes[tg[i].name] = ind_to_uni[i] end
- end
- end
- dest = add_fl_table(dest, fl, unicodes,
- fl.ascent + fl.descent, fl.units_per_em, id)
+ end
+ end
+ dest = add_fl_table(dest, fl, unicodes,
+ fl.ascent + fl.descent, fl.units_per_em, id)
end
if fl.subfonts then
for _,v in pairs(fl.subfonts) do
- local tg, glyphmin, glyphmax = v.glyphs, v.glyphmin, v.glyphmax
+ local tg, glyphmin, glyphmax = v.glyphs, v.glyphmin, v.glyphmax
if 0 <= glyphmax then
for i = glyphmin, glyphmax do
if tg[i] and tg[i].name then unicodes[tg[i].name] = ind_to_uni[i] end
- end
- end
+ end
+ end
end
for _,v in pairs(fl.subfonts) do
dest = add_fl_table(dest, v, unicodes,
- fl.ascent + fl.descent, fl.units_per_em, id)
+ fl.ascent + fl.descent, fl.units_per_em, id)
end
end
if dest then dest.unicodes = unicodes end
@@ -917,71 +920,71 @@ do
local lookuphash = id.resources.lookuphash
local desc = id.shared.rawdata.descriptions
if bx and lookuphash then
- for i,v in pairs(bx) do
- lookuphash[i] = lookuphash[i] or v
- for j,w in pairs(v) do
- desc[j].kerns = desc[j].kerns or {}
- desc[j].kerns[i] = w
- end
- end
+ for i,v in pairs(bx) do
+ lookuphash[i] = lookuphash[i] or v
+ for j,w in pairs(v) do
+ desc[j].kerns = desc[j].kerns or {}
+ desc[j].kerns[i] = w
+ end
+ end
end
end
end
--
do
- local cache_ver = 15
- local checksum = file.checksum
+ local cache_ver = 16
local function prepare_extra_data_base(id)
if (not id) or (not id.filename) then return end
local bname = id.psname or file.nameonly(id.filename)
if not font_extra_basename[bname] then
- -- if the cache is present, read it
- local newsum = checksum(id.filename) -- MD5 checksum of the fontfile
- local v = "extra_" .. string.lower(bname)
- local dat = ltjb.load_cache(
- v,
- function (t) return (t.version~=cache_ver) or (t.chksum~=newsum) end
- )
- -- if the cache is not found or outdated, save the cache
- if dat then
- font_extra_basename[bname] = dat[1] or {}
- else
- local dat = nil
- dat = prepare_fl_data(dat, id)
- dat = list_rotate_glyphs(dat, id)
- font_extra_basename[bname] = dat or {}
- ltjb.save_cache( v,
- {
- chksum = newsum,
- version = cache_ver,
- dat,
- })
- end
- return bname
+ -- if the cache is present, read it
+ if not lfs then lfs=require"lfs" end
+ local newtime = lfs.attributes(id.filename,"modification")
+ local v = "extra_" .. string.lower(bname)
+ local dat = ltjb.load_cache(
+ v,
+ function (t) return (t.version~=cache_ver) or (t.modtime~=newtime) end
+ )
+ -- if the cache is not found or outdated, save the cache
+ if dat then
+ font_extra_basename[bname] = dat[1] or {}
+ else
+ local dat = nil
+ dat = prepare_fl_data(dat, id)
+ dat = list_rotate_glyphs(dat, id)
+ font_extra_basename[bname] = dat or {}
+ ltjb.save_cache( v,
+ {
+ modtime = newtime,
+ version = cache_ver,
+ dat,
+ })
+ end
+ return bname
end
end
local function prepare_extra_data_font(id, res)
if type(res)=='table' and res.shared and (res.psname or res.filename) then
- font_extra_info[id] = font_extra_basename[res.psname or file.nameonly(res.filename)]
+ font_extra_info[id] = font_extra_basename[res.psname or file.nameonly(res.filename)]
end
end
luatexbase.add_to_callback(
'luaotfload.patch_font',
function (tfmdata)
- -- these function is executed one time per one fontfile
+ -- these function is executed one time per one fontfile
if jfm_file_name then
local bname = prepare_extra_data_base(tfmdata)
if bname then supply_vkern_table(tfmdata, bname) end
end
- return tfmdata
+ return tfmdata
end,
'ltj.prepare_extra_data', 1)
luatexbase.add_to_callback(
'luatexja.define_font',
function (res, name, size, id)
- prepare_extra_data_font(id, res)
+ prepare_extra_data_font(id, res)
end,
'ltj.prepare_extra_data', 1)
@@ -991,8 +994,8 @@ do
local identifiers = fonts.hashes.identifiers
for i=1,font.nextid()-1 do
if identifiers[i] then
- prepare_extra_data_base(identifiers[i])
- prepare_extra_data_font(i,identifiers[i])
+ prepare_extra_data_base(identifiers[i])
+ prepare_extra_data_font(i,identifiers[i])
end
end
end
@@ -1004,20 +1007,20 @@ end
do
local function acc_feature(table_vadv, table_vorg, subtables, ft, already_vert)
for char_num,v in pairs(ft.shared.rawdata.descriptions) do
- if v.slookups then
- for sn, sv in pairs(v.slookups) do
- if subtables[sn] and type(sv)=='table' then
- if sv[4]~=0 then
- table_vadv[char_num]
- = (table_vadv[char_num] or 0) + sv[4]
- end
- if sv[2]~=0 and not already_vert then
- table_vorg[char_num]
- = (table_vorg[char_num] or 0) + sv[2]
- end
- end
- end
- end
+ if v.slookups then
+ for sn, sv in pairs(v.slookups) do
+ if subtables[sn] and type(sv)=='table' then
+ if sv[4]~=0 then
+ table_vadv[char_num]
+ = (table_vadv[char_num] or 0) + sv[4]
+ end
+ if sv[2]~=0 and not already_vert then
+ table_vorg[char_num]
+ = (table_vorg[char_num] or 0) + sv[2]
+ end
+ end
+ end
+ end
end
end
@@ -1029,25 +1032,25 @@ luatexbase.add_to_callback(
local ft = font_getfont(fnum)
local subtables = {}
if ft.specification then
- for feat_name,v in pairs(ft.specification.features.normal) do
- if v==true and ft.resources then
- for _,i in pairs(ft.resources.sequences) do
- if i.order[1]== feat_name and i.type == 'gpos_single' and type(i.subtables)=='table' then
- for _,st in pairs(i.subtables) do
- subtables[st] = true
- end
- end
- end
- end
- end
- acc_feature(vadv, vorg, subtables, ft,
- ft.specification.features.normal.vrt2 or ft.specification.features.normal.vert)
- for i,v in pairs(vadv) do
- vadv[i]=vadv[i]/ft.units_per_em*fmtable.size
- end
- for i,v in pairs(vorg) do
- vorg[i]=vorg[i]/ft.units_per_em*fmtable.size
- end
+ for feat_name,v in pairs(ft.specification.features.normal) do
+ if v==true and ft.resources then
+ for _,i in pairs(ft.resources.sequences) do
+ if i.order[1]== feat_name and i.type == 'gpos_single' and type(i.subtables)=='table' then
+ for _,st in pairs(i.subtables) do
+ subtables[st] = true
+ end
+ end
+ end
+ end
+ end
+ acc_feature(vadv, vorg, subtables, ft,
+ ft.specification.features.normal.vrt2 or ft.specification.features.normal.vert)
+ for i,v in pairs(vadv) do
+ vadv[i]=vadv[i]/ft.units_per_em*fmtable.size
+ end
+ for i,v in pairs(vorg) do
+ vorg[i]=vorg[i]/ft.units_per_em*fmtable.size
+ end
end
return fmtable
end, 'ltj.v_advance', 1
@@ -1076,12 +1079,12 @@ do
local function add_vform(coverage, vform, ft, add_vert)
if type(coverage)~='table' then return end
for i,v in pairs(vert_form_table) do
- if not coverage[i] and ft.characters[v] then
- vform[i] = v
- end
+ if not coverage[i] and ft.characters[v] then
+ vform[i] = v
+ end
end
if add_vert then -- vert feature が有効にならない場合
- for i,v in pairs(coverage) do vform[i] = vform[i] or v end
+ for i,v in pairs(coverage) do vform[i] = vform[i] or v end
end
end
@@ -1091,17 +1094,17 @@ luatexbase.add_to_callback(
local vform = {}; fmtable.vform = vform
local t = font_getfont(fnum)
if t.specification and t.resources then
- local add_vert
- = not (provides_feature(fnum, t.properties.script, t.properties.language, 'vert'))
- and not (provides_feature(fnum, t.properties.script, t.properties.language, 'vrt2'))
+ local add_vert
+ = not (provides_feature(fnum, t.properties.script, t.properties.language, 'vert'))
+ and not (provides_feature(fnum, t.properties.script, t.properties.language, 'vrt2'))
-- 現在の language, script で vert もvrt2 も有効にできない場合,強制的に vert 適用
- for _,i in pairs(t.resources.sequences) do
- if i.order[1]== 'vert' and i.type == 'gsub_single' and i.steps then
- for _,j in pairs(i.steps) do
- if type(j)=='table' then add_vform(j.coverage,vform, t, add_vert) end
- end
- end
- end
+ for _,i in pairs(t.resources.sequences) do
+ if i.order[1]== 'vert' and i.type == 'gsub_single' and i.steps then
+ for _,j in pairs(i.steps) do
+ if type(j)=='table' then add_vform(j.coverage,vform, t, add_vert) end
+ end
+ end
+ end
end
return fmtable
end, 'ltj.get_vert_form', 1
@@ -1116,21 +1119,21 @@ do
luatexbase.add_to_callback(
'luaotfload.patch_font',
function (tfmdata)
- local cidinfo = tfmdata.cidinfo or tfmdata.resources.cidinfo
- if cidinfo and cidinfo.registry and cidinfo.ordering then
- local rd = ltjr_prepare_cid_font(cidinfo.registry, cidinfo.ordering)
- if rd then
- local ru, rc = rd.resources.unicodes, rd.characters
- for i,v in pairs(tfmdata.characters) do
- local w = ru["Japan1." .. tostring(v.index)]
- if w then
- v.tounicode = v.tounicode or rc[w]. tounicode
- end
- end
- end
- end
+ local cidinfo = tfmdata.cidinfo or tfmdata.resources.cidinfo
+ if cidinfo and cidinfo.registry and cidinfo.ordering then
+ local rd = ltjr_prepare_cid_font(cidinfo.registry, cidinfo.ordering)
+ if rd then
+ local ru, rc = rd.resources.unicodes, rd.characters
+ for i,v in pairs(tfmdata.characters) do
+ local w = ru["Japan1." .. tostring(v.index)]
+ if w then
+ v.tounicode = v.tounicode or rc[w]. tounicode
+ end
+ end
+ end
+ end
- return tfmdata
+ return tfmdata
end,
'ltj.supply_tounicode', 1)
end
@@ -1155,7 +1158,7 @@ do
new_ic_kern = function()
local g = node_new(id_kern, 1)
set_attr(g, attr_icflag, ITALIC)
- return g
+ return g
end
end
-- EXT: italic correction
@@ -1163,24 +1166,24 @@ do
local p = to_direct(tex.nest[tex.nest.ptr].tail)
local TEMP = node_new(id_kern)
if p and getid(p)==id_glyph then
- if is_ucs_in_japanese_char(p) then
- local j = font_metric_table[
- has_attr(p, (get_dir_count()==dir_tate) and attr_curtfnt or attr_curjfnt)
- ]
- local g = new_ic_kern()
- setfield(g, 'kern', j.char_type[find_char_class(getchar(p), j)].italic)
- node_write(g); ensure_tex_attr(attr_icflag, 0)
- else
- local f = getfont(p)
- local h = font_getfont(f) or font.fonts[f]
- if h then
- local g = new_ic_kern()
- if h.characters[getchar(p)] and h.characters[getchar(p)].italic then
- setfield(g, 'kern', h.characters[getchar(p)].italic)
- node_write(g); ensure_tex_attr(attr_icflag, 0)
- end
- end
- end
+ if is_ucs_in_japanese_char(p) then
+ local j = font_metric_table[
+ has_attr(p, (get_dir_count()==dir_tate) and attr_curtfnt or attr_curjfnt)
+ ]
+ local g = new_ic_kern()
+ setfield(g, 'kern', j.char_type[find_char_class(getchar(p), j)].italic)
+ node_write(g); ensure_tex_attr(attr_icflag, 0)
+ else
+ local f = getfont(p)
+ local h = font_getfont(f) or font.fonts[f]
+ if h then
+ local g = new_ic_kern()
+ if h.characters[getchar(p)] and h.characters[getchar(p)].italic then
+ setfield(g, 'kern', h.characters[getchar(p)].italic)
+ node_write(g); ensure_tex_attr(attr_icflag, 0)
+ end
+ end
+ end
end
node_free(TEMP)
end
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjarticle.cls b/Master/texmf-dist/tex/luatex/luatexja/ltjarticle.cls
index 6aed78925d2..3a08f1680c0 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjarticle.cls
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjarticle.cls
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltjarticle}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja class]
\RequirePackage{luatexja}
\newcounter{@paper}
@@ -122,8 +122,6 @@
\if@compatibility
\@mathrmmctrue
\else
- \DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\@currname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{mathrmmc}{\@mathrmmctrue}
\fi
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
@@ -633,6 +631,7 @@
\setlength\fboxsep{3\p@}
\setlength\fboxrule{.4\p@}
\renewcommand{\theequation}{\@arabic\c@equation}
+\unless\ifltj@disablejfam
\if@compatibility\else
\DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
\DeclareSymbolFontAlphabet{\mathmc}{mincho}
@@ -646,6 +645,7 @@
\reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
}%
\fi
+\fi
\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc}
\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt}
\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
@@ -680,12 +680,14 @@
\hb@xt@\@pnumwidth{\hss\normalfont \normalcolor #5}%
\par}%
\fi}
+\providecommand*\protected@file@percent{}
\def\addcontentsline#1#2#3{%
\protected@write\@auxout
{\let\label\@gobble \let\index\@gobble \let\glossary\@gobble
\@temptokena{\thepage}}%
{\string\@writefile{#1}%
- {\protect\contentsline{#2}{#3}{\the\@temptokena}}}%
+ {\protect\contentsline{#2}{#3}{\the\@temptokena}%
+\protected@file@percent}}%
}
\newcommand{\tableofcontents}{%
\section*{\contentsname
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjbk10.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjbk10.clo
index 5537850769c..29093f3edc1 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjbk10.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjbk10.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjbk10.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xpt{15}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjbk11.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjbk11.clo
index 2928aedf149..b0f792ec910 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjbk11.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjbk11.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjbk11.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xipt{15.5}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjbk12.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjbk12.clo
index c5420848ab7..42073daa5c6 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjbk12.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjbk12.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjbk12.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xiipt{16.5}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjbook.cls b/Master/texmf-dist/tex/luatex/luatexja/ltjbook.cls
index d0076ebbff3..b3e5ea2ee6d 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjbook.cls
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjbook.cls
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltjbook}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja class]
\RequirePackage{luatexja}
\newcounter{@paper}
@@ -132,8 +132,6 @@
\if@compatibility
\@mathrmmctrue
\else
- \DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\@currname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{mathrmmc}{\@mathrmmctrue}
\fi
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
@@ -726,6 +724,7 @@
\@addtoreset{equation}{chapter}
\renewcommand{\theequation}{%
\ifnum\c@chapter>\z@\thechapter.\fi \@arabic\c@equation}
+\unless\ifltj@disablejfam
\if@compatibility\else
\DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
\DeclareSymbolFontAlphabet{\mathmc}{mincho}
@@ -739,6 +738,7 @@
\reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
}%
\fi
+\fi
\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc}
\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt}
\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
@@ -773,12 +773,14 @@
\hb@xt@\@pnumwidth{\hss\normalfont \normalcolor #5}%
\par}%
\fi}
+\providecommand*\protected@file@percent{}
\def\addcontentsline#1#2#3{%
\protected@write\@auxout
{\let\label\@gobble \let\index\@gobble \let\glossary\@gobble
\@temptokena{\thepage}}%
{\string\@writefile{#1}%
- {\protect\contentsline{#2}{#3}{\the\@temptokena}}}%
+ {\protect\contentsline{#2}{#3}{\the\@temptokena}%
+\protected@file@percent}}%
}
\newcommand{\tableofcontents}{%
\if@twocolumn\@restonecoltrue\onecolumn
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjreport.cls b/Master/texmf-dist/tex/luatex/luatexja/ltjreport.cls
index bfceb9f3cd3..b208e1c4922 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjreport.cls
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjreport.cls
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltjreport}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja class]
\RequirePackage{luatexja}
\newcounter{@paper}
@@ -130,8 +130,6 @@
\if@compatibility
\@mathrmmctrue
\else
- \DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\@currname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{mathrmmc}{\@mathrmmctrue}
\fi
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
@@ -722,6 +720,7 @@
\@addtoreset{equation}{chapter}
\renewcommand{\theequation}{%
\ifnum\c@chapter>\z@\thechapter.\fi \@arabic\c@equation}
+\unless\ifltj@disablejfam
\if@compatibility\else
\DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
\DeclareSymbolFontAlphabet{\mathmc}{mincho}
@@ -735,6 +734,7 @@
\reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
}%
\fi
+\fi
\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc}
\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt}
\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
@@ -769,12 +769,14 @@
\hb@xt@\@pnumwidth{\hss\normalfont \normalcolor #5}%
\par}%
\fi}
+\providecommand*\protected@file@percent{}
\def\addcontentsline#1#2#3{%
\protected@write\@auxout
{\let\label\@gobble \let\index\@gobble \let\glossary\@gobble
\@temptokena{\thepage}}%
{\string\@writefile{#1}%
- {\protect\contentsline{#2}{#3}{\the\@temptokena}}}%
+ {\protect\contentsline{#2}{#3}{\the\@temptokena}%
+\protected@file@percent}}%
}
\newcommand{\tableofcontents}{%
\if@twocolumn\@restonecoltrue\onecolumn
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjsarticle.cls b/Master/texmf-dist/tex/luatex/luatexja/ltjsarticle.cls
index 56cd0c76ec3..e2dfed79cbb 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjsarticle.cls
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjsarticle.cls
@@ -38,7 +38,7 @@
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltjsarticle}
- [2018/09/23 ltjsclasses ]
+ [2018/10/08 ltjsclasses ]
\def\jsc@clsname{ltjsarticle}
\def\Cjascale{0.924715}
\RequirePackage{luatexja}
@@ -194,8 +194,6 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}%
&\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup
\tabskip\z@skip\cr
}}
-\DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\jsc@clsname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
\DeclareOption{final}{\setlength\overfullrule{0pt}}
\newif\ifmingoth
@@ -347,8 +345,11 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}%
\renewcommand\jttdefault{\gtdefault}\@ltj@match@familytrue
%%
\AtBeginDocument{%
- \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
- \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}}%
+ \unless\ifltj@disablejfam
+ \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
+ \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
+ \fi
+}%
\ltjsetparameter{jaxspmode={`!,2}}
\ltjsetparameter{jaxspmode={`〒,1}}
\ltjsetparameter{alxspmode={`+,3}}
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjsbook.cls b/Master/texmf-dist/tex/luatex/luatexja/ltjsbook.cls
index 4032c340aa9..ef9690bae9a 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjsbook.cls
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjsbook.cls
@@ -38,7 +38,7 @@
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltjsbook}
- [2018/09/23 ltjsclasses ]
+ [2018/10/08 ltjsclasses ]
\def\jsc@clsname{ltjsbook}
\def\Cjascale{0.924715}
\RequirePackage{luatexja}
@@ -199,8 +199,6 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}%
&\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup
\tabskip\z@skip\cr
}}
-\DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\jsc@clsname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
\DeclareOption{final}{\setlength\overfullrule{0pt}}
\newif\ifmingoth
@@ -355,8 +353,11 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}%
\renewcommand\jttdefault{\gtdefault}\@ltj@match@familytrue
%%
\AtBeginDocument{%
- \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
- \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}}%
+ \unless\ifltj@disablejfam
+ \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
+ \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
+ \fi
+}%
\ltjsetparameter{jaxspmode={`!,2}}
\ltjsetparameter{jaxspmode={`〒,1}}
\ltjsetparameter{alxspmode={`+,3}}
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjsize10.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjsize10.clo
index 96f1aa7e0a4..2c445458ae2 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjsize10.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjsize10.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjsize10.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xpt{15}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjsize11.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjsize11.clo
index 60d01de1506..983f9bab1df 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjsize11.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjsize11.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjsize11.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xipt{15.5}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjsize12.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjsize12.clo
index b9f5d885653..efd3aec0c52 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjsize12.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjsize12.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjsize12.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xiipt{16.5}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjskiyou.cls b/Master/texmf-dist/tex/luatex/luatexja/ltjskiyou.cls
index 755718014d0..22cb42bc1c3 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjskiyou.cls
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjskiyou.cls
@@ -38,7 +38,7 @@
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltjskiyou}
- [2018/09/23 ltjsclasses ]
+ [2018/10/08 ltjsclasses ]
\def\jsc@clsname{ltjskiyou}
\def\Cjascale{0.924715}
\RequirePackage{luatexja}
@@ -193,8 +193,6 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}%
&\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup
\tabskip\z@skip\cr
}}
-\DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\jsc@clsname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
\DeclareOption{final}{\setlength\overfullrule{0pt}}
\newif\ifmingoth
@@ -347,8 +345,11 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}%
\renewcommand\jttdefault{\gtdefault}\@ltj@match@familytrue
%%
\AtBeginDocument{%
- \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
- \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}}%
+ \unless\ifltj@disablejfam
+ \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
+ \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
+ \fi
+}%
\ltjsetparameter{jaxspmode={`!,2}}
\ltjsetparameter{jaxspmode={`〒,1}}
\ltjsetparameter{alxspmode={`+,3}}
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjspf.cls b/Master/texmf-dist/tex/luatex/luatexja/ltjspf.cls
index a380ba9c670..5c7fd8a2eab 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjspf.cls
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjspf.cls
@@ -38,7 +38,7 @@
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltjspf}
- [2018/09/23 ltjsclasses ]
+ [2018/10/08 ltjsclasses ]
\def\jsc@clsname{ltjspf}
\def\Cjascale{0.903375}
\RequirePackage{luatexja}
@@ -193,8 +193,6 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}%
&\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup
\tabskip\z@skip\cr
}}
-\DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\jsc@clsname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
\DeclareOption{final}{\setlength\overfullrule{0pt}}
\newif\ifmingoth
@@ -346,8 +344,11 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}%
\renewcommand\jttdefault{\gtdefault}\@ltj@match@familytrue
%%
\AtBeginDocument{%
- \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
- \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}}%
+ \unless\ifltj@disablejfam
+ \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
+ \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
+ \fi
+}%
\ltjsetparameter{jaxspmode={`!,2}}
\ltjsetparameter{jaxspmode={`〒,1}}
\ltjsetparameter{alxspmode={`+,3}}
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjsreport.cls b/Master/texmf-dist/tex/luatex/luatexja/ltjsreport.cls
index ec151b4aa1b..4b6803a301e 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjsreport.cls
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjsreport.cls
@@ -38,7 +38,7 @@
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltjsreport}
- [2018/09/23 ltjsclasses ]
+ [2018/10/08 ltjsclasses ]
\def\jsc@clsname{ltjsreport}
\def\Cjascale{0.924715}
\RequirePackage{luatexja}
@@ -198,8 +198,6 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}%
&\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup
\tabskip\z@skip\cr
}}
-\DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\jsc@clsname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
\DeclareOption{final}{\setlength\overfullrule{0pt}}
\newif\ifmingoth
@@ -351,8 +349,11 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}%
\renewcommand\jttdefault{\gtdefault}\@ltj@match@familytrue
%%
\AtBeginDocument{%
- \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
- \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}}%
+ \unless\ifltj@disablejfam
+ \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
+ \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
+ \fi
+}%
\ltjsetparameter{jaxspmode={`!,2}}
\ltjsetparameter{jaxspmode={`〒,1}}
\ltjsetparameter{alxspmode={`+,3}}
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjtarticle.cls b/Master/texmf-dist/tex/luatex/luatexja/ltjtarticle.cls
index b05ba9f090b..08db701933b 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjtarticle.cls
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjtarticle.cls
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltjtarticle}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja class]
\RequirePackage{luatexja}
\newcounter{@paper}
@@ -133,8 +133,6 @@
\if@compatibility
\@mathrmmctrue
\else
- \DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\@currname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{mathrmmc}{\@mathrmmctrue}
\fi
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
@@ -648,6 +646,7 @@
\setlength\fboxsep{3\p@}
\setlength\fboxrule{.4\p@}
\renewcommand{\theequation}{\@arabic\c@equation}
+\unless\ifltj@disablejfam
\if@compatibility\else
\DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
\DeclareSymbolFontAlphabet{\mathmc}{mincho}
@@ -661,6 +660,7 @@
\reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
}%
\fi
+\fi
\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc}
\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt}
\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
@@ -695,12 +695,14 @@
\hb@xt@\@pnumwidth{\hss\normalfont \normalcolor #5}%
\par}%
\fi}
+\providecommand*\protected@file@percent{}
\def\addcontentsline#1#2#3{%
\protected@write\@auxout
{\let\label\@gobble \let\index\@gobble \let\glossary\@gobble
\@temptokena{\rensuji{\thepage}}}%
{\string\@writefile{#1}%
- {\protect\contentsline{#2}{#3}{\the\@temptokena}}}%
+ {\protect\contentsline{#2}{#3}{\the\@temptokena}%
+\protected@file@percent}}%
}
\newcommand{\tableofcontents}{%
\section*{\contentsname
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjtbk10.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjtbk10.clo
index 38928a2cd4d..496dae25d97 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjtbk10.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjtbk10.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjtbk10.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xpt{17}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjtbk11.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjtbk11.clo
index 70ec9486937..a8428e3e157 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjtbk11.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjtbk11.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjtbk11.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xipt{17}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjtbk12.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjtbk12.clo
index 717bd8c9e25..c7d5f894972 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjtbk12.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjtbk12.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjtbk12.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xiipt{18}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjtbook.cls b/Master/texmf-dist/tex/luatex/luatexja/ltjtbook.cls
index bf12faa6033..b56c3b8516d 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjtbook.cls
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjtbook.cls
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltjtbook}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja class]
\RequirePackage{luatexja}
\newcounter{@paper}
@@ -143,8 +143,6 @@
\if@compatibility
\@mathrmmctrue
\else
- \DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\@currname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{mathrmmc}{\@mathrmmctrue}
\fi
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
@@ -741,6 +739,7 @@
\@addtoreset{equation}{chapter}
\renewcommand{\theequation}{%
\ifnum\c@chapter>\z@\thechapter.\fi \@arabic\c@equation}
+\unless\ifltj@disablejfam
\if@compatibility\else
\DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
\DeclareSymbolFontAlphabet{\mathmc}{mincho}
@@ -754,6 +753,7 @@
\reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
}%
\fi
+\fi
\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc}
\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt}
\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
@@ -788,12 +788,14 @@
\hb@xt@\@pnumwidth{\hss\normalfont \normalcolor #5}%
\par}%
\fi}
+\providecommand*\protected@file@percent{}
\def\addcontentsline#1#2#3{%
\protected@write\@auxout
{\let\label\@gobble \let\index\@gobble \let\glossary\@gobble
\@temptokena{\rensuji{\thepage}}}%
{\string\@writefile{#1}%
- {\protect\contentsline{#2}{#3}{\the\@temptokena}}}%
+ {\protect\contentsline{#2}{#3}{\the\@temptokena}%
+\protected@file@percent}}%
}
\newcommand{\tableofcontents}{%
\if@twocolumn\@restonecoltrue\onecolumn
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjtreport.cls b/Master/texmf-dist/tex/luatex/luatexja/ltjtreport.cls
index 8f7cb8d9f20..4949ba0c17e 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjtreport.cls
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjtreport.cls
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{ltjtreport}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja class]
\RequirePackage{luatexja}
\newcounter{@paper}
@@ -141,8 +141,6 @@
\if@compatibility
\@mathrmmctrue
\else
- \DeclareOption{disablejfam}{%
- \ClassWarningNoLine{\@currname}{The class option 'disablejfam' is obsolete}}
\DeclareOption{mathrmmc}{\@mathrmmctrue}
\fi
\DeclareOption{draft}{\setlength\overfullrule{5pt}}
@@ -737,6 +735,7 @@
\@addtoreset{equation}{chapter}
\renewcommand{\theequation}{%
\ifnum\c@chapter>\z@\thechapter.\fi \@arabic\c@equation}
+\unless\ifltj@disablejfam
\if@compatibility\else
\DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
\DeclareSymbolFontAlphabet{\mathmc}{mincho}
@@ -750,6 +749,7 @@
\reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}
}%
\fi
+\fi
\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc}
\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt}
\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
@@ -784,12 +784,14 @@
\hb@xt@\@pnumwidth{\hss\normalfont \normalcolor #5}%
\par}%
\fi}
+\providecommand*\protected@file@percent{}
\def\addcontentsline#1#2#3{%
\protected@write\@auxout
{\let\label\@gobble \let\index\@gobble \let\glossary\@gobble
\@temptokena{\rensuji{\thepage}}}%
{\string\@writefile{#1}%
- {\protect\contentsline{#2}{#3}{\the\@temptokena}}}%
+ {\protect\contentsline{#2}{#3}{\the\@temptokena}%
+\protected@file@percent}}%
}
\newcommand{\tableofcontents}{%
\if@twocolumn\@restonecoltrue\onecolumn
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjtsize10.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjtsize10.clo
index b50ea53f92a..834522ee8c4 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjtsize10.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjtsize10.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjtsize10.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xpt{17}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjtsize11.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjtsize11.clo
index 750b328342e..6afec3c1ccf 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjtsize11.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjtsize11.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjtsize11.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xipt{17}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/ltjtsize12.clo b/Master/texmf-dist/tex/luatex/luatexja/ltjtsize12.clo
index 3c1487514f1..fc7ab2967a0 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/ltjtsize12.clo
+++ b/Master/texmf-dist/tex/luatex/luatexja/ltjtsize12.clo
@@ -23,7 +23,7 @@
%% File: ltjclasses.dtx
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{ltjtsize12.clo}
- [2018/07/24 v1.8-ltj-15
+ [2018/10/08 v1.8-ltj-16
Standard LuaLaTeX-ja file (size option)]
\renewcommand{\normalsize}{%
\@setfontsize\normalsize\@xiipt{18}%
diff --git a/Master/texmf-dist/tex/luatex/luatexja/luatexja.sty b/Master/texmf-dist/tex/luatex/luatexja/luatexja.sty
index fb37eed3a8f..496e4c86960 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/luatexja.sty
+++ b/Master/texmf-dist/tex/luatex/luatexja/luatexja.sty
@@ -24,6 +24,7 @@
\edef\ltj@AtEnd{\x
\noexpand\let\noexpand\ltj@AtEnd\relax}
\def\luatexjaLoaded{\endinput}
+\newif\ifltj@disablejfam
%% Check if LaTeX is used.
\begingroup\expandafter\expandafter\expandafter\endgroup
@@ -35,9 +36,12 @@
\csname iftrue\endcsname
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{luatexja}[2018/09/30 Japanese Typesetting with Lua(La)TeX]
+ \DeclareOption{disablejfam}{\ltj@disablejfamtrue}
+ \DeclareOption*{}
+ \ProcessOptions\relax
\fi %</LaTeX>
%%%% VERSION
-\def\LuaTeXjaversion{20180930.0}
+\def\LuaTeXjaversion{20181103.0}
\directlua{require('ltj-unicode-ccfix.lua')}% catcode of ideographs
diff --git a/Master/texmf-dist/tex/luatex/luatexja/patches/lltjdefs.sty b/Master/texmf-dist/tex/luatex/luatexja/patches/lltjdefs.sty
index c497f215f06..a4a457f906b 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/patches/lltjdefs.sty
+++ b/Master/texmf-dist/tex/luatex/luatexja/patches/lltjdefs.sty
@@ -3,7 +3,7 @@
%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{lltjdefs}[2018/09/05 Default font settings of LuaTeX-ja]
+\ProvidesPackage{lltjdefs}[2018/10/08 Default font settings of LuaTeX-ja]
\ifdefined\ltj@stdmcfont\else\def\ltj@stdmcfont{IPAExMincho}\fi
\ifdefined\ltj@stdgtfont\else\def\ltj@stdgtfont{IPAExGothic}\fi
@@ -63,11 +63,13 @@
\DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{}
\DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{}
-\DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
-\jfam\symmincho
-\SetSymbolFont{mincho}{bold}{JY3}{gt}{m}{n}
-\DeclareSymbolFontAlphabet{\mathmc}{mincho}
-\DeclareMathAlphabet{\mathgt}{JY3}{gt}{m}{n}
+\unless\ifltj@disablejfam
+ \DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
+ \jfam\symmincho
+ \SetSymbolFont{mincho}{bold}{JY3}{gt}{m}{n}
+ \DeclareSymbolFontAlphabet{\mathmc}{mincho}
+ \DeclareMathAlphabet{\mathgt}{JY3}{gt}{m}{n}
+\fi
\newif\if@ltj@match@family
\@ltj@match@familyfalse
diff --git a/Master/texmf-dist/tex/luatex/luatexja/patches/lltjfont.sty b/Master/texmf-dist/tex/luatex/luatexja/patches/lltjfont.sty
index ce566c30c8f..6560f3fa3fe 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/patches/lltjfont.sty
+++ b/Master/texmf-dist/tex/luatex/luatexja/patches/lltjfont.sty
@@ -3,7 +3,7 @@
%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{lltjfont}[2018/01/12 Patch to NFSS2 for LuaTeX-ja]
+\ProvidesPackage{lltjfont}[2018/10/08 Patch to NFSS2 for LuaTeX-ja]
\def\ltj@chardef@text@cmd#1{%
\let\@ifdefinable\@@ifdefinable%
@@ -318,49 +318,50 @@
\expandafter\let\csname selectfont\space \endcsname \ltj@@orig@selectfont
\ltj@@EverySelectfont@Init
}
-\def\ltj@selectfont@patch{%
- \directlua{luatexja.base.start_time_measure('selectfont')}%
- \global\let\ltj@afont@name=\font@name
- \let\tmp@error@fontshape\error@fontshape
- \let\error@fontshape\error@kfontshape
- \directlua{luatexja.jfont.is_kyenc('\luatexluaescapestring{\k@encoding}')}\ifin@%
- \let\cy@encoding\k@encoding
- \edef\ct@encoding{\csname t@enc@\k@encoding\endcsname}%
- \else
- \directlua{luatexja.jfont.is_ktenc('\luatexluaescapestring{\k@encoding}')}\ifin@%
- \let\ct@encoding\k@encoding
- \edef\cy@encoding{\csname y@enc@\k@encoding\endcsname}%
- \else
- \@latex@error{KANJI Encoding scheme `\k@encoding' unknown}\@eha
- \fi
- \fi
-%
+\def\ltj@selectfont@tate{%
\let\k@encoding\ct@encoding
\xdef\font@name{\csname\curr@kfontshape/\f@size\endcsname}%
- \pickup@tfont
- \font@name
+ \pickup@tfont\font@name
\ltj@@does@alt@set{\curr@kfontshape}%
% alt fonts の定義
\directlua{luatexja.jfont.output_alt_font_cmd('t', '\luatexluaescapestring{\curr@kfontshape}')}%
% 定義した alt fonts のデータを \ltjdeclarealtfont に渡すのと同等の処理をする
\directlua{luatexja.jfont.pickup_alt_font_a('\f@size')}%
- \fi
-%
+ \fi}
+\def\ltj@selectfont@yoko{%
\let\k@encoding\cy@encoding
\xdef\font@name{\csname\curr@kfontshape/\f@size\endcsname}%
- \pickup@jfont
- \font@name
+ \pickup@jfont\font@name
\ltj@@does@alt@set{\curr@kfontshape}%
% alt fonts の定義
\directlua{luatexja.jfont.output_alt_font_cmd('y', '\luatexluaescapestring{\curr@kfontshape}')}%
% 定義した alt fonts のデータを \ltjdeclarealtfont に渡すのと同等の処理をする
\directlua{luatexja.jfont.pickup_alt_font_a('\f@size')}%
+ \fi}
+\def\ltj@selectfont@patch{%
+ \directlua{luatexja.base.start_time_measure('selectfont')}%
+ \let\tmp@error@fontshape\error@fontshape
+ \let\error@fontshape\error@kfontshape
+ \directlua{luatexja.jfont.is_kyenc('\luatexluaescapestring{\k@encoding}')}\ifin@%
+ \let\cy@encoding\k@encoding
+ \edef\ct@encoding{\csname t@enc@\k@encoding\endcsname}%
+ \else
+ \directlua{luatexja.jfont.is_ktenc('\luatexluaescapestring{\k@encoding}')}\ifin@%
+ \let\ct@encoding\k@encoding
+ \edef\cy@encoding{\csname y@enc@\k@encoding\endcsname}%
+ \else
+ \@latex@error{KANJI Encoding scheme `\k@encoding' unknown}\@eha
+ \fi
\fi
+ \global\let\ltj@afont@name=\font@name
+ %\ifnum3=\ltjgetparameter{direction}\relax \ltj@selectfont@tate
+ %\else \ltj@selectfont@yoko\fi
+ \ltj@selectfont@tate\ltj@selectfont@yoko
%
\edef\tmp@item{{\k@encoding}}\expandafter\def\expandafter\k@encoding\tmp@item
\kenc@update
+ \global\let\font@name=\ltj@afont@name
\let\error@fontshape\tmp@error@fontshape
-%
\if@knjcmd \@knjcmdfalse
\expandafter\ifx
\csname rel@\k@encoding/\k@family/\k@series/\k@shape\endcsname\relax
@@ -426,7 +427,7 @@
= ((getfont(font.current()) or nulltable)
.characters or nulltable)[77] or nulltable %% 'M'
set_attr('ltj@tablshift',
- 0.5*((fm.height or 0)- (fm.depth or 0) - ht+ dp))
+ tex.round(0.5*((fm.height or 0)- (fm.depth or 0) - ht+ dp)))
if dir() ~= dir_tate then
ft = fmt[get_attr('ltj@curjfnt')] or nulltable
ft = ft and ft.char_type or nulltable
@@ -570,12 +571,12 @@
\romanshape{\shapedefault}%
\selectfont\ignorespaces}
\let\reset@font\normalfont
-\DeclareRobustCommand\mcfamily
- {\not@math@alphabet\mcfamily\mathmc
- \kanjifamily\mcdefault\selectfont}
-\DeclareRobustCommand\gtfamily
- {\not@math@alphabet\gtfamily\mathgt
- \kanjifamily\gtdefault\selectfont}
+\DeclareRobustCommand\mcfamily{%
+ \unless\ifltj@disablejfam\not@math@alphabet\mcfamily\mathmc\fi
+ \kanjifamily\mcdefault\selectfont}
+\DeclareRobustCommand\gtfamily{%
+ \unless\ifltj@disablejfam\not@math@alphabet\gtfamily\mathgt\fi
+ \kanjifamily\gtdefault\selectfont}
\let\romanprocess@table\process@table
\def\kanjiprocess@table{%
\kanjiencoding{\kanjiencodingdefault}%
@@ -656,6 +657,7 @@
\let\@@italiccorr=\/
%%%%%% Japanese font for math mode
+\unless\ifltj@disablejfam
% \M@<enc> から その <enc> が和文用か調べる
{\catcode`M=12%
@@ -689,6 +691,8 @@
\ifin@\jfam#2\relax\else\mathgroup#2\relax\fi
\expandafter\math@egroup\fi}%
+\fi
+
%%%%%% Alternate Japanese Fonts
%%%% \DeclareAlternateKanjiFont<Benc><Bfam><Bser><Bshape><Aenc><Afam><Aser><Ashape><range>
% いつも global
diff --git a/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-siunitx.sty b/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-siunitx.sty
index d629fd3cb1e..3c7569efbc8 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-siunitx.sty
+++ b/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-siunitx.sty
@@ -1,10 +1,11 @@
%
-% lltjp-siunitx.sty 2018-08-24
+% lltjp-siunitx.sty 2018-11-02
%
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{luatexja}
+\makeatletter
\ExplSyntaxOn
\cs_generate_variant:Nn \tl_if_in:NnT { coT }
\cs_new:Nn \__ltj_siunix_patch_inner:n {
@@ -26,5 +27,48 @@
\__ltj_siunix_patch_inner_math:n { arcsecond }
\__ltj_siunix_patch_inner_math:n { ohm }
}
+
+%%%% new table column: S and s
+\cs_set_protected:Npn \__siunitx_table_collect_not_braced:N #1
+ {
+ \token_if_eq_meaning:NNF #1 \relax {
+ \token_if_eq_meaning:NNF #1 \ltjfakeboxbdd {
+ \token_if_eq_meaning:NNF #1 \pltx@next@inhibitglue {
+ \token_if_eq_meaning:NNF #1 \tex_ignorespaces:D
+ {
+ \token_if_eq_meaning:NNF #1 \tex_unskip:D
+ { \__siunitx_table_collect_not_braced_aux_i:N #1 }
+ }
+ }}}
+ \__siunitx_table_collect_next:
+ }
+
+\AtBeginDocument
+ {
+ \@ifpackageloaded { mdwtab }
+ {
+ \cs_set_protected:Npn \__siunitx_table_collect_not_braced:N #1
+ {
+ \token_if_eq_meaning:NNF #1 \relax {
+ \token_if_eq_meaning:NNF #1 \ltjfakeboxbdd {
+ \token_if_eq_meaning:NNF #1 \pltx@next@inhibitglue {
+ \token_if_eq_meaning:NNF #1 \tex_ignorespaces:D
+ {
+ \token_if_eq_meaning:NNF #1 \tex_unskip:D
+ {
+ \token_if_eq_meaning:NNF #1 \tab@setcr
+ {
+ \token_if_eq_meaning:NNF #1 \@maybe@unskip
+ { \__siunitx_table_collect_not_braced_aux_i:N #1 }
+ }
+ }
+ }
+ }}}
+ \__siunitx_table_collect_next:
+ }
+ }
+ { }
+ }
+
\ExplSyntaxOff
\endinput
diff --git a/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-unicode-math.sty b/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-unicode-math.sty
index 9c8bbfca9f9..fa974bbb846 100644
--- a/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-unicode-math.sty
+++ b/Master/texmf-dist/tex/luatex/luatexja/patches/lltjp-unicode-math.sty
@@ -1,5 +1,5 @@
%
-% lltjp-unicode-math.sty 2018-08-24
+% lltjp-unicode-math.sty 2018-10-09
%
\NeedsTeXFormat{LaTeX2e}
@@ -23,6 +23,7 @@
\__um_input_math_symbol_table:
\group_end:
}
+\unless\ifltj@disablejfam
\cs_set:Npn \use@mathgroup #1 #2
{
%\typeout{UM <#1><#2>}
@@ -36,6 +37,7 @@
\math@egroup
}
}
+\fi
\ifcsname jsc@mag@xrealtrue \endcsname \else
\expandafter\expandafter\expandafter \ExplSyntaxOff \expandafter \endinput