summaryrefslogtreecommitdiff
path: root/macros/luatex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-03-24 03:02:47 +0000
committerNorbert Preining <norbert@preining.info>2020-03-24 03:02:47 +0000
commite9af7499b89170ca5c737240b0cdb9563dcf6c5a (patch)
tree28a1345f3b2d6516864defbaa2e5bf65b15b77da /macros/luatex
parent404e90e73ebdb6ecca01ae0b18e684a5f8fe83b3 (diff)
CTAN sync 202003240302
Diffstat (limited to 'macros/luatex')
-rw-r--r--macros/luatex/generic/luatexja/README16
-rw-r--r--macros/luatex/generic/luatexja/doc/luatexja-en.pdfbin531826 -> 528742 bytes
-rw-r--r--macros/luatex/generic/luatexja/doc/luatexja-ja.pdfbin939144 -> 938795 bytes
-rw-r--r--macros/luatex/generic/luatexja/doc/luatexja.dtx218
-rw-r--r--macros/luatex/generic/luatexja/src/addons/luatexja-preset.sty4
-rw-r--r--macros/luatex/generic/luatexja/src/ltj-plain.sty6
-rw-r--r--macros/luatex/generic/luatexja/src/luatexja.sty2
-rw-r--r--macros/luatex/generic/luatexja/src/patches/lltjdefs.sty8
-rw-r--r--macros/luatex/generic/luatexja/src/patches/lltjfont.sty112
-rw-r--r--macros/luatex/latex/arabluatex/arabluatex.dtx138
-rw-r--r--macros/luatex/latex/arabluatex/arabluatex.pdfbin654486 -> 658172 bytes
-rw-r--r--macros/luatex/latex/arabluatex/samples/al-Jahiz.pdfbin112383 -> 112383 bytes
-rw-r--r--macros/luatex/latex/arabluatex/samples/exporting.pdfbin63544 -> 63544 bytes
-rw-r--r--macros/luatex/latex/arabluatex/samples/template-01.pdfbin64015 -> 63921 bytes
14 files changed, 366 insertions, 138 deletions
diff --git a/macros/luatex/generic/luatexja/README b/macros/luatex/generic/luatexja/README
index 382247cd44..4ef0694918 100644
--- a/macros/luatex/generic/luatexja/README
+++ b/macros/luatex/generic/luatexja/README
@@ -1,4 +1,4 @@
-The LuaTeX-ja Package 20200301.0
+The LuaTeX-ja Package 20200323.0
--------------------------------
Copyright (c) 2011--2020 The LuaTeX-ja project
License: modified BSD (see COPYING)
@@ -22,9 +22,10 @@ Installation
0. Please make sure that your TeX distribution is up-to-date.
This version of LuaTeX-ja requires
- - LuaTeX 1.07.0 (or later)
+ - LuaTeX 1.10.0 (or later)
- luaotfload (v3.1 or later recommended)
- adobemapping (Adobe CMap files)
+ - LaTeX 2020-02-02 patch level 5 or later (if you want to use with LaTeX)
- everysel package
- etoolbox package
- ltxcmds package
@@ -32,20 +33,21 @@ Installation
- atbegshi package
- filehook package
- stfloats package
- - IPAex fonts (http://ipafont.ipa.go.jp/)
+ - Harano Aji fonts (https://github.com/trueroad/HaranoAjiFonts)
+ more specifically, HaranoAjiMincho-Regular and HaranoAjiGothic-Medium
Using LuaTeX-ja with LuaHBTeX is not well tested.
One might be able to typeset documents without an error, but with
some unwanted results.
-1. If you are using TeX Live 2019, you can install LuaTeX-ja via tlmgr.
+1. If you are using TeX Live 2020, you can install LuaTeX-ja via tlmgr.
2. If you must/want to install manually:
a. Download the source archive from CTAN,
- or tagged as 20200301.0 in the Git repository by
+ or tagged as 20200323.0 in the Git repository by
<http://git.osdn.jp/view?p=luatex-ja/luatexja.git
- ;a=snapshot;h=refs/tags/20200301.0;sf=tgz>
+ ;a=snapshot;h=refs/tags/20200323.0;sf=tgz>
b. Extract the archive and process following three files by LuaLaTeX
to generate classes for Japanese typesetting:
@@ -93,4 +95,4 @@ Notes
* src/*.{ins.dtx} and src/ltj-kinsoku_make.tex are not needed in regular use.
-Last commit date: Sun Mar 1 09:56:08 2020 +0900
+Last commit date: Mon Mar 23 07:51:46 2020 +0900
diff --git a/macros/luatex/generic/luatexja/doc/luatexja-en.pdf b/macros/luatex/generic/luatexja/doc/luatexja-en.pdf
index f4f37cabfb..c850b984ca 100644
--- a/macros/luatex/generic/luatexja/doc/luatexja-en.pdf
+++ b/macros/luatex/generic/luatexja/doc/luatexja-en.pdf
Binary files differ
diff --git a/macros/luatex/generic/luatexja/doc/luatexja-ja.pdf b/macros/luatex/generic/luatexja/doc/luatexja-ja.pdf
index 0687d280bb..e82c5aae28 100644
--- a/macros/luatex/generic/luatexja/doc/luatexja-ja.pdf
+++ b/macros/luatex/generic/luatexja/doc/luatexja-ja.pdf
Binary files differ
diff --git a/macros/luatex/generic/luatexja/doc/luatexja.dtx b/macros/luatex/generic/luatexja/doc/luatexja.dtx
index 87654172e7..1cf7ea28d7 100644
--- a/macros/luatex/generic/luatexja/doc/luatexja.dtx
+++ b/macros/luatex/generic/luatexja/doc/luatexja.dtx
@@ -505,8 +505,6 @@ By default, \LuaTeX-ja uses Japanese fonts to typeset Greek and Cyrillic letters
From version~20150906.0, characters which belongs both ISO~8859-1 and JIS~X~0208,
such as \P~and~\S, are now typeset in alphabetic fonts.
-If you are using \LaTeXe\ prior to 2017/01/01, these characters are not typeset correctly
-without the \cs{fontspec} (and~\Pkg{luatexja-fontspec}) package.
%</en>
%<*ja>
\paragraph{ギリシャ文字・キリル文字とISO~8859-1の記号}
@@ -523,9 +521,7 @@ without the \cs{fontspec} (and~\Pkg{luatexja-fontspec}) package.
また,\P,~\S といったISO~8859-1の上位領域とJIS~X~0208の共通部分の文字は
バージョン20150906.0から標準で欧文扱いとなった.\LaTeXe\ 2017/01/01以降では
標準でTUエンコーディングのLatin Modernフォントが使われるので,
-特に何もせずソース中にそのまま記述してもこれらの文字が出力される
-\footnote{\LaTeXe\ 2017/01/01より前では,ソース中に直接記述しても
- \Pkg{fontspec}パッケージ(および\Pkg{luatexja-fontspec}パッケージ)非読み込みの状態では出力されない.}.
+特に何もせずソース中にそのまま記述してもこれらの文字が出力される.
和文扱いで出力するには \verb+\ltjjachar`§+ のように \cs{ltjjachar} 命令
を使えばよい.
%</ja>
@@ -652,15 +648,29 @@ and \emph{Japanese fonts} for fonts used in \textbf{JAchar}.
%<en>The following packages are needed for the \LuaTeX-ja\ package.
%<ja>\LuaTeX-jaパッケージの動作には次のパッケージ類が必要である.
\begin{itemize}
-\item \href{http://www.luatex.org/}{\LuaTeX}\ 1.07.0 (or later)
+\item \href{http://www.luatex.org/}{\LuaTeX}\ 1.10.0 (or later)
\item recent \href{https://github.com/latex3/luaotfload}{\Pkg{luaotfload}} (v3.1 or later recommended)
\item \Pkg{adobemapping} (Adobe cmap and pdfmapping files)
+\item \LaTeX\ 2020-02-02 patch level 5 or later
+%<en> (if you want to use \LuaTeX-ja with \LaTeXe)
+%<ja> (\LaTeX 下で\LuaTeX-jaを使う場合)
\item \href{https://github.com/josephwright/etoolbox/}{\Pkg{etoolbox}},
- \Pkg{everysel} (if you want to use \LuaTeX-ja with \LaTeXe)
+ \Pkg{everysel}
+%<en> (if you want to use \LuaTeX-ja with \LaTeXe)
+%<ja> (\LaTeX 下で\LuaTeX-jaを使う場合)
\item \Pkg{ltxcmds}, \Pkg{pdftexcmds}, \Pkg{filehook}, \Pkg{atbegshi}
\item \href{https://github.com/wspr/fontspec/}{\Pkg{fontspec}} v2.7c (or later)
-%<en>\item \emph{IPAex fonts} (\url{http://ipafont.ipa.go.jp/})
-%<ja>\item \emph{IPAexフォント(\url{http://ipafont.ipa.go.jp/})}
+%%% %<en>\item \emph{IPAex fonts} (\url{http://ipafont.ipa.go.jp/})
+%%% %<ja>\item \emph{IPAexフォント(\url{http://ipafont.ipa.go.jp/})}
+%<*en>
+\item \emph{Harano Aji fonts} (\url{https://github.com/trueroad/HaranoAjiFonts})\\
+ More specifically, HaranoAjiMincho-Regular~and~HaranoAjiGothic-Medium.
+%</en>
+%<*ja>
+\item \emph{原ノ味フォント(\url{https://github.com/trueroad/HaranoAjiFonts})}\\
+\LuaTeX-jaの最低限の動作には原ノ味明朝Regular~(HaranoAjiMincho-Regular)と
+原ノ味角ゴシックMedium~(HaranoAjiGothic-Medium)があれば十分である.
+%</ja>
\end{itemize}
%<*en>
@@ -668,26 +678,25 @@ Now \LuaTeX-ja is available from
CTAN (in the \texttt{macros/luatex/generic/luatexja} directory), and
the following distributions:
\begin{itemize}
- \item MiK\TeX\ (in \texttt{luatexja.tar.lzma}); see the next subsection
- \item \href{https://www.tug.org/texlive/}{\TeX\ Live} (in \texttt{texmf-dist/tex/luatex/luatexja})
+ \item \href{https://www.tug.org/texlive/}{\TeX~Live} (in \texttt{texmf-dist/tex/luatex/luatexja})
\item \href{http://w32tex.org/}{W32\TeX}\ (in \texttt{luatexja.tar.xz})
+ \item MiK\TeX\ (in \texttt{luatexja.tar.lzma}); see the next subsection
\end{itemize}
-IPAex fonts are also available in these distributions.
+Harano Aji fonts are available in \TeX~Live and MiK\TeX.
%</en>
%<*ja>
現在,\LuaTeX-jaはCTAN (\texttt{macros/luatex/generic/luatexja})に収録されている他,
以下のディストリビューションにも収録されている:
\begin{itemize}
\item MiK\TeX\ (\texttt{luatexja.tar.lzma})
- \item \TeX\ Live (\texttt{texmf-dist/tex/luatex/luatexja})
+ \item \TeX~Live (\texttt{texmf-dist/tex/luatex/luatexja})
\item W32\TeX\ (\texttt{luatexja.tar.xz})
\end{itemize}
-これらのディストリビューションはIPAexフォントも収録している.
-W32\TeX においてはIPAexフォントは \texttt{luatexja.tar.xz} 内にある.
+\TeX~Live, MiK\TeX は原ノ味フォントも収録している.
%</ja>
%<*en>
-\paragraph{Using \LuaTeX-ja with LuaHB\TeX}
+\paragraph{HarfBuzz~and~\LuaTeX-ja}
Using \LuaTeX-ja with LuaHB\TeX (\LuaTeX\ integrated with
\href{https://github.com/harfbuzz/harfbuzz}{HarfBuzz}) is not well tested.
Maybe documents can typeset without an error,
@@ -698,13 +707,12 @@ Especially,
by specifying \texttt{Renderer=Harfbuzz}~etc.\ (\Pkg{fontspec}) or~{mode=harf} (otherwise).
%</en>
%<*ja>
-\paragraph{LuaHB\TeX 下での\LuaTeX-jaの使用}
-現時点では,LuaHB\TeX 下での\LuaTeX-jaの使用は十分にテストされていない.
+\paragraph{HarfBuzzと\LuaTeX-ja}
+現時点では,HarfBuzzの機能を用いたときの\LuaTeX-jaの使用は十分にテストされていない.
エラーが発生せずにタイプセットできるかもしれないが,特に縦組時や
\cs{CID}などで意図しない結果となりうる可能性が大きい.
-
-特に,\texttt{Renderer=Harfbuzz}等(\Pkg{fontspec})や\texttt{mode=harf}指定(それ以外)を用いて
-\emph{和文フォントに対してHarfBuzzを用いることは推奨しない}.
+特に,\emph{\texttt{Renderer=Harfbuzz}等(\Pkg{fontspec})や\texttt{mode=harf}指定(それ以外)を通じて
+ 和文フォントに対してHarfBuzzを用いることは推奨しない}.
%</ja>
%<en>\paragraph{Manual installation}
@@ -878,24 +886,20 @@ and finally delete the temporary directory.
\item
%<*en>
-Note that when \LuaTeX-ja is loaded in plain \LuaTeX~nor \LaTeX~2019-10-01,
+Note that when \LuaTeX-ja is loaded in plain \LuaTeX,
we cannot use color specification on font loading, such as
\begin{lstlisting}
\font\hoge=lmroman10-regular.otf:color=FF0000 % \font primitive
- \DeclareFontShape{TU}{...}{...}{...}{<-> lmsans10-boldoblique:color=005599}{} % NFSS
- \setmainfont{texgyretermes}[Color=220022] % fontspec
\end{lstlisting}
This is because codes for shifting baseline in math mode (\LuaTeX-ja) collide with and prevents loading
codes for font color (\Pkg{luaotfload}) in these environments.
-\emph{We recommend to use \LaTeX\ 2020-02-02}, since we can avoid this collision in \LaTeX\ 2020-02-02.
+\emph{We recommend to use \LaTeX\ 2020-02-02 (or later)}, since we can avoid this collision in there.
%</en>
%<*ja>
-なお,\LuaTeX-jaをplain~\LuaTeX や\LaTeX\ 2019-10-01以前の環境下で用いる場合,
+なお,\LuaTeX-jaをplain~\LuaTeX で用いる場合,
以下のような\emph{フォント読み込み時の色指定}(\cs{textcolor}命令ではなく!)\emph{は利用できない}.
\begin{lstlisting}
\font\hoge=lmroman10-regular.otf:color=FF0000 % \font primitive
- \DeclareFontShape{TU}{...}{...}{...}{<-> lmsans10-boldoblique:color=005599}{} % NFSS
- \setmainfont{texgyretermes}[Color=220022] % fontspec
\end{lstlisting}
これは,\LuaTeX-jaによる数式内のベースライン補正(\ref{ssec:baseline}節)のコードが
\Pkg{luaotfload}パッケージのフォント色処理のコードと衝突するためである.
@@ -924,12 +928,12 @@ codes for font color (\Pkg{luaotfload}) in these environments.
\textbf{direction}&
\textbf{classification}&\textbf{font name}&\bfseries ``10\,pt''&\bfseries ``7\,pt''&\bfseries ``5\,pt''\\\midrule
\smash{\raisebox{-1ex}{\emph{yoko} (horizontal)}}&
-\emph{mincho}&IPAex Mincho&\cs{tenmin}&\cs{sevenmin}&\cs{fivemin}\\
-&\emph{gothic}&IPAex Gothic&\cs{tengt} &\cs{sevengt} &\cs{fivegt}\\
+\emph{mincho}&HaranoAjiMincho-Regular&\cs{tenmin}&\cs{sevenmin}&\cs{fivemin}\\
+&\emph{gothic}&HaranoAjiGothic-Medium&\cs{tengt} &\cs{sevengt} &\cs{fivegt}\\
\midrule
\smash{\raisebox{-1ex}{\emph{tate} (vertical)}}&
-\emph{mincho}&IPAex Mincho&\cs{tentmin}&\cs{seventmin}&\cs{fivetmin}\\
-&\emph{gothic}&IPAex Gothic&\cs{tentgt} &\cs{seventgt} &\cs{fivetgt}\\
+\emph{mincho}&HaranoAjiMincho-Regular&\cs{tentmin}&\cs{seventmin}&\cs{fivetmin}\\
+&\emph{gothic}&HaranoAjiGothic-Medium&\cs{tentgt} &\cs{seventgt} &\cs{fivetgt}\\
\bottomrule
\end{tabular}
\end{center}
@@ -941,12 +945,12 @@ codes for font color (\Pkg{luaotfload}) in these environments.
\toprule
\emph{組方向}&\emph{字体}&\emph{フォント名}&\bfseries``10\,pt''&\bfseries``7\,pt''&\bfseries``5\,pt''\\\midrule
\smash{\raisebox{-0.7\zh}{横組}}&
-明朝体&IPAex明朝&\cs{tenmin}&\cs{sevenmin}&\cs{fivemin}\\
-&\textgt{ゴシック体}&IPAexゴシック&\cs{tengt} &\cs{sevengt} &\cs{fivegt}\\
+明朝体&原ノ味明朝Regular&\cs{tenmin}&\cs{sevenmin}&\cs{fivemin}\\
+&\textgt{ゴシック体}&原ノ味角ゴシックMedium&\cs{tengt} &\cs{sevengt} &\cs{fivegt}\\
\midrule
\smash{\raisebox{-0.7\zh}{縦組}}&
-明朝体&IPAex明朝&\cs{tentmin}&\cs{seventmin}&\cs{fivetmin}\\
-&\textgt{ゴシック体}&IPAexゴシック&\cs{tentgt} &\cs{seventgt} &\cs{fivetgt}\\
+明朝体&原ノ味明朝Regular&\cs{tentmin}&\cs{seventmin}&\cs{fivetmin}\\
+&\textgt{ゴシック体}&原ノ味角ゴシックMedium&\cs{tentgt} &\cs{seventgt} &\cs{fivetgt}\\
\bottomrule
\end{tabular}
\end{center}
@@ -958,7 +962,7 @@ codes for font color (\Pkg{luaotfload}) in these environments.
one inputs \texttt{luatexja.sty} (Subsection~\ref{ssec:cfg}).
%</en>
%<*ja>
-\item 標準和文フォントやJFMをIPAexフォントから別のものに置き換えるには,
+\item 標準和文フォントやJFMを原ノ味フォントから別のものに置き換えるには,
\cs{ltj@stdmcfont}等を\texttt{luatexja.sty}読み込み\emph{前}に定義すればよい.
\ref{ssec:cfg}節を参照.
%</ja>
@@ -1056,8 +1060,8 @@ By default, the following fonts are used for these two families.
\begin{tabular}{lllll}
\toprule
\textbf{classification}&\textbf{family}&\textbf{\cs{mdseries}}&\textbf{\cs{bfseries}}&\textbf{scale}\\\midrule
-\emph{mincho} (明朝体)&\texttt{mc}&IPAexMincho&IPAexGothic&0.962216\\
-\emph{gothic} (\textgt{ゴシック体})&\texttt{gt}&IPAexGothic&IPAexGothic&0.962216\\
+\emph{mincho} (明朝体)&\texttt{mc}&HaranoAjiMincho-Regular&HaranoAjiGothic-Medium&0.962216\\
+\emph{gothic} (\textgt{ゴシック体})&\texttt{gt}&HaranoAjiGothic-Medium&HaranoAjiGothic-Medium&0.962216\\
\bottomrule
\end{tabular}
\end{center}
@@ -1091,8 +1095,8 @@ By default, the following fonts are used for these two families.
\begin{tabular}{lllll}
\toprule
\emph{字体}&\emph{ファミリ}&\textbf{\cs{mdseries}}&\textbf{\cs{bfseries}}&\emph{スケール}\\\midrule
-明朝体&\texttt{mc}&IPAex明朝&IPAexゴシック&0.962216\\
-\textgt{ゴシック体}&\texttt{gt}&IPAexゴシック&IPAexゴシック&0.962216\\
+明朝体&\texttt{mc}&原ノ味明朝Regular&原ノ味角ゴシックMedium&0.962216\\
+\textgt{ゴシック体}&\texttt{gt}&原ノ味角ゴシックMedium&原ノ味角ゴシックMedium&0.962216\\
\bottomrule
\end{tabular}
\end{center}
@@ -1293,15 +1297,6 @@ For \LaTeXe, \LuaTeX-ja adopted most of the font selection system of \pLaTeXe\ (
%<*ja>
\LaTeX で用いる際には,\pLaTeXe\ (\texttt{plfonts.dtx})用のフォント選択機構の大部分を流用している.
%</ja>
-\begin{itemize}
-%<*en>
-\item Commands \cs{fontfamily}, \cs{fontseries}, and \cs{fontshape} can be used to change
- attributes of Japanese fonts.
-%</en>
-%<*ja>
-\item 和文フォントの属性を変更するには,\cs{fontfamily}, \cs{fontseries}, \cs{fontshape} を使用する.
- もちろん,それらを実際に反映させるには手動で \cs{selectfont} を実行する必要がある.
-%</ja>
%<*en>
\begin{center}\small
@@ -1314,7 +1309,7 @@ Alphabetic fonts
Japanese fonts
&\cs{kanjiencoding}&\cs{kanjifamily}&\cs{kanjiseries}&\cs{kanjishape}
&\cs{usekanji}\\
-both&---&--&\cs{fontseries}&\cs{fontshape}&---\\
+both&---&--&\cs{fontseries}&\cs{fontshape}$^*$&---\\
auto select&\cs{fontencoding}&\cs{fontfamily}&---&---&\cs{usefont}\\
\bottomrule
\end{tabular}
@@ -1324,22 +1319,42 @@ auto select&\cs{fontencoding}&\cs{fontfamily}&---&---&\cs{usefont}\\
\begin{center}\small
\begin{tabular}{llllll}
\toprule
-&\emph{エンコーディング}&\emph{ファミリ}&\emph{シリーズ}&\emph{シェープ}&\emph{選択}\\\midrule
+&\emph{エンコーディング}&\emph{ファミリ}&\emph{シリーズ}&\emph{シェイプ}&\emph{選択}\\\midrule
\emph{欧文}
&\cs{romanencoding}&\cs{romanfamily}&\cs{romanseries}&\cs{romanshape}
&\cs{useroman}\\
\emph{和文}
&\cs{kanjiencoding}&\cs{kanjifamily}&\cs{kanjiseries}&\cs{kanjishape}
&\cs{usekanji}\\
-\emph{両方}&---&--&\cs{fontseries}&\cs{fontshape}&---\\
+\emph{両方}&---&--&\cs{fontseries}&\cs{fontshape}$^*$&---\\
\emph{自動選択}&\cs{fontencoding}&\cs{fontfamily}&---&---&\cs{usefont}\\
\bottomrule
\end{tabular}
\end{center}
%</ja>
+\begin{itemize}
+%<*en>
+\item \cs{fontfamily}, \cs{fontseries}, and~\cs{fontshape} try to change
+ attributes of Japanese fonts, as well as those of alphabetic fonts.
+ Of course, \cs{selectfont} is needed to select current text fonts.
+
+ Note that \cs{fontshape} always changes current alphabetic font shape,
+ but it does \emph{not} change current Japanese font shape if
+ the target shape is unavailable for current Japanese encoding/family/series.
+ For the detail, see Subsection~\ref{ssec:nfsspat}.
+%</en>
+%<*ja>
+\item \cs{fontfamily}, \cs{fontseries}, \cs{fontshape} は欧文・和文フォント両方の属性を変更しようとする.
+ もちろん,それらを実際に反映させるには手動で \cs{selectfont} を実行する必要がある.
+
+ なお,\cs{fontshape\{<shape>\}}は常に欧文フォントのシェイプを設定するが,
+ もしも現在の和文フォントファミリ・シリーズで要求されたシェイプが利用不能だった場合には,和文フォントのシェイプは変更しない.
+ 詳細は\ref{ssec:nfsspat}節を参照すること.
+%</ja>
+
%<*en>
- \verb+\fontencoding{+<encoding>\verb+}+ changes the encoding of alphabetic fonts
+\item \verb+\fontencoding{+<encoding>\verb+}+ changes the encoding of alphabetic fonts
or Japanese fonts depending on the argument. For example,
\verb+\fontencoding{JY3}+ changes the encoding of Japanese fonts to
\texttt{JY3}, and \verb+\fontencoding{T1}+ changes the encoding of
@@ -1349,7 +1364,7 @@ auto select&\cs{fontencoding}&\cs{fontfamily}&---&---&\cs{usefont}\\
For the detail, see Subsection~\ref{ssec:nfsspat}.
%</en>
%<*ja>
- ここで,\verb+\fontencoding{+<encoding>\verb+}+ は,引数により和文側か欧文
+\item ここで,\cs{fontencoding\{<encoding>\}}は,引数により和文側か欧文
側かのどちらかのエンコーディングを変更する.例えば,
\verb+\fontencoding{JY3}+ は和文フォントのエンコーディングを
\texttt{JY3}に変更し,\verb+\fontencoding{T1}+ は欧文フォント側を
@@ -3987,7 +4002,8 @@ For example,
\def\ltj@stdgtfont{IPAGothic}
\end{lstlisting}
makes that IPA~Mincho and IPA~Gothic will be used as default Japanese fonts, instead of
-IPAex~Mincho and IPAex~Gothic.
+Harano Aji fonts.
+%IPAex~Mincho and IPAex~Gothic.
This feature is intended for classes which use special JFMs
\footnote{This is because commands has \texttt{@} in their names.}.
@@ -6476,13 +6492,75 @@ to <family>. See Subsection~\ref{ssec:fontfamilycmd} for detail.
和文,\emph{もしくは両方})を<family>に変更する.詳細は\ref{ssec:fontfamilycmd}節を参照すること.
%</ja>
+\item[\cs{fontshape}\{<shape>\}\textrm{, }\cs{fontshapeforce}\{<shape>\}]
+%<*en>
+As in \LaTeXe, this command changes current alphabetic font shape
+according to shape change rules.
+
+Traditionally, \cs{fontshape} changes also current Japanese font shape always.
+However, this leads a lot of \LaTeX\ font warning like
+\begin{verbatim}
+ Font shape `JY3/mc/m/it' undefined
+ using `JY3/mc/m/n' instead on ....
+\end{verbatim}
+when \cs{itshape} is called,
+because almost all Japanese fonts only have shape ``\texttt{n}'', and \cs{itshape} calls \cs{fontshape}.
+
+\LuaTeX-ja~20200323.0 change the behavior. Namely,
+\cs{fontshape\{<shape>\}}~and~\cs{fontshapeforce\{<shape>\}} change current Japanese font shape, only if
+the required shape (according to shape changing rules) or <shape> is avaliable in current Japanese font family/series.
+When this is not the case, an info such as
+\begin{verbatim}
+ Kanji font shape JY3/mc/m/it' undefined
+ No change on ...
+\end{verbatim}
+is issued instead of a warning.
+%</en>
+%<*ja>
+元々の\LaTeXe におけるものと同様に,このコマンドは現在の欧文フォントシェイプを
+\cs{DeclareFontShapeChangeRule}によるシェイプ更新規則によって変更する.
+
+伝統的には,\cs{fontshape}は無条件に和文フォントシェイプも変更した.しかし,例えば多くの和文フォントは
+シェイプが``\texttt{n}''しか持たないことと\cs{itshape}が\cs{fontshape}を呼び出すことから,
+\begin{verbatim}
+ Font shape `JY3/mc/m/it' undefined
+ using `JY3/mc/m/n' instead on ....
+\end{verbatim}
+といった警告をもたらしてしまっていた.
+
+一方,\LuaTeX-ja 20200323.0以降では,
+\cs{fontshape\{<shape>\}}, \cs{fontshapeforce\{<shape>\}}が和文フォントシェイプを更新するのは,
+シェイプ更新規則に基づいた値や<shape>の少なくとも一つが現在の和文フォントファミリ・シリーズで利用可能なときに限られる.
+どちらでもなく,和文フォントシェイプが変更されなかった場合には
+\begin{verbatim}
+ Kanji font shape JY3/mc/m/it' undefined
+ No change on ...
+\end{verbatim}
+というinfo(警告でなく)を出力する.
+%</ja>
+
+\item[\cs{kanjishape}\{<shape>\}\textrm{, }\cs{kanjishapeforce}\{<shape>\}]
+%<*en>
+\cs{kanjishape\{<shape>\}} changes current Japanese font shape according to shape change rules, and
+\cs{kanjishapeforce\{<shape>\}} changes current Japanese font shape to <shape>, regardless of the rules.
+Hence \cs{kanjishape\{it\}} produces a warning
+\begin{verbatim}
+ Font shape `JY3/mc/m/it' undefined
+ using `JY3/mc/m/n' instead on ....
+\end{verbatim}
+which is not produced by \cs{fontshape\{it\}}.
+%</en>
+%<*ja>
+ ...
+%</ja>
+
\begin{figure}[!tb]
\begin{LTXexample}[pos=b]
\DeclareKanjiFamily{JY3}{edm}{}
-\DeclareFontShape{JY3}{edm}{m}{n} {<-> s*KozMinPr6N-Regular:jfm=ujis;}{}
-\DeclareFontShape{JY3}{edm}{m}{fb} {<-> s*KozGoPr6N-Regular:jfm=ujis}{}
-\DeclareFontShape{JY3}{edm}{m}{fb2} {<-> s*KozGoPr6N-Medium:jfm=ujis}{}
+\DeclareFontShape{JY3}{edm}{m}{n} {<-> s*KozMinPr6N-Regular:jfm=ujis}{}
+\DeclareFontShape{JY3}{edm}{m}{fb} {<-> s*KozGoPr6N-Regular:jfm=ujis;color=003FFF}{}
+\DeclareFontShape{JY3}{edm}{m}{fb2} {<-> s*KozGoPr6N-Regular:jfm=ujis;color=FF1900}{}
\DeclareAlternateKanjiFont{JY3}{edm}{m}{n}{JY3}{edm}{m}{fb}{ "4E00-"67FF,{-2}-{-2}}
\DeclareAlternateKanjiFont{JY3}{edm}{m}{n}{JY3}{edm}{m}{fb2}{"6800-"9FFF}
{\kanjifamily{edm}\selectfont
@@ -6862,11 +6940,11 @@ will not be embedded in the output PDF file. See Subsection~\ref{ssec:psft}.
\begin{figure}[!tb]
\begin{LTXexample}[width=0.25\textwidth]
\jfontspec[
- YokoFeatures={FakeBold=3}, TateFeatures={FakeBold=6},
+ YokoFeatures={Color=FF1900}, TateFeatures={Color=003FFF},
TateFont=KozGoPr6N-Regular
]{KozMinPr6N-Regular}
\hbox{\yoko 横組のテスト}\hbox{\tate 縦組のテスト}
-\addjfontfeatures{FakeBold=0}
+\addjfontfeatures{Color=00AF00}
\hbox{\yoko 横組}\hbox{\tate 縦組}
\end{LTXexample}
%<ja>\caption{\texttt{TateFeatures} 等の使用例}
@@ -6912,9 +6990,9 @@ A demonstrarion is shown in \autoref{fig:yokotate-fontspec}.
\begin{LTXexample}[pos=b]
\jfontspec[
AltFont={
- {Range="4E00-"67FF, Font=KozGoPr6N-Medium},
- {Range="6800-"9EFF, FakeBold=4},
- {Range="3040-"306F, Font=KozGoPr6N-Regular},
+ {Range="4E00-"67FF, Font=KozGoPr6N-Regular, Color=003FFF},
+ {Range="6800-"9EFF, Color=FF1900},
+ {Range="3040-"306F, Font=KozGoPr6N-Regular, Color=35A16B},
}
]{KozMinPr6N-Regular}
日本国民は、正当に選挙された国会における代表者を通じて行動し、われらとわれらの子孫のために、
@@ -6976,7 +7054,7 @@ For example,
\begin{lstlisting}
AltFont = {
{ Font=HogeraMin-Light, BoldFont=HogeraMin-Bold,
- Range="3000-"30FF, BoldFeatures={FakeBold=1} }
+ Range="3000-"30FF, BoldFeatures={Color=FF1900} }
}
\end{lstlisting}
does \emph{not} work. Instead, one have to write
@@ -6985,7 +7063,7 @@ UprightFeatures = {
AltFont = { { Font=HogeraMin-Light, Range="3000-"30FF, } },
},
BoldFeatures = {
- AltFont = { { Font=HogeraMin-Bold, Range="3000-"30FF, FakeBold=1 } },
+ AltFont = { { Font=HogeraMin-Bold, Range="3000-"30FF, Color=FF1900 } },
}
\end{lstlisting}
@@ -7008,7 +7086,7 @@ has no effect, because a color specification is already done in
\begin{lstlisting}
AltFont = {
{ Font=HogeraMin-Light, BoldFont=HogeraMin-Bold,
- Range="3000-"30FF, BoldFeatures={FakeBold=1} }
+ Range="3000-"30FF, BoldFeatures={Color=FF1900} }
}
\end{lstlisting}
のように指定することは出来ず,
@@ -7017,7 +7095,7 @@ UprightFeatures = {
AltFont = { { Font=HogeraMin-Light, Range="3000-"30FF, } },
},
BoldFeatures = {
- AltFont = { { Font=HogeraMin-Bold, Range="3000-"30FF, FakeBold=1 } },
+ AltFont = { { Font=HogeraMin-Bold, Range="3000-"30FF, Color=FF1900 } },
}
\end{lstlisting}
のように指定しなければならない.
@@ -8060,17 +8138,15 @@ There is not rounded gothic family in Kozuka fonts.
%<*en>
Hiragino fonts (except Hiragino~Mincho~W2) are bundled with Mac OS~X 10.5 or later.
-Some editions of a Japanese word-processor ``一太郎2012'' includes Hiragino ProN fonts.
Note that fonts for gothic extra~bold (HiraKakuStd[N]-W8) only contains characters in
Adobe-Japan1-3 character collection, while others contains those in
Adobe-Japan1-5 character collection.
%</en>
%<*ja>
-ヒラギノフォントは,Mac OS~X以外にも,一太郎2012の上位エディションにもバンドルされている.
極太ゴシック体として用いるヒラギノ角ゴW8は,Adobe-Japan1-3の範囲しかカバーしていない
Std/StdNフォントであり,その他はAdobe-Japan1-5対応である.
-なお,明朝体細字として用いるヒラギノ明朝体W2はOS~Xや一太郎にはバンドルされておらず,
+なお,明朝体細字として用いるヒラギノ明朝体W2はOS~Xにはバンドルされておらず,
別途購入する必要がある.
%</ja>
\begin{center}\small
diff --git a/macros/luatex/generic/luatexja/src/addons/luatexja-preset.sty b/macros/luatex/generic/luatexja/src/addons/luatexja-preset.sty
index 050f78e915..c561df00a6 100644
--- a/macros/luatex/generic/luatexja/src/addons/luatexja-preset.sty
+++ b/macros/luatex/generic/luatexja/src/addons/luatexja-preset.sty
@@ -1,5 +1,5 @@
% luatexja-preset.sty
-\ProvidesPackage{luatexja-preset}[2020/01/26 Japanese font presets]
+\ProvidesPackage{luatexja-preset}[2020/03/19 Japanese font presets]
\RequirePackage{expl3,l3keys2e}
\RequirePackage{luatexja}
@@ -359,7 +359,7 @@
__custom = false, __office = false, __noembed = true,
}
-\keys_set:nn {luatexja-preset} { ipaex }
+\keys_set:nn {luatexja-preset} { haranoaji } %% old: ipaex
\ProcessKeysOptions { luatexja-preset }
\@ifpackageloaded{luatexja-fontspec}{
\bool_if:NT \g__ltjpreset_nfssonly_bool
diff --git a/macros/luatex/generic/luatexja/src/ltj-plain.sty b/macros/luatex/generic/luatexja/src/ltj-plain.sty
index eb78843f47..16e71e1060 100644
--- a/macros/luatex/generic/luatexja/src/ltj-plain.sty
+++ b/macros/luatex/generic/luatexja/src/ltj-plain.sty
@@ -23,8 +23,10 @@
%! ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
% LuaTeX-ja macros against plain TeX
-\ifdefined\ltj@stdmcfont\else\def\ltj@stdmcfont{IPAExMincho}\fi
-\ifdefined\ltj@stdgtfont\else\def\ltj@stdgtfont{IPAExGothic}\fi
+\ifdefined\ltj@stdmcfont\else\def\ltj@stdmcfont{file:HaranoAjiMincho-Regular.otf}\fi
+\ifdefined\ltj@stdgtfont\else\def\ltj@stdgtfont{file:HaranoAjiGothic-Medium.otf}\fi
+%\ifdefined\ltj@stdmcfont\else\def\ltj@stdmcfont{IPAExMincho}\fi
+%\ifdefined\ltj@stdgtfont\else\def\ltj@stdgtfont{IPAExGothic}\fi
\ifdefined\ltj@stdyokojfm\else\def\ltj@stdyokojfm{ujis}\fi
\ifdefined\ltj@stdtatejfm\else\def\ltj@stdtatejfm{ujisv}\fi
\newread\ltj@@cfgread
diff --git a/macros/luatex/generic/luatexja/src/luatexja.sty b/macros/luatex/generic/luatexja/src/luatexja.sty
index e3f36d1e45..0af38a01af 100644
--- a/macros/luatex/generic/luatexja/src/luatexja.sty
+++ b/macros/luatex/generic/luatexja/src/luatexja.sty
@@ -41,7 +41,7 @@
\ProcessOptions\relax
\fi %</LaTeX>
%%%% VERSION
-\def\LuaTeXjaversion{20200301.0}
+\def\LuaTeXjaversion{20200323.0}
\directlua{require('ltj-unicode-ccfix.lua')}% catcode of ideographs
diff --git a/macros/luatex/generic/luatexja/src/patches/lltjdefs.sty b/macros/luatex/generic/luatexja/src/patches/lltjdefs.sty
index 3efb01116b..29f38b367a 100644
--- a/macros/luatex/generic/luatexja/src/patches/lltjdefs.sty
+++ b/macros/luatex/generic/luatexja/src/patches/lltjdefs.sty
@@ -3,10 +3,12 @@
%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{lltjdefs}[2020/02/27 Default font settings of LuaTeX-ja]
+\ProvidesPackage{lltjdefs}[2020/03/16 Default font settings of LuaTeX-ja]
-\ifdefined\ltj@stdmcfont\else\def\ltj@stdmcfont{IPAExMincho}\fi
-\ifdefined\ltj@stdgtfont\else\def\ltj@stdgtfont{IPAExGothic}\fi
+\ifdefined\ltj@stdmcfont\else\def\ltj@stdmcfont{file:HaranoAjiMincho-Regular.otf}\fi
+\ifdefined\ltj@stdgtfont\else\def\ltj@stdgtfont{file:HaranoAjiGothic-Medium.otf}\fi
+%\ifdefined\ltj@stdmcfont\else\def\ltj@stdmcfont{IPAExMincho}\fi
+%\ifdefined\ltj@stdgtfont\else\def\ltj@stdgtfont{IPAExGothic}\fi
\ifdefined\ltj@stdyokojfm\else\def\ltj@stdyokojfm{ujis}\fi
\ifdefined\ltj@stdtatejfm\else\def\ltj@stdtatejfm{ujisv}\fi
\InputIfFileExists{luatexja.cfg}{%
diff --git a/macros/luatex/generic/luatexja/src/patches/lltjfont.sty b/macros/luatex/generic/luatexja/src/patches/lltjfont.sty
index cfa8e2343a..69ab7441c2 100644
--- a/macros/luatex/generic/luatexja/src/patches/lltjfont.sty
+++ b/macros/luatex/generic/luatexja/src/patches/lltjfont.sty
@@ -3,7 +3,7 @@
%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{lltjfont}[2020/03/01 Patch to NFSS2 for LuaTeX-ja]
+\ProvidesPackage{lltjfont}[2020/03/20 Patch to NFSS2 for LuaTeX-ja]
%% patching \DeclareTextComposite
\def\ltj@chardef@text@cmd#1{%
@@ -571,6 +571,8 @@
\newcount\ltj@@latex@plv \ltj@@latex@plv=-1
\ifdefined\@rmfamilyhook
%%%% LaTeX 2020-02-02
+\newif\if@shape@roman@kanji
+%%%%%% 2020-02-02 patchlevel detection
\ifx\@forced@seriestrue\@undefined % 2020-02-02 pl0--2
\@latex@error
{Please update LaTeX2e!^^J\space\space
@@ -580,12 +582,11 @@
\ltj@@latex@plv=300
\unless\ifx\series@maybe@drop@one@m@x\@undefined % pl5 + develop
\ltj@@latex@plv=501
- \else
- \unless\ifx\series@maybe@drop@one@m\@undefined % patch level 5
- \ltj@@latex@plv=500
- \fi
- \fi
+ \else\unless\ifx\series@maybe@drop@one@m\@undefined % patch level 5
+ \ltj@@latex@plv=500
+ \fi\fi
\fi
+%%%%%%
\def\merge@kanji@series#1{%
\expandafter\expandafter\expandafter
@@ -595,17 +596,17 @@
\@nil
}
-\ifnum\ltj@@latex@plv>500 % pl5 + develop
+\ifnum\ltj@@latex@plv>500 % !!! pl5 + develop
\def\set@target@series@kanji#1{%
\edef\k@series{#1}%
\series@maybe@drop@one@m\k@series\k@series
}
-\else\ifnum\ltj@@latex@plv>300 % pl5
+\else\ifnum\ltj@@latex@plv>300 % !!! pl5
\def\set@target@series@kanji#1{%
\edef\k@series{#1}%
\expandafter\series@maybe@drop@one@m\expandafter{\k@series}\k@series
}
-\else % pl 3, 4
+\else % !!! pl 3, 4
\def\set@target@series@kanji#1{%
\edef\k@series{#1}%
\edef\k@series{\expandafter\series@drop@one@m\k@series mm\series@drop@one@m}%
@@ -643,7 +644,11 @@
\def\merge@kanji@shape@#1#2#3\@nil{%
\def\reserved@a{#3}%
\ifx\reserved@a\@empty
- \edef\k@shape{#2}%
+ \if@shape@roman@kanji
+ \set@safe@kanji@shape{#2}{}%
+ \else
+ \edef\k@shape{#2}%
+ \fi
\else
\begingroup\let\f@encoding\k@encoding\let\f@family\k@family
\maybe@load@fontshape\endgroup
@@ -655,13 +660,31 @@
\edef\k@shape{#2}%
{\let\curr@fontshape\curr@kfontshape\@font@shape@subst@warning}%
\else
- \edef\k@shape{#3}%
- {\let\curr@fontshape\curr@kfontshape\@font@shape@subst@warning}%
+ \if@shape@roman@kanji
+ \set@safe@kanji@shape{#3}%
+ {{\let\curr@fontshape\curr@kfontshape\@font@shape@subst@warning}}%
+ \else
+ \edef\k@shape{#3}%
+ {\let\curr@fontshape\curr@kfontshape\@font@shape@subst@warning}%
+ \fi
\fi
\fi
\fi
}
-\ifnum\ltj@@latex@plv=300 % pl3, 4
+\def\set@safe@kanji@shape#1#2{%
+ \edef\reserved@b{\k@encoding /\k@family /\k@series/#1}%
+ \ifcsname \reserved@b\endcsname
+ \edef\k@shape{#1}%
+ #2%
+ \else
+ \@kanji@shape@nochange@info{\reserved@b}%
+ \fi
+}
+\def\@kanji@shape@nochange@info#1{%
+ \@font@info{Kanji font shape `#1' undefined\MessageBreak
+ No change}%
+}
+\ifnum\ltj@@latex@plv=300 % !!! pl3, 4
\DeclareRobustCommand\romanseries[1]{\merge@font@series{#1}}
\DeclareRobustCommand\kanjiseries[1]{\merge@kanji@series{#1}}
\DeclareRobustCommand\fontseries[1]{%
@@ -670,7 +693,7 @@
\DeclareRobustCommand\kanjiseriesforce[1]{\edef\k@series{#1}}
\DeclareRobustCommand\fontseriesforce[1]{%
\edef\f@series{#1}\edef\k@series{#1}}
-\else % pl 5
+\else % !!! pl 5
\DeclareRobustCommand\romanseries[1]{\@forced@seriesfalse\merge@font@series{#1}}
\DeclareRobustCommand\kanjiseries[1]{\@forced@seriesfalse\merge@kanji@series{#1}}
\DeclareRobustCommand\fontseries[1]{%
@@ -683,10 +706,13 @@
\DeclareRobustCommand\romanshape[1]{\merge@font@shape{#1}}
\DeclareRobustCommand\kanjishape[1]{\merge@kanji@shape{#1}}
\DeclareRobustCommand\fontshape[1]{%
- \merge@font@shape{#1}\merge@kanji@shape{#1}}
+ \@shape@roman@kanjitrue
+ \merge@font@shape{#1}\merge@kanji@shape{#1}%
+ \@shape@roman@kanjifalse
+}
\DeclareRobustCommand\romanshapeforce[1]{\edef\f@shape{#1}}
\DeclareRobustCommand\kanjishapeforce[1]{\edef\k@shape{#1}}
-\DeclareRobustCommand\fontshapeforce[1]{\kanjishapeforce{#1}\romanshapeforce{#1}}
+\DeclareRobustCommand\fontshapeforce[1]{\set@safe@kanji@shape{#1}{}\romanshapeforce{#1}}
\DeclareRobustCommand\usekanji[4]{%
\kanjiencoding{#1}\edef\k@family{#2}\edef\k@series{#3}\edef\k@shape{#4}%
\selectfont\ignorespaces}
@@ -718,8 +744,7 @@
\fi}
\DeclareRobustCommand\normalfont{%
\useroman\encodingdefault\familydefault\seriesdefault\shapedefault
- \usekanji\kanjiencodingdefault\kanjifamilydefault\kanjiseriesdefault\kanjishapedefault
- \ignorespaces}
+ \usekanji\kanjiencodingdefault\kanjifamilydefault\kanjiseriesdefault\kanjishapedefault}
\let\reset@font\normalfont
\ifdefined\@rmfamilyhook
@@ -743,36 +768,49 @@
\patchcmd\update@series@target@value@kanji{\f@series}{\k@series}{}{}
\patchcmd\update@series@target@value@kanji{\f@series}{\k@series}{}{}
\def\@meta@family@list@kanji{\@elt{mc}\@elt{gt}\@elt{jtt}}
-\DeclareRobustCommand\bfseries{%
- \not@math@alphabet\bfseries\mathbf
- \expand@font@defaults
- \ifx\f@family\rmdef@ult \romanseries\bfseries@rm
- \else\ifx\f@family\sfdef@ult \romanseries\bfseries@sf
- \else\ifx\f@family\ttdef@ult \romanseries\bfseries@tt
- \else \romanseries\bfdefault
- \fi\fi\fi
+
+\expandafter\patchcmd\csname bfseries \endcsname{%
+ \let\bfseries@rm\bfdef@ult
+ \let\bfseries@sf\bfdef@ult
+ \let\bfseries@tt\bfdef@ult
+}{%
+ \let\bfseries@rm\bfdef@ult
+ \let\bfseries@sf\bfdef@ult
+ \let\bfseries@tt\bfdef@ult
+ \let\bfseries@mc\bfdef@ult
+ \let\bfseries@gt\bfdef@ult
+ \let\bfseries@jtt\bfdef@ult
+}{}{}
+\expandafter\patchcmd\csname mdseries \endcsname{%
+ \let\mdseries@rm\mddef@ult
+ \let\mdseries@sf\mddef@ult
+ \let\mdseries@tt\mddef@ult
+}{%
+ \let\mdseries@rm\mddef@ult
+ \let\mdseries@sf\mddef@ult
+ \let\mdseries@tt\mddef@ult
+ \let\mdseries@mc\mddef@ult
+ \let\mdseries@gt\mddef@ult
+ \let\mdseries@jtt\mddef@ult
+}{}{}
+\expandafter\patchcmd\csname bfseries \endcsname{\selectfont}%
+{%
\ifx\k@family\mcdef@ult \kanjiseries\bfseries@mc
\else\ifx\k@family\gtdef@ult \kanjiseries\bfseries@gt
\else\ifx\k@family\jttdef@ult\kanjiseries\bfseries@jtt
\else \kanjiseries\bfdefault
\fi\fi\fi
- \selectfont
-}
-\DeclareRobustCommand\mdseries{%
- \not@math@alphabet\mdseries\relax
- \expand@font@defaults
- \ifx\f@family\rmdef@ult \romanseries\mdseries@rm
- \else\ifx\f@family\sfdef@ult \romanseries\mdseries@sf
- \else\ifx\f@family\ttdef@ult \romanseries\mdseries@tt
- \else \romanseries\mddefault
- \fi\fi\fi
+ \selectfont
+}{}{}
+\expandafter\patchcmd\csname mdseries \endcsname{\selectfont}%
+{%
\ifx\k@family\mcdef@ult \kanjiseries\mdseries@mc
\else\ifx\k@family\gtdef@ult \kanjiseries\mdseries@gt
\else\ifx\k@family\jttdef@ult\kanjiseries\mdseries@jtt
\else \kanjiseries\mddefault
\fi\fi\fi
\selectfont
-}
+}{}{}
\appto\expand@font@defaults{%
\edef\mcdef@ult{\mcdefault}%
\edef\gtdef@ult{\gtdefault}%
diff --git a/macros/luatex/latex/arabluatex/arabluatex.dtx b/macros/luatex/latex/arabluatex/arabluatex.dtx
index 4d3fb48e01..735c95b3c7 100644
--- a/macros/luatex/latex/arabluatex/arabluatex.dtx
+++ b/macros/luatex/latex/arabluatex/arabluatex.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
% ArabLuaTeX -- Processing ArabTeX notation under LuaLaTeX
-% Copyright (C) 2016--2020 Robert Alesssi
+% Copyright (C) 2016--2020 Robert Alessi
%
% Please send error reports and suggestions for improvements to Robert
% Alessi <alessi@robertalessi.net>
@@ -27,7 +27,7 @@
%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package>\ProvidesPackage{arabluatex}
%<*package>
- [2020/03/15 v1.19 ArabTeX for LuaLaTeX]
+ [2020/03/23 v1.20 ArabTeX for LuaLaTeX]
%</package>
%
%<*driver>
@@ -166,7 +166,7 @@
\babelfont{sf}{NewComputerModern Sans}
\babelfont{tt}{NewComputerModern Mono}
\usepackage{metalogox}
-\usepackage{arabluatex}[2020/03/15]
+\usepackage{arabluatex}[2020/03/23]
\SetArbUp{\textsuperscript{\thinspace#1}} % Old Standard needs this
\usepackage[nopar]{quran}
\usepackage[noindex]{nameauth}
@@ -269,7 +269,7 @@
%</driver>
% \fi
%
-% \CheckSum{1014}
+% \CheckSum{1059}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -2187,7 +2187,7 @@
% environment must end with |\\|.
%
% \DescribeEnv{arabverse} The |arabverse| environment may take up to
-% six optional \enquote*{named arguments} each of which is set using
+% eight optional \enquote*{named arguments} each of which is set using
% the syntax \meta{key}$=$\meta{value}, like so:---%
% \iffalse
%<*example>
@@ -2369,6 +2369,20 @@
% warping may be even more perceptible in Roman than in Arabic
% characters.
%
+% \DescribeMacro{\StretchBayt} \cs{StretchBayt}\verb+[true|false]+
+% \hfill\tcboxverb{Default: true}\\
+% \NEWfeature{v1.20} \cs{StretchBayt} takes one optional argument,
+% either |true| or |false| and can be used to remove the stretching
+% form lines of Arabic poetry. As a side effect, there will be more
+% space between words, but this can be compensated by inserting double
+% hyphens between letters (on this technique, see
+% \vref{sec:tatwil}). Should it be desired to extend further the
+% strokes, four hyphens may be inserted (|----|), viz. a multiple of
+% two. \cs{StretchBayt} may be used at any point of the document, even
+% between two subsequent lines of poetry. Note that
+% \cs{StretchBayt}|[false]| may require to carefuly adjust the width
+% of the hemistichs to avoid overlapping.
+%
% \paragraph{Footnotes}
% Footnotes are not set by default inside the \cs{bayt} command, but
% there are two easy ways to have them printed.
@@ -2429,13 +2443,16 @@
\bayt{wuqUfaN bi-hA .sa.hbI `alayya ma.tiyya-hum}{yaqUlUna
lA tahlik 'asaN_A wa-ta^gammali}\\
\bayt{wa-'inna ^sifA'I `abraTuN muharAqaTuN}{fa-hal `inda
- rasmiN dAsiriN min mu`awwali}\\
+ rasmiN dArisiN min mu`awwali}\\
\end{linenumbers*}
\end{arabverse}
\end{code}
% \iffalse
%</example>
% \fi%
+%
+% \medskip
+% \noindent\textbf{\cs{StretchBayt}|[true]| (Default)}:---
% \begin{arab}[fullvoc]
% qAla imru'u 'l-\uc{q}aysi fI mu`allaqati-hi:
% \end{arab}
@@ -2451,12 +2468,11 @@
% \bayt{tar_A ba`ara 'l-'ar'Ami fI `ara.sAti-hA}{wa-qI`Ani-hA
% ka-'anna-hu .habbu fulfuli}\\
% \bayt{ka-'annI .gadATa 'l-bayni yawma ta.hammalUA}{lad_A
-% samurAti
-% 'l-.hayyi nAqifu .han.zali}\\
+% samurAti 'l-.hayyi nAqifu .han.zali}\\
% \bayt{wuqUfaN bi-hA .sa.hbI `alayya ma.tiyya-hum}{yaqUlUna lA
% tahlik 'asaN_A wa-ta^gammali}\\
% \bayt{wa-'inna ^sifA'I `abraTuN muharAqaTuN}{fa-hal `inda rasmiN
-% dAsiriN min mu`awwali}\\
+% dArisiN min mu`awwali}\\
% \end{linenumbers*}
% \end{arabverse}
%
@@ -2477,14 +2493,71 @@
% \bayt{tar_A ba`ara 'l-'ar'Ami fI `ara.sAti-hA}{wa-qI`Ani-hA
% ka-'anna-hu .habbu fulfuli}\\
% \bayt{ka-'annI .gadATa 'l-bayni yawma ta.hammalUA}{lad_A
-% samurAti
-% 'l-.hayyi nAqifu .han.zali}\\
+% samurAti 'l-.hayyi nAqifu .han.zali}\\
+% \bayt{wuqUfaN bi-hA .sa.hbI `alayya ma.tiyya-hum}{yaqUlUna lA
+% tahlik 'asaN_A wa-ta^gammali}\\
+% \bayt{wa-'inna ^sifA'I `abraTuN muharAqaTuN}{fa-hal `inda rasmiN
+% dArisiN min mu`awwali}\\
+% \end{linenumbers*}
+% \end{arabverse}
+%
+% \medskip
+% \noindent\textbf{\cs{StretchBayt}|[false]|}:---
+% \StretchBayt[false]\\
+% In what follows, |width| has been set to |0.3\linewidth| and double
+% hyphens have been inserted between some letters to prolong their
+% horizontal strokes.
+% \begin{arab}[fullvoc]
+% qAla imru'u 'l-\uc{q}aysi fI mu`allaqati-hi:
+% \end{arab}
+%
+% \begin{arabverse}[mode=fullvoc, metre={(al-.darbu 'l-_tAnI mina
+% 'l-`arU.di 'l-'_Ul_A mina 'l-.tawIli)}, width=.3\linewidth]
+% \SetArbDflt*
+% \begin{linenumbers*}
+% \bayt{qifA nabki min _dikr_A .habIbiN wa-manzili}{bi-saq.ti
+% 'l-liw_A bayna \uc{'l-d}a_hUli fa-\uc{.h}awmali}\\
+% \bayt{fa-\uc{t}U.di.ha fa-'l-\uc{m}iqrATi lam ya`--fu
+% rasmu---hA}{limA nasa^gat-hA mi--n ^gan----UbiN wa-^sam'ali}\\
+% \bayt{ta--r_A ba--`ara 'l-'ar'Ami fI `ara.sAti-hA}{wa-qI--`Ani-hA
+% ka-'anna---hu .ha----bbu fu--{l}--fu----li}\\
+% \bayt{ka-'annI .ga--dATa 'l-bay--ni ya--wma ta.hammalUA}{lad_A
+% samurAti 'l-.hayyi nAqifu .han.zali}\\
+% \bayt{wuq--UfaN bi-hA .sa.hbI `a--layya ma--.tiyya---hu--m}
+% {ya--q--Ul--Una lA tahli--k 'asaN_A wa-ta^gamma----li}\\
+% \bayt{wa-'inna ^si----f----A'I `a--{b}----raTuN muharAqa----TuN}
+% {fa---ha--l `inda rasmiN dArisiN min mu`awwali}\\
+% \end{linenumbers*}
+% \end{arabverse}
+%
+% \medskip
+%
+% In what follows, |width| has been set to |0.375\linewidth| and
+% |\scriptsize| has been used so as to avoid overlapping.
+% \begin{arab}[trans]
+% qAla imru'u 'l-\uc{q}aysi fI mu`allaqati-hi:
+% \end{arab}
+%
+% \begin{arabverse}[mode=trans, metre={(al-.darbu 'l-_tAnI mina
+% 'l-`arU.di 'l-'_Ul_A mina 'l-.tawIli)}, width=.375\linewidth]
+% \SetArbDflt*
+% \scriptsize
+% \begin{linenumbers*}
+% \bayt{qifA nabki min _dikr_A .habIbiN wa-manzili}{bi-saq.ti
+% 'l-liw_A bayna \uc{'l-d}a_hUli fa-\uc{.h}awmali}\\
+% \bayt{fa-\uc{t}U.di.ha fa-'l-\uc{m}iqrATi lam ya`fu
+% rasmu-hA}{limA nasa^gat-hA min ^ganUbiN wa-^sam'ali}\\
+% \bayt{tar_A ba`ara 'l-'ar'Ami fI `ara.sAti-hA}{wa-qI`Ani-hA
+% ka-'anna-hu .habbu fulfuli}\\
+% \bayt{ka-'annI .gadATa 'l-bayni yawma ta.hammalUA}{lad_A
+% samurAti 'l-.hayyi nAqifu .han.zali}\\
% \bayt{wuqUfaN bi-hA .sa.hbI `alayya ma.tiyya-hum}{yaqUlUna lA
% tahlik 'asaN_A wa-ta^gammali}\\
% \bayt{wa-'inna ^sifA'I `abraTuN muharAqaTuN}{fa-hal `inda rasmiN
-% dAsiriN min mu`awwali}\\
+% dArisiN min mu`awwali}\\
% \end{linenumbers*}
% \end{arabverse}
+% \StretchBayt[true]
%
% \section{Special applications}
% \label{sec:special-applications}
@@ -4883,6 +4956,14 @@
% \arb[trans]{tadwIr}. In some of these cases, the hemistichs may be
% connected by a prominent horizontal flexible stroke which is drawn
% by the \cs{al@verse@stroke} command.
+% \begin{macro}{\StretchBayt}
+% \changes{v1.20}{2020/03/23}{Optionally removes stretching from lines
+% of poetry} \cs{StretchBayt}\oarg{true\textbar false} Allows to
+% remove stretching and undesirable warping effect from Arabic lines of
+% poetry. This command accepts one fixed optional argument, either
+% |true| or |false|, and may be used either in the preamble or at any
+% point of the document. By default, it is set to |true|.
+% \end{macro}
% \begin{macro}{\SetHemistichDelim}
% \changes{v1.6}{2016/12/17}{New \cs{SetHemistichDelim} command for
% changing the default delimiter between hemistichs} A hemistich
@@ -4892,6 +4973,21 @@
% point of the document to change this default setting.
% \end{macro}
% \begin{macrocode}
+\newif\ifal@warp@bayt
+\al@warp@bayttrue
+\NewDocumentCommand{\StretchBayt}{O{true}}{
+ \edef\oarg@true{true}
+ \edef\oarg@false{false}
+ \edef\@tempa{#1}
+ \ifx\@tempa\oarg@true\al@warp@bayttrue
+ \else
+ \ifx\@tempa\oarg@false\al@warp@baytfalse
+ \else
+ \PackageError{arabluatex}{\string\StretchBayt\space must be
+ either 'true' or 'false'}{}
+ \fi
+ \fi
+}
\NewDocumentCommand{\arb@utf}{m}{%
\ifal@verse@utf\txarb{#1}\else\arb{#1}\fi}
\def\al@hemistich@delim{*}
@@ -4901,7 +4997,11 @@
\IfBooleanTF{#1}{\relax}{\relax}%
\ifdefined\savenotes\savenotes\else\fi%
\edef\al@tatweel{--}%
- \adjustbox{width=\al@bayt@width, height=\Height}{\arb@utf{#2}}%
+ \ifal@warp@bayt%
+ \adjustbox{width=\al@bayt@width, height=\Height}{\arb@utf{#2}}%
+ \else%
+ \makebox[\al@bayt@width][s]{\arb@utf{#2}}%
+ \fi%
\IfNoValueTF{#3}{%
\ifal@verse@delim\makebox[\al@gutter@width][c]{\al@hemistich@delim}%
\else%
@@ -4917,11 +5017,19 @@
\fi%
\else%
\ifx\al@mode\al@mode@trans%
- \adjustbox{width=\al@gutter@width, height=\Height}{\arb@utf{#3}}%
+ \ifal@warp@bayt%
+ \adjustbox{width=\al@gutter@width, height=\Height}{\arb@utf{#3}}%
+ \else%
+ \makebox[\al@gutter@width][s]{\arb@utf{#3}}%
+ \fi%
\else%
\makebox[\al@gutter@width][s]{\arb@utf{#3}}%
\fi\fi}%
- \adjustbox{width=\al@bayt@width, height=\Height}{\arb@utf{#4}}%
+ \ifal@warp@bayt%
+ \adjustbox{width=\al@bayt@width, height=\Height}{\arb@utf{#4}}%
+ \else%
+ \makebox[\al@bayt@width][s]{\arb@utf{#4}}%
+ \fi%
\ifdefined\spewnotes\spewnotes\else\fi%
}
% \end{macrocode}
diff --git a/macros/luatex/latex/arabluatex/arabluatex.pdf b/macros/luatex/latex/arabluatex/arabluatex.pdf
index dd09d3127e..23b2fb592b 100644
--- a/macros/luatex/latex/arabluatex/arabluatex.pdf
+++ b/macros/luatex/latex/arabluatex/arabluatex.pdf
Binary files differ
diff --git a/macros/luatex/latex/arabluatex/samples/al-Jahiz.pdf b/macros/luatex/latex/arabluatex/samples/al-Jahiz.pdf
index 10e5ab3ca8..c65048ef48 100644
--- a/macros/luatex/latex/arabluatex/samples/al-Jahiz.pdf
+++ b/macros/luatex/latex/arabluatex/samples/al-Jahiz.pdf
Binary files differ
diff --git a/macros/luatex/latex/arabluatex/samples/exporting.pdf b/macros/luatex/latex/arabluatex/samples/exporting.pdf
index f1072cae6f..1d7805183a 100644
--- a/macros/luatex/latex/arabluatex/samples/exporting.pdf
+++ b/macros/luatex/latex/arabluatex/samples/exporting.pdf
Binary files differ
diff --git a/macros/luatex/latex/arabluatex/samples/template-01.pdf b/macros/luatex/latex/arabluatex/samples/template-01.pdf
index e964923f32..e039afce9b 100644
--- a/macros/luatex/latex/arabluatex/samples/template-01.pdf
+++ b/macros/luatex/latex/arabluatex/samples/template-01.pdf
Binary files differ