OSDN Git Service

typo in luatexja.dtx
[luatex-ja/luatexja.git] / doc / luatexja.dtx
index 617b84a..03a6df0 100644 (file)
@@ -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
 %%%%%%%% fonts
 \usepackage{luatexja-otf}
 \usepackage[no-math]{fontspec}
-\setmainfont[Ligatures=TeX]{Linux Libertine O}
+\setmainfont[Ligatures=TeX,RawFeature=-notdef]{Linux Libertine O}
 \setmonofont[Scale=MatchLowercase, ItalicFont=lmmono10-italic.otf,
-  BoldFont=lmmonolt10-bold.otf, BoldItalicFont=lmmonolt10-boldoblique.otf
+  BoldFont=lmmonolt10-bold.otf, BoldItalicFont=lmmonolt10-boldoblique.otf,
+  RawFeature=-notdef
 ]{lmmono10-regular.otf}
-\setsansfont[Scale=MatchLowercase,Ligatures=TeX]{Linux Biolinum O}
+\setsansfont[Scale=MatchLowercase,Ligatures=TeX,RawFeature=-notdef]{Linux Biolinum O}
 \usepackage[match]{luatexja-fontspec}
 \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>
     {\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>
-
+%<en>\long\def\fakefn#1#2{\par\noindent{\footnotesize\hbox to1.8em{\hss#1}#2\par}}
+%<*ja>
+\long\def\fakefn#1#2{%
+  \par{\footnotesize\advance\leftskip 3\zw\parindent1\zw\noindent
+  \llap{#1\hskip.3\zw}#2\par}}
+%</ja>
 %%%%%%%% listings
 
 %%%%%%%% IVS
 \def\cs#1{\texttt{\upshape
   \texorpdfstring{\textbackslash\hbox{\ltjsetparameter{autoxspacing=false}#1}}{\textbackslash#1}}}
 \ltjsetparameter{alxspmode={`\\,allow}}
+\def\text@#1{%
+  \ifnum\mathstyle<\scriptstyle
+       \mbox{#1}
+  \else\ifnum\mathstyle<\scriptscriptstyle
+       \mbox{\let\f@size\sf@size\selectfont#1}
+  \else
+       \mbox{\let\f@size\ssf@size\selectfont#1}
+  \fi\fi
+}
 %%%%%%%%
 \makeatother
 %%%%%%%%
   width:\hfill\ #2\cr height:\hfill\ #3\cr depth:\hfill\ #4\cr
   }}}}}\,}
 
+\makeatletter
 \def\myghost{\ifmmode\else\ltjalchar"200C \fi}
-\protected\def\Param#1{\myghost\hyperlink{fld:#1}{\underline{\smash{\textsf{#1}}}}\myghost} % parameter name
+\def\Param#1{\texorpdfstring{\@Param{#1}}{#1}} % parameter name
+\protected\def\@Param#1{\myghost\hyperlink{fld:#1}{\underline{\smash{\textsf{#1}}}}\myghost}
 \protected\def\DParam#1{\myghost\hypertarget{fld:#1}{\underline{\smash{\textsf{#1}}}}\myghost} % parameter name (definition)
-\protected\def\Pkg#1{\textsf{#1}} % packages/classes
+\def\Pkg#1{\texorpdfstring{\textsf{#1}}{#1}} % packages/classes
 \ltjsetparameter{alxspmode={"200C,allow}}
 
 \begin{document}
@@ -603,7 +620,7 @@ and \emph{Japanese fonts} for fonts used in \textbf{JAchar}.
 %<ja>本プロジェクトはOSDNのサービスを用いて運営されている.
 
 %<en>\paragraph{Members}\
-%<ja>\paragraph{開発メンバー}\
+%<ja>\clearpage\paragraph{開発メンバー}\
 
 %<*en>
 \begin{multienumerate}
@@ -624,7 +641,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}
@@ -633,18 +650,18 @@ 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 \LuaTeX\ beta-0.85.0 (or later)
-\item \Pkg{luaotfload} v2.6 (or later)
+\item \LuaTeX\ 1.0.0 (or later)
+\item recent \Pkg{luaotfload} (v2.98 or later recommended)
 \item \Pkg{adobemapping} (Adobe cmap and pdfmapping files)
 \item \Pkg{etoolbox}, \Pkg{everysel} (if you want to use \LuaTeX-ja with \LaTeXe)
 \item \Pkg{ltxcmds}, \Pkg{pdftexcmds}, \Pkg{filehook}, \Pkg{atbegshi}
-\item \Pkg{fontspec} v2.4 (or later)
+\item \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/})}
 \end{itemize}
-%<en>In summary, \LuaTeX-ja version 20160404.0 (or~later) no longer supports \TeX~Live~2015.
+%<en>In summary, \LuaTeX-ja version 20180825.0 (or~later) no longer supports \TeX~Live~2016.
 %<*ja>
-要約すると,バージョン20160404.0以降の\LuaTeX-jaは\TeX~Live~2015以前では動作しない\footnote{%
+要約すると,バージョン20180825.0以降の\LuaTeX-jaは\TeX~Live~2016以前では動作しない\footnote{%
   もっとも,自分で\LuaTeX のバイナリをSubversionリポジトリからビルドしていれば話は別である.
 }.
 %</ja>
@@ -672,21 +689,6 @@ IPAex fonts are also available in these distributions.
 W32\TeX においてはIPAexフォントは \texttt{luatexja.tar.xz} 内にある.
 %</ja>
 
-% %<*ja>
-% 例えば\TeX~Live~2015を利用しているなら,\LuaTeX-jaは\TeX~Live manager (\texttt{tlmgr})を
-% 使ってインストールすることができる.
-% \begin{lstlisting}
-% $ tlmgr install luatexja
-% \end{lstlisting}
-% %</ja>
-% %<*en>
-% If you are using \TeX~Live~2015, you can install \LuaTeX-ja
-% from \TeX~Live manager (\texttt{tlmgr}):
-% \begin{lstlisting}
-% $ tlmgr install luatexja
-% \end{lstlisting}
-% %</en>
-
 %<en>\paragraph{Manual installation}
 %<ja>\paragraph{手動インストール方法}
 
@@ -812,25 +814,28 @@ For changes from \pTeX, see Subsection~\ref{ssec:chgptex}.
 %</ja>
 %<*en>
 \item \LuaTeX-ja is very slower than \pTeX.
-  Generally speaking, LuaJIT\TeX\ processes \LuaTeX-ja
-  about 30\% faster than \LuaTeX, but not always%
-  \footnote{%
-    LuaJIT has the 1\,GB~(or~2\,GB) memory limitation. So typesetting a large source by LuaJIT\TeX\ 
-    may cause an ``out of memory'' error.
-  }.
+  % Generally speaking, LuaJIT\TeX\ processes \LuaTeX-ja
+  % about 30\% faster than \LuaTeX, but not always%
+  % \footnote{%
+  %   LuaJIT has several limitations such as 1\,GB~(or~2\,GB) memory limitation.
+  %    So typesetting a large source by LuaJIT\TeX may cause an ``out of memory'' error,
+  %    or failure of loading/saving font cache of \Pkg{luaotfload}.
+  % }.
 %</en>
 %<*ja>
 \item \LuaTeX-jaは動作が\pTeX に比べて非常に遅い.
 コードを調整して徐々に速くしているが,まだ満足できる速度ではない.
-LuaJIT\TeX を用いると\LuaTeX のだいたい1.3倍の速度で動くようであるが,
-IPA mj明朝などの大きいフォントを用いた場合には\LuaTeX よりも遅くなることもある
-  \footnote{%
-    LuaJITは1\,GB(あるいは2\,GB)のメモリ制限があることが知られている.そのため,
-    大きいソースファイルをLuaJIT\TeX でタイプセットするとLuaの側で``out of memory''エラーが発生してしまう.
-    本ドキュメントのように,「各ページごとにLuaで使っているメモリ容量をチェックし,
-    必要なら\texttt{collectgarbage("collect")}でガベージコレクタを実行」すると
-    状況が多少改善されるかもしれない.
-  }.
+% LuaJIT\TeX を用いると\LuaTeX のだいたい1.3倍の速度で動くようであるが,
+% IPA mj明朝などの大きいフォントを用いた場合には\LuaTeX よりも遅くなることもある
+%   \footnote{%
+%     LuaJITは1\,GB(あるいは2\,GB)のメモリ制限など,いくつかの制限事項があることが知られている.そのため,
+%     大きいソースファイルをLuaJIT\TeX でタイプセットするとLuaの側で``out of memory''エラーが発生してしまう.
+%     本ドキュメントのように,「各ページごとにLuaで使っているメモリ容量をチェックし,
+%     必要なら\texttt{collectgarbage("collect")}でガベージコレクタを実行」すると
+%     状況が多少改善されるかもしれない.
+%      また,LuaJIT\TeX でIPA mj明朝などの「大きい」フォントを利用した場合はフォントキャッシュの保存に失敗し,
+%      毎回フォントを読み込まなければならず結果的に時間がかかることがある.
+%   }.
 %</ja>
 
 \item%
@@ -888,7 +893,7 @@ and finally delete the temporary directory.
 %<*en>
 \item The following 12~Japanese fonts are preloaded:
 \begin{center}\small
-\begin{tabular}{cccccc}
+\begin{tabular}{llllll}
 \toprule
 \textbf{direction}&
 \textbf{classification}&\textbf{font name}&\bfseries ``10\,pt''&\bfseries ``7\,pt''&\bfseries ``5\,pt''\\\midrule
@@ -906,28 +911,30 @@ and finally delete the temporary directory.
 %<*ja>
 \item 以下の12個の和文フォントが定義される:
 \begin{center}\small
-\begin{tabular}{cccccc}
+\begin{tabular}{llllll}
 \toprule
 \emph{組方向}&\emph{字体}&\emph{フォント名}&\bfseries``10\,pt''&\bfseries``7\,pt''&\bfseries``5\,pt''\\\midrule
-\smash{\raisebox{-1ex}{横組}}&
+\smash{\raisebox{-0.7\zh}{横組}}&
 明朝体&IPAex明朝&\cs{tenmin}&\cs{sevenmin}&\cs{fivemin}\\
-&ゴシック体&IPAexゴシック&\cs{tengt} &\cs{sevengt} &\cs{fivegt}\\
+&\textgt{ゴシック体}&IPAexゴシック&\cs{tengt} &\cs{sevengt} &\cs{fivegt}\\
 \midrule
-\smash{\raisebox{-1ex}{縦組}}&
+\smash{\raisebox{-0.7\zh}{縦組}}&
 明朝体&IPAex明朝&\cs{tentmin}&\cs{seventmin}&\cs{fivetmin}\\
-&ゴシック体&IPAexゴシック&\cs{tentgt} &\cs{seventgt} &\cs{fivetgt}\\
+&\textgt{ゴシック体}&IPAexゴシック&\cs{tentgt} &\cs{seventgt} &\cs{fivetgt}\\
 \bottomrule
 \end{tabular}
 \end{center}
 %</ja>
 \begin{itemize}
 %<*en>
-\item With \texttt{luatexja.cfg}, one can use other fonts
-as ``default'' Japanese fonts (Subsection~\ref{ssec:cfg}).
+\item The ``default'' Japanese fonts (and~JFMs for them) can be 
+  modified by defining \cs{ltj@stdmcfont} etc.\ \emph{before}
+  one inputs \texttt{luatexja.sty} (Subsection~\ref{ssec:cfg}).
 %</en>
 %<*ja>
-\item \texttt{luatexja.cfg} を用いることによって,標準和文フォントを
-IPAexフォントから別のフォントに置き換えることができる.\ref{ssec:cfg}節を参照.
+\item 標準和文フォントやJFMをIPAexフォントから別のものに置き換えるには,
+  \cs{ltj@stdmcfont}等を\texttt{luatexja.sty}読み込み\emph{前}に定義すればよい.
+  \ref{ssec:cfg}節を参照.
 %</ja>
 
 %<*en>
@@ -975,11 +982,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}に相当する最低限の設定が
\81ªã\81\95ã\82\8cã\82\8bï¼\9a
\81ªã\81\95ã\82\8cã\82\8bï¼\8e
 %</ja>
 
 \begin{itemize}
@@ -1008,7 +1015,7 @@ plfonts.dtx} and \texttt{pldefs.ltx}):
 \item
 By default, the following fonts are used for these two families.
 \begin{center}\small
-\begin{tabular}{ccccc}
+\begin{tabular}{lllll}
 \toprule
 \textbf{classification}&\textbf{family}&\cs{mdseries}&\cs{bfseries}&\textbf{scale}\\\midrule
 \emph{mincho} (明朝体)&\tt mc&IPAex Mincho&IPAex Gothic&0.962216\\
@@ -1016,14 +1023,14 @@ By default, the following fonts are used for these two families.
 \bottomrule
 \end{tabular}
 \end{center}
-Note that the bold series 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}.
+\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>
 %<*ja>
 \item \pLaTeX と同様に,標準では「明朝体」「ゴシック体」の2種類を用いる:
 \begin{center}\small
-\begin{tabular}{cllc}
+\begin{tabular}{llll}
 \toprule
 \emph{字体}&&&\emph{ファミリ名}\\\midrule
 明朝体&\verb+\textmc{...}+&\verb+{\mcfamily ...}+&\cs{mcdefault}\\
@@ -1031,23 +1038,46 @@ Note that the bold series in both family are same as the medium series of gothic
 \bottomrule
 \end{tabular}
 \end{center}
+  \newpage
 \item 標準では,次のフォントが用いられる:
 \begin{center}\small
-\begin{tabular}{ccccc}
+\begin{tabular}{lllll}
 \toprule
 \emph{字体}&\emph{ファミリ}&\cs{mdseries}&\cs{bfseries}&\emph{スケール}\\\midrule
 明朝体&\tt mc&IPAex明朝&IPAexゴシック&0.962216\\
-ゴシック体&\tt gt&IPAexゴシック&IPAexゴシック&0.962216\\
+\textgt{ゴシック体}&\tt gt&IPAexゴシック&IPAexゴシック&0.962216\\
 \bottomrule
 \end{tabular}
 \end{center}
-どちらのファミリにおいても,太字(\cs{bfseries})のフォントは
+
+明朝・ゴシックどちらのファミリにおいても,太字(\cs{bfseries})のフォントは
 ゴシック体中字(\cs{gtfamily}\cs{mdseries})で使われるフォントと同じであることに注意.
 また,どちらのファミリでもイタリック体・スラント体は定義されない.
+
+ \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{%
@@ -1102,7 +1132,7 @@ Note that the bold series in both family are same as the medium series of gothic
 However, above settings are not sufficient for Japanese-based
 documents. To typeset Japanese-based documents, you are better to use
 class files other than \texttt{article.cls}, \texttt{book.cls}, and so on.  At
-the present, we have the counterparts of \Pkg{jclasses} (standard
+the present, \LuaTeX-ja has the counterparts of \Pkg{jclasses} (standard
 classes in \pLaTeX) and \Pkg{jsclasses} (classes by Haruhiko
 Okumura), namely, \Pkg{ltjclasses}\footnote{%
   \texttt{ltjarticle.cls},~\texttt{ltjbook.cls}, \texttt{ltjreport.cls},
@@ -1112,10 +1142,12 @@ Okumura), namely, \Pkg{ltjclasses}\footnote{%
   \texttt{ltjsarticle.cls},~\texttt{ltjsbook.cls}, \texttt{ltjsreport.cls},~\texttt{ltjskiyou.cls}.}.
 
 Original \Pkg{jsclasses} use \cs{mag}~primitive to set the main document font size.
-However, \LuaTeX\ beta-0.87.0~or~later does not support \cs{mag} in PDF~output,
-so \Pkg{ltjsclasses} use different method%
-\footnote{Similar to \texttt{magstyle=xreal} in the \Pkg{BXjscls} classes (by Takayuki Yato).}
-to set the main document font size.
+However, \LuaTeX\ does not support \cs{mag} in PDF~output,
+so \Pkg{ltjsclasses} uses the \texttt{nomag*} option\footnote{Same effect as 
+  the \Pkg{BXjscls} classes (by Takayuki Yato) and \Pkg{jsclasses}.
+  However, these classes uses only \TeX\ code, but \Pkg{ltjsclasses} uses Lua code.}
+ by default to set the main font size. If this causes some unexpected behavior, specify
+\texttt{nomag} option in \cs{documentclass}.
 %</en>
 %<*ja>
 しかしながら,上記の設定は日本語の文書にとって十分とは言えない.
@@ -1129,13 +1161,17 @@ to set the main document font size.
 },
 \Pkg{ltjsclasses}\footnote{%
   \texttt{ltjsarticle.cls},~\texttt{ltjsbook.cls}, \texttt{ltjsreport.cls},~\texttt{ltjskiyou.cls}.}%
-がそれぞれ用意されている.
+がそれぞれ\LuaTeX-ja標準で用意されている.
 
-元々の\Pkg{ltjsclasses}ではフォントサイズを指定するのに\cs{mag}プリミティブが使われていたが,
-\LuaTeX~beta-0.87.0以降ではPDF出力時の\cs{mag}のサポートが廃止された.
-そのため,\Pkg{ltjsclasses}では別の方法
-\footnote{八登崇之氏による\Pkg{BXjscls}クラスにおける\texttt{magstyle=xreal}指定時と類似している.}で
-フォントサイズを指定することにしている.
+元々の\Pkg{jsclasses}では本文のフォントサイズを設定するのに\cs{mag}プリミティブが使われていたが,
+\LuaTeX ではPDF出力時の\cs{mag}のサポートが廃止された.
+そのため,\Pkg{ltjsclasses}では\texttt{nomag*}オプション
+\footnote{\Pkg{jsclasses}や,八登崇之氏による\Pkg{BXjscls}クラスにおける同名のオプションと
+  同じ.上記クラスは\TeX コードのみで実装しているが,\Pkg{ltjsclasses}ではLuaコードも用いている.}が標準で
+有効になっており,これを使って本文フォントサイズの設定を行っている.
+しかし,この\texttt{nomag*}オプションでは(20180121.0版より前の版において\Pkg{unicode-math}パッケージ使用時に
+起きたように)予想外の意図しない現象に遭遇する危険がある.そのような場合は
+\cs{documentclass}において\texttt{nomag}オプションを指定してほしい.
 %</ja>
 
 %<*ja>
@@ -1245,7 +1281,7 @@ For \LaTeXe, \LuaTeX-ja adopted most of the font selection system of \pLaTeXe\ (
 
 %<*en>
 \begin{center}\small
-\begin{tabular}{cccccc}
+\begin{tabular}{llllll}
 \toprule
 &\textbf{encoding}&\textbf{family}&\textbf{series}&\textbf{shape}&\textbf{selection}\\\midrule
 alphabetic fonts
@@ -1262,17 +1298,17 @@ auto select&\cs{fontencoding}&\cs{fontfamily}&---&---&\cs{usefont}\\
 %</en>
 %<*ja>
 \begin{center}\small
-\begin{tabular}{cccccc}
+\begin{tabular}{llllll}
 \toprule
 &\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}\\
-両方&---&--&\cs{fontseries}&\cs{fontshape}&---\\
-自動選択&\cs{fontencoding}&\cs{fontfamily}&---&---&\cs{usefont}\\
+\emph{両方}&---&--&\cs{fontseries}&\cs{fontshape}&---\\
+\emph{自動選択}&\cs{fontencoding}&\cs{fontfamily}&---&---&\cs{usefont}\\
 \bottomrule
 \end{tabular}
 \end{center}
@@ -1326,12 +1362,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>
@@ -1370,20 +1410,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>
\81¾ã\81\9f\LuaTeX-jaプロジェクトでは,和文文字が識別子として用いられることはほとんどない
\81ªã\81\8a\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}
@@ -1413,16 +1467,21 @@ TrueType・OpenTypeフォントを容易に扱うためのパッケージであ
 %</ja>
 
 %<*en>
-In the \Pkg{luatexja-fontspec} package, the following seven~commands are defined as
-counterparts of original commands in the \Pkg{fontspec} package:
+In the \Pkg{luatexja-fontspec} package, several commands are defined as
+counterparts of original commands in the \Pkg{fontspec} package
+(see \autoref{tab:ltj_fntspc}):
 %</en>
 %<*ja>
-\Pkg{luatexja-fontspec}パッケージでは,以下の7つのコマンドを\Pkg{fontspec}
-パッケージの元のコマンドに対応するものとして定義している:
+\Pkg{luatexja-fontspec}パッケージでは,\autoref{tab:ltj_fntspc}の
+「和文」行に示した命令を\Pkg{fontspec}パッケージの元のコマンド(「欧文」行)
+に対応するものとして定義している:
 %</ja>
 %<*en>
-\begin{center}\small
-\begin{tabular}{ccccc}
+\begin{table}
+\caption{Commands of \Pkg{luatexja-fontspec}}\label{tab:ltj_fntspc}
+\medskip
+{\centering\small
+\begin{tabular}{cllll}
 \toprule
 Japanese fonts
 &\cs{jfontspec}&\cs{setmainjfont}&\cs{setsansjfont}&\cs{setmonojfont}$^*$\\
@@ -1430,33 +1489,62 @@ alphabetic fonts
 &\cs{fontspec}&\cs{setmainfont}&\cs{setsansfont}&\cs{setmonofont}\\
 \midrule
 Japanese fonts
-&\cs{newjfontfamily}&\cs{newjfontface}
-&\cs{defaultjfontfeatures}&\cs{addjfontfeatures}\\
+&\cs{newjfontfamily}&\cs{renewjfontfamily}$^{**}$&\cs{setjfontfamily}$^{**}$\\
 alphabetic fonts
-&\cs{newfontfamily}&\cs{newfontface}
-&\cs{defaultfontfeatures}&\cs{addfontfeatures}\\
+&\cs{newfontfamily}&\cs{renewfontfamily}$^{**}$&\cs{setfontfamily}$^{**}$\\
+\midrule
+Japanese fonts
+&\cs{newjfontface}&\cs{defaultjfontfeatures}&\cs{addjfontfeatures}\\
+alphabetic fonts
+&\cs{newfontface}&\cs{defaultfontfeatures}&\cs{addfontfeatures}\\
 \bottomrule
-\end{tabular}
-\end{center}
+\end{tabular}\par}
+\medskip
+\fakefn{$^*$}{%
+  \cs{setmonojfont} is defined if and only if \texttt{match} option is specified.}
+\fakefn{$^{**}$}{%
+  \cs{renewfontfamily}~and~\cs{setfontfamily} are new commands
+  in \Pkg{fontspec}~v2.6h (2018/7/30).
+  Hence, \Pkg{luatexja-fontspec} define \cs{renewjfontfamily}~and~\cs{setjfontfamily}
+  only when \Pkg{fontspec}~v2.6h (or later) is used.
+}
+\end{table}
 %</en>
 %<*ja>
-\begin{center}\small
-\begin{tabular}{ccccc}
+\begin{table}
+\caption{\Pkg{luatexja-fontspec}で定義される命令}\label{tab:ltj_fntspc}
+\medskip
+{\centering\small
+\begin{tabular}{lllll}
 \toprule
-和文
+\emph{和文}
 &\cs{jfontspec}&\cs{setmainjfont}&\cs{setsansjfont}&\cs{setmonojfont}$^*$\\
-欧文
+\emph{欧文}
 &\cs{fontspec}&\cs{setmainfont}&\cs{setsansfont}&\cs{setmonofont}\\
 \midrule
-和文
-&\cs{newjfontfamily}&\cs{newjfontface}
-&\cs{defaultjfontfeatures}&\cs{addjfontfeatures}\\
-欧文
-&\cs{newfontfamily}&\cs{newfontface}
-&\cs{defaultfontfeatures}&\cs{addfontfeatures}\\
+\emph{和文}
+&\cs{newjfontfamily}&\cs{renewjfontfamily}$^{**}$&\cs{setjfontfamily}$^{**}$\\
+\emph{欧文}
+&\cs{newfontfamily}&\cs{renewfontfamily}$^{**}$&\cs{setfontfamily}$^{**}$\\
+\midrule
+\emph{和文}
+&\cs{newjfontface}&\cs{defaultjfontfeatures}&\cs{addjfontfeatures}\\
+\emph{欧文}
+&\cs{newfontface}&\cs{defaultfontfeatures}&\cs{addfontfeatures}\\
 \bottomrule
-\end{tabular}
-\end{center}
+\end{tabular}\par}
+
+\medskip
+\fakefn{$^*$}{\cs{setmonojfont} は \texttt{match} オプションが
+指定された時のみ定義される.}
+\fakefn{$^{**}$}{%
+  \cs{renewfontfamily} と \cs{setfontfamily} は
+  \Pkg{fontspec}~v2.6h (2018/7/30)で新たに追加された命令である.
+  そのため,\Pkg{luatexja-fontspec}が \cs{renewjfontfamily} と \cs{setjfontfamily} を
+  定義するのはv2.6h以降の\Pkg{fontspec}を使用した時のみになっている.
+}
+
+\end{table}
 %</ja>
 
 %<en> The package option of \Pkg{luatexja-fontspec} are the followings:
@@ -1569,7 +1657,7 @@ The following presets are defined:
   \hyphenchar\font=-1 \exhyphenchar=-1
   hiragino-pro, hiragino-pron, ipa, ipa-hg, ipaex, ipaex-hg,
   kozuka-pr6, kozuka-pr6n, kozuka-pro, moga-mobo, moga-mobo-ex,
-  morisawa-pr6n, morisawa-pro, ms, ms-hg, noembed, noto-otc, noto-otf,
+  bizud, morisawa-pr6n, morisawa-pro, ms, ms-hg, noembed, noto-otc, noto-otf,
   sourcehan, sourcehan-jp, ume, yu-osx, yu-win, yu-win10
 \end{quote}
 
@@ -1627,60 +1715,6 @@ as an external package \Pkg{luatexja-otf}.
 \ref{ssec:fontspec}節 (\Pkg{fontspec}) の方法で手動で指定する必要がある.
 %</ja>
 
-%<en>\subsection{Changing default Japanese fonts}
-%<ja>\subsection{標準和文フォントの変更}
-\label{ssec:cfg}
-%<*en>
-If \texttt{luatexja.cfg} can be seen from \LuaTeX, \LuaTeX-ja automatically reads it.
-The main use of \texttt{luatexja.cfg} is for changing default Japanese fonts,
-when IPAex fonts cannot be installed in \TeX~system.
-One should not overuse this \texttt{luatexja.cfg}; fonts which will be used in
-a document should be specified in its source.
-
-For example,
-\begin{lstlisting}
-\def\ltj@stdmcfont{IPAMincho}
-\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.
-
-For another example, the following two lines makes that
-non-embedded fonts Ryumin-Light~and~GothicBBB-Medium as default Japanese fonts
-(as the earlier version of \LuaTeX-ja):
-\begin{lstlisting}
-\def\ltj@stdmcfont{psft:Ryumin-Light}
-\def\ltj@stdgtfont{psft:GothicBBB-Medium}
-\end{lstlisting}
-%</en>
-%<*ja>
-\LuaTeX から見える位置に \texttt{luatexja.cfg} があれば,\LuaTeX-jaはそれを読み込む.
-このファイルを用いるとplain~\TeX, \LaTeXe における標準和文フォントを
-IPAex明朝・IPAexゴシックから変更することができる.
-しかし,基本的には\emph{文章中で用いるフォントは(例えば \Pkg{luatexja-preset} などで)
-文書ソース内で指定するべき}であり,この \texttt{luatexja.cfg} は,
-「IPAexフォントがインストールできない」など,IPAexフォントが使用できない場合にのみ
-応急処置的に用いるべきである.
-
-例えば
-\begin{lstlisting}
-\def\ltj@stdmcfont{IPAMincho}
-\def\ltj@stdgtfont{IPAGothic}
-\end{lstlisting}
-と記述しておけば,標準和文フォントがIPA明朝・IPAゴシックへと変
-更される.
-
-
-なお,20140906.0以前のバージョンのように,
-Ryumin-Light, GothicBBB-Mediumという名前の非埋込フォントを用いる場合は
-\begin{lstlisting}
-\def\ltj@stdmcfont{psft:Ryumin-Light}
-\def\ltj@stdgtfont{psft:GothicBBB-Medium}
-\end{lstlisting}
-と記述すればよい.
-%</ja>
-
-
 %<en>\section{Changing Internal Parameters}
 %<ja>\section{パラメータの変更}
 
@@ -1738,7 +1772,7 @@ For example, the code below is just the default setting of \LuaTeX-ja, and
 it sets
 \begin{itemize}
  \item a character which belongs character ranges 1,~4, 5, and~8 is \textbf{ALchar},
- \item a character which belongs character ranges 2,~3, 6, and~7 is \textbf{JAchar}.
+ \item a character which belongs character ranges 2,~3, 6, 7,~and~9 is \textbf{JAchar}.
 \end{itemize}
 %</en>
 %<*ja>
@@ -1747,11 +1781,11 @@ it sets
 例えば,以下は\LuaTeX-jaの初期設定であり,次の内容を設定している:
 \begin{itemize}
  \item 1番,4番,5番,8番の文字範囲に属する文字は\textbf{ALchar}.
- \item 2番,3番,6番,7番の文字範囲に属する文字は\textbf{JAchar}.
+ \item 2番,3番,6番,7番,9番の文字範囲に属する文字は\textbf{JAchar}.
 \end{itemize}
 %</ja>
 \begin{lstlisting}
-\ltjsetparameter{jacharrange={-1, +2, +3, -4, -5, +6, +7, -8}}
+\ltjsetparameter{jacharrange={-1, +2, +3, -4, -5, +6, +7, -8, +9}}
 \end{lstlisting}
 %<*en>
 The argument to \textsf{jacharrange} parameter is a list of non-zero integer.
@@ -1785,8 +1819,8 @@ determined from the following data:
 これらは以下のデータに基づいて決定している.
 %</ja>
 \begin{itemize}
-%<en>\item Blocks in Unicode~6.0.
-%<ja>\item Unicode~6.0のブロック.
+%<en>\item Blocks in Unicode~12.0.0.
+%<ja>\item Unicode~11.0のブロック.
 %<en>\item The \texttt{Adobe-Japan1-UCS2} mapping between a CID Adobe-Japan1-6 and Unicode.
 %<ja>\item Adobe-Japan1-6のCIDとUnicodeの間の対応表\texttt{Adobe-Japan1-UCS2}.
 %<en>\item The \Pkg{PXbase} bundle for \upTeX\ by Takayuki Yato.
@@ -1811,52 +1845,57 @@ these eight ranges belongs to the character range~217.
 %</ja>
 \begin{description}
 %<*en>
-
 \item[Range~8${}^{\text{A}}$] The intersection of the upper half of ISO~8859-1
-        (Latin-1 Supplement) and JIS~X~0208 (a basic character set for Japanese). This character range
-        consists of the following characters:
+        (Latin-1 Supplement) and JIS~X~0208 (a basic character set for Japanese).
+  The character list is indicated in \autoref{tab:rng8}.
 %</en>
 %<*ja>
 \item[範囲8${}^{\text{A}}$] ISO~8859-1の上位領域(ラテン1補助)と
-                             JIS~X~0208の共通部分.この文字範囲は
-                             以下の文字で構成される:
+  JIS~X~0208の共通部分.文字のリストは\autoref{tab:rng8}を参照.
 %</ja>
-\begin{multicols}{2}
-\begin{itemize}
-\def\ch#1#2{\item \char"#1\ (\texttt{U+00#1}, #2)}%"
-\ch{A7}{Section Sign}
-\ch{A8}{Diaeresis}
-\ch{B0}{Degree sign}
-\ch{B1}{Plus-minus sign}
-\ch{B4}{Spacing acute}
-\ch{B6}{Paragraph sign}
-\ch{D7}{Multiplication sign}
-\ch{F7}{Division Sign}
-\end{itemize}
-\end{multicols}
+\begin{table}[!tb]
+%<en>\caption{Characters in predefined character range~8.}\medskip
+%<ja>\caption{文字範囲8に指定されている文字.}
+\label{tab:rng8}
+\centering\footnotesize
+\def\ch#1{\char"#1~(\texttt{U+00#1})}%"
+\begin{tabular}{llll}
+\ch{A7}&{Section Sign}&
+\ch{A8}&{Diaeresis}\\
+\ch{B0}&{Degree sign}&
+\ch{B1}&{Plus-minus sign}\\
+\ch{B4}&{Spacing acute}&
+\ch{B6}&{Paragraph sign}\\
+\ch{D7}&{Multiplication sign}&
+\ch{F7}&{Division Sign}
+\end{tabular}
+\end{table}
 
 %<*en>
-\item[Range~1${}^{\text{A}}$] Latin characters that some of them are included in Adobe-Japan1-6.
-This range consists of the following Unicode ranges, \emph{except characters in the range~8 above}:
+\item[Range~1${}^{\text{A}}$] Latin characters that some of them are included in Adobe-Japan1-7.
+  This range consists of the Unicode ranges indicated in \autoref{tab:rng1},
+  \emph{except characters in the range~8 above}.
 %</en>
 %<*ja>
-\item[範囲1${}^{\text{A}}$] ラテン文字のうち,Adobe-Japan1-6との共通部分があるもの.
-                             この範囲は以下のUnicodeのブロックのうち
-                             \emph{ç¯\84å\9b²8ã\82\92é\99¤ã\81\84ã\81\9f\83¨å\88\86ã\81§æ§\8bæ\88\90ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bï¼\9a
+\item[範囲1${}^{\text{A}}$] ラテン文字のうち,Adobe-Japan1-7との共通部分があるもの.
+                             この範囲は\autoref{tab:rng1}で示したUnicodeのブロックのうち
+                             \emph{ç¯\84å\9b²8ã\82\92é\99¤ã\81\84ã\81\9f\83¨å\88\86ã\81§æ§\8bæ\88\90ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bï¼\8e
 %</ja>
-\begin{multicols}{2}
-\begin{itemize}
-\item \texttt{U+0080}--\texttt{U+00FF}: Latin-1 Supplement
-\item \texttt{U+0100}--\texttt{U+017F}: Latin Extended-A
-\item \texttt{U+0180}--\texttt{U+024F}: Latin Extended-B
-\item \texttt{U+0250}--\texttt{U+02AF}: IPA Extensions
-\item \texttt{U+02B0}--\texttt{U+02FF}: Spacing Modifier Letters
-%<en>\par\
-\item \texttt{U+0300}--\texttt{U+036F}: \\*\null\hfill Combining Diacritical Marks
-\item \texttt{U+1E00}--\texttt{U+1EFF}: \\*\null\hfill Latin Extended Additional
-%<ja>\par\
-\end{itemize}
-\end{multicols}
+\begin{table}[!tb]
+%<en>\caption{Unicode blocks in predefined character range~1.}\medskip
+%<ja>\caption{文字範囲1に指定されているUnicodeブロック.}
+\label{tab:rng1}
+\centering\footnotesize
+\begin{tabular}{llll}
+ \texttt{U+0080}--\texttt{U+00FF}&Latin-1 Supplement&
+ \texttt{U+0100}--\texttt{U+017F}&Latin Extended-A\\
+ \texttt{U+0180}--\texttt{U+024F}& Latin Extended-B&
+ \texttt{U+0250}--\texttt{U+02AF}& IPA Extensions\\
+ \texttt{U+02B0}--\texttt{U+02FF}& Spacing Modifier Letters&
+ \texttt{U+0300}--\texttt{U+036F}& Combining Diacritical Marks\\
+ \texttt{U+1E00}--\texttt{U+1EFF}&Latin Extended Additional
+\end{tabular}
+\end{table}
 %<*en>
 \item[Range~2${}^{\text{\kern.1emJ}}$] Greek and Cyrillic letters. JIS~X~0208 (hence most of Japanese
           fonts) has some of these characters.
@@ -1874,11 +1913,11 @@ This range consists of the following Unicode ranges, \emph{except characters in
 \end{itemize}
 \end{multicols}
 %<*en>
-\item[Range~3${}^{\text{\kern.1emJ}}$] Punctuations and Miscellaneous symbols. The block list is
+\item[Range~3${}^{\text{\kern.1emJ}}$] Miscellaneous symbols. The block list is
           indicated in \autoref{tab:rng3}.
 %</en>
 %<*ja>
-\item[範囲3${}^{\text{\kern.1emJ}}$] 句読点と記号類.ブロックのリストは\autoref{tab:rng3}%
+\item[範囲3${}^{\text{\kern.1emJ}}$] 記号類.ブロックのリストは\autoref{tab:rng3}%
                              に示してある.
 %</ja>
 \begin{table}[!tb]
@@ -1886,9 +1925,8 @@ This range consists of the following Unicode ranges, \emph{except characters in
 %<ja>\caption{文字範囲3に指定されているUnicodeブロック.}
 \label{tab:rng3}
 \catcode`\"=13\def"#1#2#3#4{\texttt{U+#1#2#3#4}}%"
-\centering\small
+\centering\footnotesize
 \begin{tabular}{llll}
-"2000--"206F&General Punctuation&
 "2070--"209F&Superscripts and Subscripts\\
 "20A0--"20CF&Currency Symbols&
 "20D0--"20FF&Comb.\ Diacritical Marks for Symbols\\
@@ -1904,27 +1942,83 @@ This range consists of the following Unicode ranges, \emph{except characters in
 "2600--"26FF&Miscellaneous Symbols\\
 "2700--"27BF&Dingbats&
 "2900--"297F&Supplemental Arrows-B\\
-"2980--"29FF&Misc.\ Mathematical Symbols-B&
-"2B00--"2BFF&Miscellaneous Symbols and Arrows
+"2980--"29FF&Misc.\ Math Symbols-B&
+"2B00--"2BFF&Misc.\ Symbols and Arrows
+\end{tabular}
+\end{table}
+%<*en>
+\item[Range~9${}^{\text{J}}$] The intersection of the ``General Punctuation'' block
+  (\texttt{U+2000}--\texttt{U+206F})
+  and Adobe-Japan1-7 character collection.
+  This character range characters in \autoref{tab:rng9}.
+%</en>
+%<*ja>
+\item[範囲9${}^{\text{J}}$] Unicodeの「一般句読点」ブロック(\texttt{U+2000}--\texttt{U+206F})と
+  Adobe-Japan1-7の共通部分.
+  この文字範囲は\autoref{tab:rng9}に示した文字で構成される.
+%</ja>
+\begin{table}[!tb]
+%<en>\caption{Characters in predefined character range~9.}\medskip
+%<ja>\caption{文字範囲9に指定されている文字.}
+\label{tab:rng9}
+\centering\footnotesize
+\def\ch#1{\char"20#1~(\texttt{U+20#1})}%"
+% 13: JIS X0213, AJ, Adobe-Japan-1 only
+\begin{tabular}{llllll}
+  \ch{02}&{En space}&AJ&
+  \ch{10}&{Hyphen}&\\
+  \ch{11}&{Non-breaking hyphen}&AJ&
+  \ch{13}&{En dash}&13\\
+  \ch{14}&{Em dash}&&
+  \ch{15}&{Horizontal bar}&\\
+  \ch{16}&{Double vertical line}&&
+  \ch{18}&{Left single quotation mark}&\\
+  \ch{19}&{Right single quotation mark}&&
+  \ch{1A}&{Single low-9 quotation mark}&AJ\\
+  \ch{1C}&{Left double quotation mark}&&
+  \ch{1D}&{Right double quotation mark}&\\
+  \ch{1E}&{Double low-9 quotation mark}&AJ&
+  \ch{20}&{Dagger}&\\
+  \ch{21}&{Double dagger}&&
+  \ch{22}&{Bullet}&13\\
+  \ch{25}&{Two dot leader}&&
+  \ch{26}&{Horizontal ellipsis}&\\
+  \ch{30}&{Per mille sign}&&
+  \ch{32}&{Prime}&\\
+  \ch{33}&{Double prime}&&
+  \ch{39}&{Single left-pointing angle quot.}&AJ\\
+  \ch{3A}&{Single right-pointing angle quot.}&AJ&
+  \ch{3B}&{Reference mark}&\\
+  \ch{3C}&{Double exclamation mark}&13&
+  \ch{3E}&{Overline}&\\
+  \ch{3F}&{Undertie}&13&
+  \ch{42}&{Asterism}&13\\
+  \ch{44}&{Fraction slash}&AJ&
+  \ch{47}&{Double question mark}&13\\
+  \ch{48}&{Question exclamation mark}&13&
+  \ch{49}&{Exclamation question mark}&13\\
+  \ch{51}&{Two asterisks aligned vertically}&13
 \end{tabular}
 \end{table}
 %<*en>
 \item[Range~4${}^{\text{A}}$] Characters usually not in Japanese fonts. This range consists
           of almost all Unicode blocks which are not in other
           predefined ranges. Hence, instead of showing the block list,
-          we put the definition of this range itself:
+          we put the definition of this range itself.
 %</en>
 %<*ja>
 \item[範囲4${}^{\text{A}}$] 通常和文フォントには含まれていない文字.
                              この範囲は他の範囲にないほとんど全てのUnicodeブロック
                              で構成されている.したがって,ブロックのリストを示す
-                             ä»£ã\82\8fã\82\8aã\81«ï¼\8cç¯\84å\9b²ã\81®å®\9a義ã\81\9dã\81®ã\82\82ã\81®ã\82\92示ã\81\99ï¼\9a
+                             ä»£ã\82\8fã\82\8aã\81«ï¼\8cç¯\84å\9b²ã\81®å®\9a義ã\81\9dã\81®ã\82\82ã\81®ã\82\92示ã\81\99ï¼\8e
 %</ja>
 \begin{lstlisting}
 \ltjdefcharrange{4}{%
    "500-"10FF, "1200-"1DFF, "2440-"245F, "27C0-"28FF, "2A00-"2AFF,
-  "2C00-"2E7F, "4DC0-"4DFF, "A4D0-"A82F, "A840-"ABFF, "FB00-"FE0F,
-  "FE20-"FE2F, "FE70-"FEFF, "10000-"1FFFF, "E000-"F8FF} % non-Japanese
+  "2C00-"2E7F, "4DC0-"4DFF, "A4D0-"A95F, "A980-"ABFF, "E000-"F8FF,
+  "FB00-"FE0F, "FE20-"FE2F, "FE70-"FEFF, "10000-"1AFFF, "1B170-"1F0FF,
+  "1F300-"1FFFF, ... (characters in "2000-"206F which are not in range 9)
+} % non-Japanese
 \end{lstlisting}
 %<en>\item[Range~5${}^{\text{A}}$] Surrogates and Supplementary Private Use Areas.
 %<ja>\item[範囲5${}^{\text{A}}$] 代用符号と補助私用領域.
@@ -1935,7 +2029,7 @@ This range consists of the following Unicode ranges, \emph{except characters in
 %<ja>\caption{文字範囲6に指定されているUnicodeブロック.}
 \label{tab:rng6}
 \catcode`\"=13\def"#1#2#3#4{\texttt{U+#1#2#3#4}}%"
-\centering\small
+\centering\footnotesize
 \begin{tabular}{llll}
 "2460--"24FF&Enclosed Alphanumerics&
 "2E80--"2EFF&CJK Radicals Supplement\\
@@ -1946,22 +2040,28 @@ This range consists of the following Unicode ranges, \emph{except characters in
 "31F0--"31FF&Katakana Phonetic Extensions&
 "3200--"32FF&Enclosed CJK Letters and Months\\
 "3300--"33FF&CJK Compatibility&
-"3400--"4DBF&CJK Unified Ideographs Extension A\\
+"3400--"4DBF&CJK Unified Ideographs Ext-A\\
 "4E00--"9FFF&CJK Unified Ideographs&
 "F900--"FAFF&CJK Compatibility Ideographs\\
 "FE10--"FE1F&Vertical Forms&
 "FE30--"FE4F&CJK Compatibility Forms\\
 "FE50--"FE6F&Small Form Variants&
-"{20}000--"{2F}FFF&(Supplementary Ideographic Plane)\\
-"{E0}100--"{E0}1EF&Variation Selectors Supplement
+"FF00--"FFEF&Halfwidth and Fullwidth Forms\\
+"{1B}000--"{1B}0FF&Kana Supplement&
+"{1B}100--"{1B}12F&Kana Extended-A\\
+%"{1B}130--"{1B}16F&Small Kana Extension
+"{1F}100--"{1F}1FF&Enclosed Alphanumeric Supp.&
+"{1F}200--"{1F}2FF&Enclosed Ideographic Supp.\\
+"{20}000--"{2F}FFF&(Supp. Ideographic Plane)&
+"{E0}100--"{E0}1EF&Variation Selectors Supp.
 \end{tabular}
 \end{table}
 %<*en>
-\item[Range~7${}^{\text{\kern.1emJ}}$] Characters used in CJK languages, but not included in  Adobe-Japan1-6.
+\item[Range~7${}^{\text{\kern.1emJ}}$] Characters used in CJK languages, but not included in  Adobe-Japan1-7.
 The block list is indicated in \autoref{tab:rng7}.
 %</en>
 %<*ja>
-\item[範囲7${}^{\text{\kern.1emJ}}$] CJK言語で用いられる文字のうち,Adobe-Japan1-6
+\item[範囲7${}^{\text{\kern.1emJ}}$] CJK言語で用いられる文字のうち,Adobe-Japan1-7
                             含まれていないもの.
                             ブロックのリストは\autoref{tab:rng7}に示す.
 %</ja>
@@ -1981,7 +2081,7 @@ The block list is indicated in \autoref{tab:rng7}.
 "31C0--"31EF&CJK Strokes&
 "A000--"A48F&Yi Syllables\\
 "A490--"A4CF&Yi Radicals&
-"A830--"A83F&Common Indic Number Forms\\
+"A960--"A97F&Hangul Jamo Extended-A\\
 "AC00--"D7AF&Hangul Syllables&
 "D7B0--"D7FF&Hangul Jamo Extended-B
 \end{tabular}
@@ -2369,7 +2469,7 @@ However, the penalty inserted after it is 10 which is the \Param{postbreakpenalt
 ``ア'', not 20.
 %</en>
 %<*ja>
-\subsection{禁則処理関連パラメータとOpenTypeのfont feature}
+\subsection{禁則処理関連パラメータとOpenType機能}
 禁則処理や \Param{kanjiskip}, \Param{xkanjiskip} の挿入に関連したパラメータのうち
 \begin{quote}
  \Param{jaxspmode},~\Param{alxspmode}, \Param{prebreakpenalty},
@@ -2378,8 +2478,8 @@ However, the penalty inserted after it is 10 which is the \Param{postbreakpenalt
 は,文字コードごとに設定する量である.
 
 \Pkg{fontspec}パッケージを使う(\ref{ssec:fontspec}節)場合など,
-各種のOpenType featureを適用することもあると思うが,前段落に述べたパラメータ類は,
-\emph{OpenType featureの適用前の文字コードによって適用される.}
+各種のOpenType機能を適用することもあると思うが,前段落に述べたパラメータ類は,
+\emph{OpenType機能の適用前の文字コードによって適用される.}
 例えば,以下の例において10行目の「ア」は,\verb+hwid+ featureの適用により半角カタカナの「ア」
 に置き換わる.しかし,その直後に挿入される \Param{postbreakpenalty}は,置換前の「ア」に対する値10である.
 %</ja>
@@ -2426,7 +2526,7 @@ For the detail, see \autoref{tab:kcat}.
 %<en>\medskip
 
 \noindent\hfill
-\begin{tabular}{ccccc}
+\begin{tabular}{llccc}
 \toprule
 \bfseries \cs{kcatcode}&
 %<*en>
@@ -2546,23 +2646,23 @@ for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.}
 %</en>
 %<*ja>
 ネイティブにUnicode全部の文字を扱える\XeTeX や\LuaTeX では,
-文字が制御綴内で使用できるかは通常の欧文文字と同じく \cs{catcode}
-で指定することとなる.plain \XeTeX における \cs{catcode} の初期設定は\
-\texttt{unicode-letters.tex} 中に記述されており,plain \LuaTeX ではそれを
-元にした \texttt{luatex-unicode-letters.tex} を用いている.
-\LaTeX では \cs{catcode} の設定はカーネルに \texttt{unicode-letters.def} として統合され.
+文字が制御綴内で使用できるかは通常の欧文文字と同じく\cs{catcode}%
+で指定することとなる.plain \XeTeX における\cs{catcode}の初期設定は%
+\texttt{unicode-letters.tex}中に記述されており,plain \LuaTeX ではそれを
+元にした\texttt{luatex-unicode-letters.tex}を用いている.
+\LaTeX では\cs{catcode}の設定はカーネルに\texttt{unicode-letters.def}として統合され.
 このファイルを\XeLaTeX, \LuaLaTeX の両方が用いている.
 
-だが,\XeTeX における \cs{catcode} の初期設定と
+だが,\XeTeX における\cs{catcode}の初期設定と
 \LuaTeX におけるそれは一致していない:
 \begin{itemize}
- \item \texttt{luatex-unicode-letters.tex} の元になった\
-\texttt{unicode-letters.tex} が古い
- \item \texttt{unicode-letters.tex} 後半部や \texttt{unicode-letters.def} 後半部では
-\cs{XeTeXcharclass} の設定を行なっており,
-それによって漢字や仮名,および全角英数字の \cs{catcode} が11に設定されている.
-しかし,\texttt{luatex-unicode-letters.tex} ではこの「後半部」が
-まるごと省略されており,また\LuaLaTeX でも \texttt{unicode-letters.def} 後半部は実行されな
+ \item \texttt{luatex-unicode-letters.tex} の元になった
+  \texttt{unicode-letters.tex}が古い
+ \item \texttt{unicode-letters.tex} 後半部や\texttt{unicode-letters.def}後半部では
+\cs{XeTeXcharclass}の設定を行なっており,
+それによって漢字や仮名,および全角英数字の\cs{catcode}が11に設定されている.
+しかし,\texttt{luatex-unicode-letters.tex}ではこの「後半部」が
+まるごと省略されており,また\LuaLaTeX でも\texttt{unicode-letters.def}後半部は実行されな
        い.
 \end{itemize}
 言い換えると,
@@ -2573,10 +2673,10 @@ for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.}
 \LuaLaTeX では漢字や仮名を制御綴内に
 使用することが可能になったが,全角英数字は相変わらず使用できない,
 \end{description}
-これでは \pTeX で使用できた \verb+\1年目西暦+\footnote{科研費\LaTeX で使用されているそうです.}などが使えないこととなり,
+これでは\pTeX で使用できた\verb+\1年目西暦+\footnote{科研費\LaTeX で使用されているそうです.}などが使えないこととなり,
 \LuaTeX-jaへの移行で手間が生じる.そのため,\LuaTeX-jaでは
-\texttt{unicode-letters.tex} の後半部にあたる内容を自前でパッチし,
-結果として\textbf{\XeTeX における初期設定と同じになるようにしている.}
+\texttt{unicode-letters.tex}の後半部にあたる内容を自前でパッチし,
+結果として\emph{\XeTeX における初期設定と同じになるようにしている.}
 %</ja>
 
 \begin{table}
@@ -2590,8 +2690,8 @@ for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.}
   {\large\char"#1#2#3#4}}\ (\texttt{U+#1#2#3#4})} %"
 \leavevmode\hbox to 0pt{\hss\begin{tabular}{cccccc}
 \toprule
-%<en>&\bf row&\bf col.&\bf \pTeX&\bf \upTeX&\bf\LuaTeX-ja\\
-%<ja>&\bf 区&\bf 点&\bf \pTeX&\bf \upTeX&\fontseries{b}\selectfont\LuaTeX-ja\\
+%<en>&\textbf{row}&\textbf{col.}&\textbf{\pTeX}&\textbf{\upTeX}&\textbf{\LuaTeX-ja}\\
+%<ja>&\emph{区}&\emph{点}&\emph{\pTeX}&\emph{\upTeX}&\emph{\LuaTeX-ja}\\
 \midrule
 %\D 3000&1&1&N&N&Y\\
 \D 30FB&1&6&N&Y&N\\
@@ -2617,8 +2717,8 @@ for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.}
 \end{tabular}\qquad
 \begin{tabular}{cccccc}
 \toprule
-%<en>&\bf row&\bf col.&\bf \pTeX&\bf \upTeX&\bf\LuaTeX-ja\\
-%<ja>&\bf 区&\bf 点&\bf \pTeX&\bf \upTeX&\fontseries{b}\selectfont\LuaTeX-ja\\
+%<en>&\textbf{row}&\textbf{col.}&\textbf{\pTeX}&\textbf{\upTeX}&\textbf{\LuaTeX-ja}\\
+%<ja>&\emph{区}&\emph{点}&\emph{\pTeX}&\emph{\upTeX}&\emph{\LuaTeX-ja}\\
 \midrule
 \D FF5C&1&35&N&N&Y\\
 \D FF0B&1&60&N&N&Y\\
@@ -2789,6 +2889,10 @@ Down-TO-Upの意味なのだろう.\cs{dtou} を使用する機会はないだ
 ただし,現在のモードが非制限水平モードや(文中,別行立て問わず)数式モードであるときには
 組方向を変更することは出来ない.
 また,縦組中の数式内のボックスは\pTeX と同じように組方向が \cs{utod} となる.
+
+なお,\LaTeX の下で\LuaTeX-jaを使用する場合,組方向変更命令には
+「新たな組方向下での和文フォントを必要なら読み込み(・選択する)」という
+処理が付け加えられている(\ref{ssec:ltx-jfm}節参照).
 %</ja>
 
 %<*en>
@@ -3091,7 +3195,7 @@ These commands set the dimension of \cs{box<num>}. One does not need
 ボックスレジスタ \cs{box}<num> にセットされているボックスの幅・高さ・深さの取得や
 変更にはそれぞれ \cs{wd},~\cs{ht},~\cs{dp} プリミティブを用いるのであった.
 \pTeX ではこれらのプリミティブは,「現在の組方向におけるボックスの寸法」を指すもので,
-同じボックスに対しても現在の組方向によって返る値は異なるもであった.
\90\8cã\81\98ã\83\9cã\83\83ã\82¯ã\82¹ã\81«å¯¾ã\81\97ã\81¦ã\82\82ç\8f¾å\9c¨ã\81®çµ\84æ\96¹å\90\91ã\81«ã\82\88ã\81£ã\81¦è¿\94ã\82\8bå\80¤ã\81¯ç\95°ã\81ªã\82\8bã\82\82ã\81®ã\81§ã\81\82ã\81£ã\81\9fï¼\8e
 
 \LuaTeX-jaにおいては状況が異なり,\cs{wd},~\cs{ht},~\cs{dp} が返す値は
 現在の組方向には依存しない.下の例のように,横組のボックスが格納されていれば
@@ -3516,7 +3620,7 @@ NFSS2用の命令(\ref{ssec:chgfnt}節,\ref{ssec:nfsspat}節)における
 
 %<*ja>
 \paragraph{\texttt{extend}と\texttt{slant}}
-OpenType font featureと見かけ上同じような形式で指定できるものに,
+OpenType機能と見かけ上同じような形式で指定できるものに,
 \begin{description}
 \item[\texttt{extend=}<extend>] 横方向に<extend>倍拡大する.
 \item[\texttt{slant=}<slant>] <slant>に指定された割合だけ傾ける.
@@ -3575,11 +3679,33 @@ JFM中における \texttt{kanjiskip\_natural}, \texttt{kanjiskip\_stretch},\
 3キーは再び有効化される.\texttt{-ltjksp}, \texttt{+ltjksp} を複数回指定した場合は,
 最後に指定したものが有効となる.
 %</ja>
+%<*en>
+\paragraph{\texttt{ltjksp}}
+\label{pg:ltjksp}
+\texttt{kanjiskip\_natural}, \texttt{kanjiskip\_stretch},\
+\texttt{kanjiskip\_shrink} keys (Page~\pageref{pg:ksp_nat}) makes tha
+\LuaTeX-ja inserts not only a glue which is specified by a JFM, and also
+the natural width/stretch part/shrink part of \Param{kanjiskip}.
+
+This functionality is disabled by \texttt{-ltjksp} specification.
+\begin{LTXexample}[width=16\zw]
+\leavevmode
+\ltjsetparameter{kanjiskip=0pt plus 3\zw}
+\vrule\hbox to 15\zw{あ「い」う,えお}\vrule
+
+\jfont\G=file:KozMinPr6N-Regular.otf%
+  :jfm=ujis;-ltjksp at 9.2487pt
+\G\leavevmode%
+\vrule\hbox to 15\zw{あ「い」う,えお}\vrule
+\end{LTXexample}
+%</en>
+
+
 
 
 %<en>\subsection{\cs{tfont}}
 %<ja>\subsection{\cs{tfont} 命令}
-
+\label{ssec:tfont}
 
 \begin{comment}
   {\catcode`\<=12\catcode`\>=12
@@ -3662,6 +3788,23 @@ A font defined by~\cs{tfont} differs the following points from that by~\cs{jfont
 \item[\tt jfm-tmin.lua] A counterpart for \verb+tmin10.tfm+, which is one
   of the default Japanese font metric shipped with \pTeX.
 \end{description}
+\begin{figure}[!tb]
+\begin{LTXexample}[pos=b]
+\jfont\X=[KozMinPr6N-Regular.otf]:jfm=ujis
+\tfont\U=[KozMinPr6N-Regular.otf]:jfm=ujisv
+\tfont\V=[KozMinPr6N-Regular.otf]:jfm=ujisv;jpotf
+\def\TEST#1#2{\leavevmode\hbox{#1#2\string#2 “引用,と句読点.”}}
+\ttfamily\centering\TEST\yoko\X \quad \TEST\tate\U \quad \TEST\tate\V
+\end{LTXexample}
+\caption{\texttt{jpotf} ``feature''}
+\label{fig:jpotf}
+\end{figure}
+  
+ \item If \texttt{vert}~and/or~\texttt{vrt2} features are activated,
+  one can specify \texttt{jpotf} to additional substitutions.
+  By default, it substitutes ideographic comma/period for fullwidth comma/period,
+  and double prime quotation marks for double quotation marks
+  (See~\autoref{fig:jpotf}).
 \end{itemize}
 %</en>
 %<*ja>
@@ -3671,7 +3814,7 @@ A font defined by~\cs{tfont} differs the following points from that by~\cs{jfont
 以下の点が \cs{jfont} による横組用和文フォントとは異なる:
 \begin{itemize}
  \item 明示的に \texttt{vert}, \texttt{vrt2}(のいずれか)の
-  有効・無効を指定した場合を除き,自動的に OpenType feature~\texttt{vrt2} の有効化が
+  有効・無効を指定した場合を除き,自動的に OpenType機能 \texttt{vrt2} の有効化が
   指定されたものとみなされる
  \footnote{もしフォントが\texttt{vrt2}を定義していなかった場合,代わりに
  \texttt{vert}を用いる.}.
@@ -3707,12 +3850,120 @@ A font defined by~\cs{tfont} differs the following points from that by~\cs{jfont
   である \verb+tmin10.tfm+ に相当し,\texttt{min10.tfm} と同様に
   「っ」など一部の文字幅が狭められている.
 \end{description}
+
+\begin{figure}[!tb]
+\begin{LTXexample}[pos=b]
+\jfont\X=[KozMinPr6N-Regular.otf]:jfm=ujis
+\tfont\U=[KozMinPr6N-Regular.otf]:jfm=ujisv
+\tfont\V=[KozMinPr6N-Regular.otf]:jfm=ujisv;jpotf
+\def\TEST#1#2{\leavevmode\hbox{#1#2\string#2 “引用,と句読点.”}}
+\ttfamily\centering\TEST\yoko\X \quad \TEST\tate\U \quad \TEST\tate\V
+\end{LTXexample}
+\caption{\texttt{jpotf} ``feature''}
+\label{fig:jpotf}
+\end{figure}
+  
+ \item \texttt{vert}, \texttt{vrt2}の少なくとも片方が(明示的・自動的を問わず)
+  有効になっていた場合,さらに\texttt{jpotf}を指定することで
+  「通常では行わない縦組用字形への変換」を行うことができる.
+
+  標準では,この「変換」は全角のコンマ・ピリオドを句読点に,
+  また全角の二重引用符をダブルミニュートへ置き換える
+  \footnote{%
+       \texttt{jpotf}という名前にしたのは,
+       OTFパッケージの縦組用和文TFMでほぼ同じの処理(そちらではさらに一重引用符を
+       「シングルミニュート」に置換する機能もあった)を行っていたことに由来する.
+  }.\autoref{fig:jpotf}を参照.
+
+  ユーザ側で「変換」をカスタマイズしたい場合,
+  \verb+luatexja.jfont.register_vert_replace+ 関数に変更内容を記したテーブルを渡す.
+  例えば縦組中では「あ」を「い」に置換し,また「,」は(「、」に置換せず)「,」のままに
+  したい場合は次のようにすれば良い.
+\begin{lstlisting}
+\directlua{luatexja.jfont.register_vert_replace{
+  ['あ']='い', [',']=false,
+}}
+\end{lstlisting}
+  \verb+luatexja.jfont.register_vert_replace+ による変更はこの関数の\emph{実行後}に定義される
+  フォントについてのみ有効である.
+  
 \end{itemize}
 
 なお,\pTeX では,\cs{font},~\cs{jfont},~\cs{tfont}のどれでも欧文フォント・横組用和文フォン
 ト・縦組用和文フォントの定義が可能であったが,\LuaTeX-jaではそうでないので注意.
 %</ja>
 
+%<en>\subsection{Default Japanese fonts and JFMs}
+%<ja>\subsection{標準和文フォント・JFMの変更}
+\label{ssec:cfg}
+%<*en>
+If following commands are defined at loading \LuaTeX-ja package, these change
+default Japanese fonts and JFMs for them:
+%</en>
+%<*ja>
+\LuaTeX-jaが読み込まれる前に以下の命令が定義されていた場合は,
+それらが標準和文フォントやそれらに用いるJFMとして使われる.
+%</ja>
+
+\begin{cslist}[style=standard]
+  \item[\cs{ltj@stdmcfont}] 
+%<en>The default Japanese font for the mincho family.
+%<ja>明朝体として用いるフォント.
+  \item[\cs{ltj@stdgtfont}]
+%<en>The default Japanese font for the gothic family.
+%<ja>ゴシック体として用いるフォント.
+  \item[\cs{ltj@stdyokojfm}]
+%<en>The default JFM for horizontal direction.
+%<ja>標準で用いる横組用JFM.
+  \item[\cs{ltj@stdtatejfm}]
+%<en>The default JFM for vertical direction.
+%<ja>標準で用いる縦組用JFM.
+\end{cslist}
+
+%<*en>
+For example,
+\begin{lstlisting}
+\def\ltj@stdmcfont{IPAMincho}
+\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.
+
+This feature is intended for classes which use special JFMs
+\footnote{This is because commands has \texttt{@} in their names.}.
+It is recommended to use \cs{luatexja-preset}~or~\cs{luatexja-fontspec} package
+to select standard fonts in ordinary \LaTeX\ sources.
+%</en>
+%<*ja>
+例えば
+\begin{lstlisting}
+\def\ltj@stdmcfont{IPAMincho}
+\def\ltj@stdgtfont{IPAGothic}
+\end{lstlisting}
+と記述しておけば,標準和文フォントがIPA明朝・IPAゴシックへと変
+更される.
+
+この機能は,特別のJFMを用いるクラス
+\footnote{例えば阿部紀行氏によるjlreqがそれにあたる.}%
+などでの使用を意図しており,命令名に\texttt{@}が含まれることから
+通常の\TeX/\LaTeX 文書での使用は意図していない.
+通常の\LaTeX 文書では\Pkg{luatexja-preset}や\Pkg{luatexja-fontspec}などで
+使用フォントを選択することを推奨する.
+%</ja>
+
+%<*en>
+For compatibility with earlier versions,
+\LuaTeX-ja reads  \texttt{luatexja.cfg} automatically if it is found by \LuaTeX.
+One should not overuse this \texttt{luatexja.cfg}; it will overwrite
+the definition of \cs{ltj@stdmcfont} and others.
+%</en>
+%<*ja>
+旧バージョンとの互換性のため,
+\LuaTeX から見える位置に\texttt{luatexja.cfg}があれば,\LuaTeX-jaはそれを読み込む.
+しかし,\texttt{luatexja.cfg}内で\cs{ltj@stdmcfont}等が定義されていた場合はそちらが
+優先されるので,もはや\texttt{luatexja.cfg}は使わないほうが良いだろう.
+%</ja>
+
 %<en>\subsection{Prefix \texttt{psft}}
 %<ja>\subsection{\texttt{psft}プリフィックス}
 \label{ssec:psft}
@@ -3743,7 +3994,7 @@ Identity-Hとなり,PDFの標準規格ISO32000-1:2008~(\cite{pdfstd})に非準
 ので注意してほしい.
 
 \emph{\texttt{psft} プリフィックスの下では
-\texttt{+jp90} などのOpenType font featureの効力はない.
+\texttt{+jp90} などのOpenType機能の効力はない.
 非埋込フォントをPDFに使用すると,実際にどのようなフォントが
 表示に用いられるか予測できないからである.}\
 \texttt{extend} と \texttt{slant} 指定は単なる変形のため
@@ -3756,24 +4007,25 @@ Identity-Hとなり,PDFの標準規格ISO32000-1:2008~(\cite{pdfstd})に非準
 
 %<*en>
 The default font defined by using \texttt{psft:} prefix is for Japanese typesetting;
-it is Adobe-Japan1-6 CID-keyed font.
+it is Adobe-Japan1-7 CID-keyed font.
 One can specify \texttt{cid} key to use other CID-keyed non-embedded fonts
 for Chinese or Korean typesetting.
 %</en>
 %<*ja>
 標準で\texttt{psft:}プリフィックスで定義されるフォントは日本語用のもので
-あり,Adobe-Japan1-6のCIDに対応したものとなる.しかし,\LuaTeX-jaは中国語
+あり,Adobe-Japan1-7のCIDに対応したものとなる.しかし,\LuaTeX-jaは中国語
 の組版にも威力を発揮することが分かり,日本語フォントでない非埋込フォント
 の対応も必要となった.そのために追加されたのが\texttt{cid}キーである.
 
 \texttt{cid}キーに値を指定すると,そのCIDを持った非埋込フォントを定義することができる:
 %</ja>
 \begin{lstlisting}[numbers=left]
-\jfont\testJ={psft:Ryumin-Light:cid=Adobe-Japan1-6;jfm=jis}     % Japanese
-\jfont\testD={psft:Ryumin-Light:jfm=jis}                        % default value is Adobe-Japan1-6
-\jfont\testC={psft:AdobeMingStd-Light:cid=Adobe-CNS1-6;jfm=jis} % Traditional Chinese
-\jfont\testG={psft:SimSun:cid=Adobe-GB1-5;jfm=jis}              % Simplified Chinese
-\jfont\testK={psft:Batang:cid=Adobe-Korea1-2;jfm=jis}           % Korean
+\jfont\testJ={psft:Ryumin-Light:cid=Adobe-Japan1-7;jfm=jis}    % Japanese
+\jfont\testD={psft:Ryumin-Light:jfm=jis}                       % default: Adobe-Japan1-7
+\jfont\testC={psft:AdobeMingStd-Light:cid=Adobe-CNS1-7;jfm=jis}% Traditional Chinese
+\jfont\testG={psft:SimSun:cid=Adobe-GB1-5;jfm=jis}             % Simplified Chinese
+\jfont\testK={psft:Batang:cid=Adobe-Korea1-2;jfm=jis}          % Korean
+\jfont\testKR={psft:SourceHanSerifAKR9:cid=Adobe-KR-9;jfm=jis} % Korean
 \end{lstlisting}
 %<*en>
 Note that the code above specifies \texttt{jfm-jis.lua}, which is for Japanese fonts,
@@ -3785,11 +4037,11 @@ as JFM for Chinese and Korean fonts.
 %</ja>
 
 %<*en>
-At present, \LuaTeX-ja supports only 4 values written in the sample code above.
+At present, \LuaTeX-ja supports only 5 values written in the sample code above.
 Specifying other values, e.g.,
 %</en>
 %<*ja>
-今のところ,\LuaTeX-jaは上のサンプルコード中に書いた4つの値しかサポートしていない.
+今のところ,\LuaTeX-jaは上のサンプルコード中に書いた5つの値しかサポートしていない.
 %</ja>
 \begin{lstlisting}
 \jfont\test={psft:Ryumin-Light:cid=Adobe-Japan2;jfm=jis}
@@ -4304,6 +4556,9 @@ JFMによって本来挿入されるグルーの他に
 自然長・縮み量半角,伸び量0のグルー
 となっているが,さらに\Param{kanjiskip}の伸び量に \texttt{kanjiskip\_stretch}(ここでは1)を掛け
        た分だけ伸びることが許される.
+ \item 一方,開き括弧類と通常の文字の間,また通常の文字と閉じ括弧類の間は
+  自然長・縮み量・伸び量0のグルーだが,\Param{kanjiskip}の縮み量に
+  \texttt{kanjiskip\_shrink}(ここでは1)を掛けた分だけ縮むことが許される.
 \end{itemize}
 となっている.従って,以下のような組版結果を得る.
 
@@ -4312,6 +4567,10 @@ JFMによって本来挿入されるグルーの他に
 \leavevmode
 \ltjsetparameter{kanjiskip=0pt plus 3\zw}
 \vrule\hbox to 15\zw{あ「い」う,えお}\vrule
+
+\vrule\hbox{あ「い」う,えお}\vrule\par
+\ltjsetparameter{kanjiskip=0pt minus \zw}
+\vrule\hbox to 6.5\zw{あ「い」う,えお}\vrule
 \end{LTXexample}
 
 \end{cslist}
@@ -4346,6 +4605,10 @@ a glue whose natural part and shrink part are both half-width, while its stretch
        Again, this glue also can be stretched
        as much as the stretch part of \Param{kanjiskip} times the value of
        \texttt{kanjiskip\_stretch} key (1 in this case).
+ \item Between an ideographic opening bracket and an ordinal letter
+  and between an ordinal letter and an ideographic closing bracket,
+  we have a glue whose natural part and stretch part are both zero, while its shrink part as much as
+  the shrink part of \Param{kanjiskip}.
 \end{itemize}
 Hence we have the following result:
 
@@ -4354,11 +4617,15 @@ Hence we have the following result:
 \leavevmode
 \ltjsetparameter{kanjiskip=0pt plus 3\zw}
 \vrule\hbox to 15\zw{あ「い」う,えお}\vrule
+
+\vrule\hbox{あ「い」う,えお}\vrule\par
+\ltjsetparameter{kanjiskip=0pt minus \zw}
+\vrule\hbox to 6.5\zw{あ「い」う,えお}\vrule
 \end{LTXexample}
 
 \end{cslist}
 %</en>
-
+  
 \item[end\_stretch=<kern>, end\_shrink=<kern>]
 %<*ja>
 (任意,バージョン1のみ)
@@ -4373,7 +4640,7 @@ Hence we have the following result:
 
   \item[end\_adjust=\{<kern>, <kern>, ...\}]
 %<*ja>
-(任意,バージョン2のみ
+(任意,バージョン2以降
 
 優先順位付き行長調整が有効であり,かつ現在の文字クラスの文字が
   行末に来た時に,この文字と行末の間には指定された値のいずれかの大きさのカーンが
@@ -4383,14 +4650,14 @@ Hence we have the following result:
 \begin{lstlisting}[escapechar=\$]
     end_stretch = $a$, end_shrink = $b$
 \end{lstlisting}
-という指定は,バージョン2では次の指定と同じになる.
+という指定は,バージョン2以降では次の指定と同じになる.
 \begin{lstlisting}[escapechar=\$]
     end_adjust = {$-b$, 0.0, $a$}
 \end{lstlisting}
 もし真ん中の \texttt{0.0} がない場合は,$a$か$-b$かいずれかのカーンが常に行末に追加される.
 %</ja>
 %<*en>
-(optional, version~2 only)
+(optional, version~2 or~later)
 %</en>
 
 \end{cslist}
@@ -4442,7 +4709,7 @@ applying font features by \Pkg{luaotfload}}.
 \item JFMによれば,この「ヒ」のグリフの文字クラスは2000である.
 \item 以上により文字クラス2000とみなされるため,結果として「ヒ」の幅は半角だと認識される.
 \end{enumerate}
-この例は,\emph{文字クラスの決定はfont featureの適用によるグリフ置換の結果に基づく}ことを
+この例は,\emph{文字クラスの決定はOpenType機能の適用によるグリフ置換の結果に基づく}ことを
 示している.
 %</ja>
 
@@ -4473,7 +4740,7 @@ as follows:
 %<*ja>
 ここで,句点「。」(\texttt{U+3002})の文字クラスは,以下のようにして決まる.
 \begin{enumerate}
-\item \Pkg{luaotfload} によって縦組用句点のグリフに置き換わる.
+\item \Pkg{luaotfload}によって縦組用句点のグリフに置き換わる.
 \item 置換後のグリフは \texttt{U+FE12} であり,JFMに従えば文字クラスは\emph{0}と判定される.
 \item この場合,置換前の横組用句点のグリフによって文字クラスを判定する.
 \item 結果として,上の出力例中の句点の文字クラスは2000となる.
@@ -4484,7 +4751,7 @@ as follows:
 %<ja>\paragraph{仮想的な文字}
 %<en>\paragraph{Imaginary characters}
 %<*en>
-As described before, you can specify several \emph{imaginary characters} in
+As described before, you can specify several ``imaginary characters'' in
 \texttt{chars} field. The most of these characters are regarded as the
 characters of class 0 in \pTeX.
 As a result, \LuaTeX-ja can control typesetting finer than \pTeX.
@@ -4503,8 +4770,17 @@ The following is the list of imaginary characters:
 %%<ja>JFMやサイズが異なる2つの\textbf{JAchar}の間の境界として用いられる.
 
 \item['boxbdd']
-%<en>The beginning/ending of a hbox, and the beginning of a noindented (i.e., began by \cs{noindent}) paragraph.
-%<ja>hboxの先頭と末尾,及びインデントされていない(\cs{noindent} で開始された)段落の先頭を表す.
+%<*en>
+The beginning/ending of a hbox, and the beginning of a noindented (i.e., began by \cs{noindent}) paragraph.
+If a hbox~$b$ begins (resp.~ends) a glue or kern between this ``charater'' and a \textbf{JAchar},
+\textbf{JAglue} won't be inserted before(resp.~after) the hbox~$b$.
+\Param{kanjiskip}~and~\Param{xkanjiskip} around a hbox.
+%</en>
+%<*ja>
+hboxの先頭と末尾,及びインデントされていない(\cs{noindent} で開始された)段落の先頭を表す.
+この「文字」との間に設定したグルー・カーンがボックス$b$の先頭(もしくは末尾)に来た場合,
+  そのボックス$b$の直前(もしくは直後)には和文処理グルーは入らない.
+%</ja>
 
 \item['parbdd']
 %<en>The beginning of an (indented) paragraph.
@@ -4535,7 +4811,7 @@ The following is the list of imaginary characters:
 
 \item['glue']
 %<en>(version 3~or~later) A boundary between \textbf{JAchar}, and, a glue or kern.
-%<ja>(バージョン3以降)\textbf{JAchar}とglue,kernとの境界.
+%<ja>(バージョン3以降)\textbf{JAchar}とglue,kernとの境界.
 
 \item[$-1$]
 %<en>The left/right boundary of an inline math formula.
@@ -4799,10 +5075,10 @@ $i$,~$j\in \omega$に対して,\texttt{char\_type[$i$][$j$]} は
 \begin{itemize}
   \item 間に入るものがカーンであれば,この値は\
 \texttt{[$j$]=\{[1]=<kern\_node>, ratio=<ratio>\}} であり,
-<kern\_node>ã\81¯ã\82«ã\83¼ã\83³ã\82\92表ã\81\99ã\83\8eã\83¼ã\83\89ã\81\9dã\81®ã\82\82ã\81®ã\81§ã\81\82ã\82\8b\footnote{%
-バージョン20150420.0以降ではノードのアクセス手法にdirect access
-      modelを用いている.そのため,例えば\LuaTeX\ beta-0.78.2では,単なる自然数のようにし
-      か見えないことに注意
+<kern\_node>はカーンを表すノードである\footnote{%
+      バージョン20150420.0以降ではノードのアクセス手法にdirect access
+      modelを用いているため,ノードそのものを表すユーザーデータではなく,
+      内部で参照のために使われる添字(整数)である
 }.
   \item グルーであれば,この値は以下のキーを持つテーブルである.
   \begin{description}
@@ -4817,8 +5093,6 @@ $i$,~$j\in \omega$に対して,\texttt{char\_type[$i$][$j$]} は
     JFM中の同名のフィールドの値がそのまま使われている.
   \end{description}
 \end{itemize}
-\item[ascent\textrm{, }descent]
-……
 \item[chars\_cbcache]
 文字クラス決定の処理で.キャッシュとして使われる.
 \end{cslist}
@@ -4943,8 +5217,6 @@ Then, the position of glyphs is shifted up by
 \]
 \end{description}
 
-
-
 %<en>\section{Parameters}
 %<ja>\section{パラメータ}
 \subsection{\cs{ltjsetparameter}}
@@ -5448,6 +5720,56 @@ The correct way is using a temporary register.
 
 \end{itemize}
 
+
+%<*en>
+\subsection{Alternative Commands to \cs{ltjsetparameter}}
+The basic method to set parameters of \LuaTeX-ja is to use
+\cs{ltjsetparameter}~or~\cs{ltjglobalsetparameter}.
+However, these commands are slow, because they parse a key-value list,
+so several alternative commands are used in \LuaTeX-ja.
+\emph{This subsection is not for general \LuaTeX-ja users.}
+
+\paragraph{Setting \Param{kanjiskip}~or~\Param{xkanjiskip}}
+In \Pkg{ltjsclasses}, every size-changing command such as \cs{Large}
+changes \cs{kanjiskip}~and~\cs{xkanjiskip}.
+But a simple implementation, as the code below, is slow since
+two key-value lists are parsed by \cs{ltjsetparameter}:
+\begin{lstlisting}
+  \ltjsetparameter{kanjiskip=0\zw plus .1\zw minus .01\zw}
+  \@tempskipa=\ltjgetparameter{xkanjiskip}
+  \ifdim\@tempskipa>\z@
+    \if@slide
+      \ltjsetparameter{xkanjiskip=0.1em}
+    \else
+      \ltjsetparameter{xkanjiskip=0.25em plus 0.15em minus 0.06em}
+    \fi
+  \fi
+\end{lstlisting}
+
+Hence, \LuaTeX-ja defines more primitive commands, namely \cs{ltj@setpar@global},
+\cs{ltjsetkanjiskip}, and~\cs{ltjsetxkanjiskip}. Here
+\begin{quote}
+  \lstinline+\ltj@setpar@global\ltjsetkanjiskip 10pt+
+\end{quote}
+and \lstinline+\ltjsetparameter{kanjiskip=10pt}+ has the same effect.
+The actual code of \Pkg{ltjsclasses} is shown below:
+\begin{lstlisting}
+  \ltj@setpar@global
+  \ltjsetkanjiskip{\z@ plus .1\zw minus .01\zw}
+  \@tempskipa=\ltjgetparameter{xkanjiskip}
+  \ifdim\@tempskipa>\z@
+    \if@slide
+      \ltjsetxkanjiskip.1em
+    \else
+      \ltjsetxkanjiskip.25em plus .15em minus .06em
+    \fi
+  \fi
+\end{lstlisting}
+
+Note that using \cs{ltjsetkanjiskip}~or~\cs{ltjsetxkanjiskip} alone,
+that is, without executing \cs{ltj@setpar@global} in advance, is \emph{not} supported.
+%</en>
+
 %<*ja>
 \subsection{\cs{ltjsetparameter} の代替}
 原則として各種内部パラメータの設定には \cs{ltjsetparameter} もしくは
@@ -5456,7 +5778,7 @@ The correct way is using a temporary register.
 \LuaTeX-ja の内部ではより高速に実行できる別の形式を用いている.
 \emph{本節は一般利用者むけの内容ではない.}
 
-\paragraph{\Param{kanjiskip}, \Param{xkanjiskip} の設定}
+\paragraph{\Param{kanjiskip}, \Param{xkanjiskip}の設定}
 \pLaTeXe 新ドキュメントクラスでは,
 \begin{lstlisting}
 \def\@setfontsize#1#2#3{%
@@ -5810,6 +6132,77 @@ are typeset by \cs{piyo}.
 %<en>\section{Commands for \LaTeXe}
 %<ja>\section{\LaTeXe 用の命令}
 
+%<*en>
+\subsection{Loading Japanese fonts in \LaTeXe}
+\label{ssec:ltx-jfm}
+From versoin~20190107, 
+\emph{\LuaTeX-ja does not load Japanese fonts for horizontal direction and
+  that for vertical direction at same time},
+to reduce the number of loaded fonts.
+This will save time for typesetting and memory consumption of Lua side (\cite{tc18ltja}).
+
+\begin{itemize}
+  \item \cs{selectfont} loads (and chooses) only the Japanese font for current direction,
+  and does not load the Japanese font for other direction
+  (\LuaTeX-ja only detects its size and JFM, to calculate the amount of shifting the baseline).
+
+  \item Direction changing commands (\cs{yoko},~\cs{tate}, \cs{dtou},~\cs{utod}) are patched to
+  include the following process:
+  \begin{quote}
+       If the Japanese font for new direction is not loaded,
+       \LuaTeX-ja loads it automatically.
+  \end{quote}
+  Original commands are saved as \cs{ltj@@orig@yoko} etc.
+  
+  \item Specifying Japanese font command which is
+  defined by \cs{jfont},~\cs{tfont}, or~\cs{DeclareFixedFont} directly
+  actually loads (and selects) the Japanese font.
+  For example, \textbf{JAchar}s in \cs{box0} will be typeset in \cs{HOGE},
+  in the following code:
+\begin{lstlisting}
+  % in horizontal direction (\yoko)
+  \DeclareFixedFont\HOGE{JT3}{gt}{m}{n}{12} % JT3: for vertical direction
+  \HOGE
+  \setbox0=\hbox{\tate あいう}
+\end{lstlisting}
+  \end{itemize}
+%</en>
+
+%<*ja>
+\subsection{\LaTeXe 下での和文フォントの読み込み}
+\label{ssec:ltx-jfm}
+バージョン20190107以降では,\LaTeXe の下で\LuaTeX-jaを使用した際に,
+\emph{横組用和文フォントと縦組み用和文フォントを両方一度に読み込み・選択せずに,
+  実際にそれぞれを使う組方向になったときに行う}という方針にした.
+これは実際に読み込むフォント数を削減することで,
+タイプセットにかかる時間と(主にLuaの)メモリ消費を削減するためである(\cite{tc18ltja}).
+
+\begin{itemize}
+  \item \cs{selectfont}は横組用・縦組用和文フォントのうち,現在の組方向で使う方を
+  実際に読み込み(・選択し),そうでない方は「フォントサイズとJFMのみ\LuaTeX-jaが把握している状態」
+  (以下,\emph{JFM把握状態})とする.
+
+  \item 組方向変更命令\cs{yoko},~\cs{tate}, \cs{dtou},~\cs{utod}には
+  \begin{quote}
+       新たな組方向での和文フォントが読み込まれていない(JFM把握状態)ならば,
+       現在のエンコーディング・ファミリ・シリーズ・シェイプから改めて読み込む(または選択する)
+  \end{quote}
+  処理が付け加えられている.
+  もとの「組方向を変更するだけ」の命令は\cs{ltj@@orig@yoko}のように\texttt{ltj@@orig@}が前についた
+  命令に保存されている.
+  
+  \item \cs{jfont},~\cs{tfont},~\cs{DeclareFixedFont}で定義された和文フォントは
+  その時点で実際にフォントが読み込まれる.すなわち,以下のコードにおいて,
+  \cs{box0}中の\textbf{JAchar}は\cs{HOGE}でタイプセットされる.
+\begin{lstlisting}
+  % in horizontal direction (\yoko)
+  \DeclareFixedFont\HOGE{JT3}{gt}{m}{n}{12} % JT3: for vertical direction
+  \HOGE
+  \setbox0=\hbox{\tate あいう}
+\end{lstlisting}
+  \end{itemize}
+%</ja>
+
 %<en>\subsection{Patch for NFSS2}
 %<ja>\subsection{NFSS2へのパッチ}
 \label{ssec:nfsspat}
@@ -5956,12 +6349,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>
@@ -6067,21 +6472,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」の部分のフォントが
-Avant Garde (OT1/pag/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}{OT1}{pag}{m}{n}
-  % \k@family: current Japanese font family
-\userelfont\selectfont あいうabc
-\end{LTXexample}
 
 %<en>\subsection{Detail of \cs{fontfamily} command}
 %<ja>\subsection{\cs{fontfamily}コマンドの詳細}
@@ -6275,7 +6694,7 @@ for example, the meaning of \cs{TU\cs{textquotedblleft}} is \cs{ltjalchar8220\lt
 
 \begin{table}[t]
   \centering\small
-  \caption{strut}\label{tab:strutbox}
+  \caption{strut}\label{tab:strutbox}\medskip
   \begin{tabular}{llcccl}
     \toprule
     \textbf{box}&\textbf{direction}&\textbf{width}&\textbf{height}&\textbf{depth}
@@ -6570,16 +6989,20 @@ commands:
 \item[\cs{CID}\{<number>\}]
 %<*en>
 Typeset a glyph whose CID number is <number>.
-If the Japanese font is neither Adobe-Japan1,~Adobe-GB1, Adobe-CNS1,~nor~Adobe-Korea1 CID-keyed font,
+If the Japanese font is neither Adobe-Japan1,~Adobe-GB1, Adobe-CNS1,
+Adobe-Korea1,~nor~Adobe-KR CID-keyed font,
 \LuaTeX-ja treats that <number> is a CID number of Adobe-Japan1 character collection,
 and tries to typeset a ``most suitable glyph''.
 %</en>
 %<*ja>
 CID番号が<number>の文字を出力する.
-もし現在の和文フォントがAdobe-Japan1,~Adobe-GB1, Adobe-CNS1,~Adobe-Korea1
+もし現在の和文フォントがAdobe-Japan1,~Adobe-GB1, Adobe-CNS1, Adobe-Korea1,~Adobe-KR
   いずれのCID-keyed fontでもない場合,<number>はAdobe-Japan1のCID番号であると解釈し
   「適切なグリフ」\footnote{%
-  例えばフォントにIVDコレクションAdobe-Japan1が含まれていれば,その情報を用いて
+  特に縦組用グリフのCID番号を指定した場合は(LuaTeX-ja 20190504.0以降では若干改良されているが)
+  意図しない結果になる可能性が高い.
+  なお,バージョン20190708.0以降では,CIDからグリフへの選択にグリフ名の情報を使用していない.
+  また,フォントにIVDコレクションAdobe-Japan1が含まれていれば,その情報を用いて
   グリフを選択する.
 }を出力する.
 %</ja>
@@ -6629,12 +7052,20 @@ ordinary characters in the following points:
 \item 常に\textbf{JAchar}として扱われる.
 %</ja>
 %<*en>
-\item Processing codes for supporting OpenType features (\textit{e.g.},
+\item In vertical direction, \texttt{vert}/\texttt{vrt2} feature are automatically applied to
+      characters by \cs{UTF}, regardless these feature are not activated in current Japanese font.
+%</en>
+%<*ja>
+\item 縦組時には,現在の縦組用和文フォントで \texttt{vert}/\texttt{vrt2} 機能が
+  有効か無効かを問わず,\cs{UTF} で出力される文字にはこれらのOpenType機能が働いた字形になる.
+%</ja>
+%<*en>
+\item Processing codes for supporting other OpenType features (for example,
       glyph replacement and kerning) by the \Pkg{luaotfload} package
       is not performed to these characters.
 %</en>
 %<*ja>
-\item OpenType機能(例えばグリフ置換やカーニング)をサポートするための
+\item その他のOpenType機能(例えばグリフ置換やカーニング)をサポートするための
   \Pkg{luaotfload}パッケージのコードはこれらの文字には働かない.
 %</ja>
 \end{itemize}
@@ -6692,11 +7123,11 @@ with priority&%
 \\
 \bottomrule
 \end{tabular}\par}
-\smallskip
+\medskip
 
-Note: the value of
+\fakefn{}{The value of
 \Param{kanjiskip} is 0\,pt${}^{+1/5\,\mathrm{em}}_{-1/5\,\mathrm{em}}$ in this figure,
-for making the difference obvious.
+for making the difference obvious.}
 %<ja>\caption{行長調整}\label{fig:adj}
 %<en>\caption{Line adjustment}\label{fig:adj}
 \end{figure}
@@ -6708,12 +7139,12 @@ for making the difference obvious.
 %<*ja>
 この追加パッケージは以下の機能を提供する.詳細な仕様については\ref{sec-adjspec}章を参照してほしい.
 \begin{description}
-\item[行末文字の位置調整]
+ \item[行末文字の位置調整]
   \pTeX では,(是非はともかく)「行末の読点はぶら下げか二分取りか全角取りのいずれかに」のように
   行末文字と実際の行末の位置関係を2通り以上にすることは面倒であった.
   和文フォントメトリックだけでは「常に行末の読点はぶら下げ」といったことしかできず,
   前の文に書いたことを実現するには
-\begin{lstlisting}
+  \begin{lstlisting}
 \def\。{%
   \penalty10000 % 禁則ペナルティ
   \hbox to0pt{。\hss}\penalty0 % ぶら下げの場合
@@ -6723,48 +7154,185 @@ for making the difference obvious.
 \end{lstlisting}
   のような命令を定義し,文中の全ての句点を \lstinline+\。+ で書くことが必要だった.
 
-\Pkg{luatexja-adjust}パッケージは,上で述べた行末文字と実際の行末との位置関係を
-2通り以上から自動的に選択する機能を提供する.
-\pdfTeX と同じように,「\TeX による行分割の後で行末文字の位置を補正する」方法と
-  「行分割の過程で行末文字の位置を考慮に入れる」方法を選べるようにした
-\Pkg{luatexja-adjust}パッケージの既定では前者).
+  \Pkg{luatexja-adjust}パッケージは,上で述べた行末文字と実際の行末との位置関係を
+  2通り以上から自動的に選択する機能を提供する.
+  \pdfTeX と同じように,「\TeX による行分割の後で行末文字の位置を補正する」方法と
+  「行分割の過程で行末文字の位置を考慮に入れる」方法を選べるようにした
+  (\Pkg{luatexja-adjust}パッケージの既定では前者).
   
-\item[優先順位付きの行長調整]
-\pTeX では,行長調整において優先度の概念が存在しなかったため,図
-\ref{fig:adj}上段における半角分の半端は,\autoref{fig:adj}中段のように,鍵
-括弧周辺の空白と和文間空白(\Param{kanjiskip})の両方によって負担される.し
-かし,「日本語組版処理の要件」\cite{jlreq}やJIS~X~4051~\cite{x4051}におい
-ては,このような状況では半端は鍵括弧周辺の空白のみで負担し,その他の和文
-文字はベタ組で組まれる(\autoref{fig:adj}下段)ことになっている.
-\Pkg{luatexja-adjust}パッケージの提供する第2の機能は,
-\cite{jlreq}や\cite{x4051}における規定のような,優先順位付き
-の行長調整である.
-\begin{itemize}
- \item 優先度付き行長調整は,段落を行分割した後に個々の行について行われるものである.
-そのため,行分割の位置は変化することはない.
+ \item[優先順位付きの行長調整]
+  \pTeX では,行長調整において優先度の概念が存在しなかったため,図
+  \ref{fig:adj}上段における半角分の半端は,\autoref{fig:adj}中段のように,鍵
+  括弧周辺の空白と和文間空白(\Param{kanjiskip})の両方によって負担される.し
+  かし,「日本語組版処理の要件」\cite{jlreq}やJIS~X~4051~\cite{x4051}におい
+  ては,このような状況では半端は鍵括弧周辺の空白のみで負担し,その他の和文
+  文字はベタ組で組まれる(\autoref{fig:adj}下段)ことになっている.
+  \Pkg{luatexja-adjust}パッケージの提供する第2の機能は,
+  \cite{jlreq}や\cite{x4051}における規定のような,優先順位付き
+  の行長調整である.
+  \begin{itemize}
+   \item 優先度付き行長調整は,段落を行分割した後に個々の行について行われるものである.
+       そのため,行分割の位置は変化することはない.
+       
+       \verb+\hbox{...}+ といった「途中で改行できない水平ボックス」では(たとえ幅が指定されていても)無効である.
+   \item 優先度付き行長調整を行うと,和文処理グルーの自然長は変化しないが,伸び量や縮み量は
+       一般に変化する.そのため,既に組まれた段落を \cs{unhbox} などを利用して組み直す処理を
+       行う場合には注意が必要である.
+  \end{itemize}
+  
+ \item[「中身までみた」行送り計算]
+  複数行に渡る文章を組版するときには行間に空きが入ることが普通である.
+  \TeX では各行が一つずつの水平ボックスをなしていることを思い出すと,隣り合った
+  2つの行(つまり水平ボックス)の間の空きは次のようにして決まるのだった:
+  \begin{itemize}
+   \item 「通常に組んだときの行間」$d$を,\cs{baselineskip}から
+       「前の行」の深さと「次の行」の高さを加えたものを引いた値とする.
+   \item $d\ge\cs{lineskiplimit}$の場合,
+       標準の行送り\cs{baselineskip}で組んでも十分な間隔があると判断され,
+       2行の間には長さ$d$の空白が挿入される.つまり行送りは\cs{baselineskip}.
+   \item {\catcode`\<=12$d<\cs{lineskiplimit}$}の場合,
+       2行の間には長さ\cs{lineskip}の空白が挿入される.
+       そのため(設定値によるが,多くの場合)行送りは\cs{baselineskip}より広がる.
+  \end{itemize}
 
-\verb+\hbox{...}+ といった「途中で改行できない水平ボックス」では(たとえ幅が指定されていても)無効である.
- \item 優先度付き行長調整を行うと,和文処理グルーの自然長は変化しないが,伸び量や縮み量は
-一般に変化する.そのため,既に組まれた段落を \cs{unhbox} などを利用して組み直す処理を
-行う場合には注意が必要である.
-\end{itemize}
+  \begin{figure}[t]
+       \noindent\centering
+       \begin{minipage}[b]{18\zw}
+         \ltjenableadjust[profile=false, linestep=false]
+         ……だから,①より$\dfrac{a^2}{b} = \dfrac{1+\sqrt{5}}2$.\\
+         よって$b=\dfrac{1-\sqrt{5}}2$である.\\
+         これを②式に代入すると……
+         \par\vskip\abovecaptionskip
+         \ltjenableadjust[profile=false, linestep=false]
+         \par\centering\leavevmode{\small (a)}
+       \end{minipage}%
+       \kern2\zw
+       \begin{minipage}[b]{18\zw}
+         \ltjenableadjust[profile]
+         ……だから,①より$\dfrac{a^2}{b} = \dfrac{1+\sqrt{5}}2$.\\
+         よって$b=\dfrac{1-\sqrt{5}}2$である.\\
+         これを②式に代入すると……
+         \par\vskip\abovecaptionskip
+         \ltjenableadjust[profile=false, linestep=false]
+         \par\centering\leavevmode{\small (b)}
+       \end{minipage}\par
+         \caption{高い行が連続したときの状況}\label{fig:linegap1}
+  \end{figure}
+
+  ここで,\TeX は行送りの決定で「高さ・深さを取っているものが
+  行のどの水平位置にあるか」は一切考慮しないことに注意してほしい.そのため,
+  \autoref{fig:linegap1}~(a)のように「必要以上に行間が空いて見える」状況が起こることがある.
+
+  \Pkg{luatexja-adjust}パッケージでは,「通常に組んだときの行間」$d$を
+  各行の中身の文字・グルー・ボックスの寸法を勘案して計算するという方法を
+  利用できるようにした.この機能を使うと,\autoref{fig:linegap1}~(b)のように
+  行間の空きが必要以上に大きくなることを避けることができる.
+  \begin{itemize}
+       \item 段落中の隣り合った二行だけでなく,行間の空きは
+       新たに水平ボックス$h$を(内部・外部問わず)垂直モードで追加した時にも自動で挿入される.
+       その場合には,前段落で述べた「中身までみる」処理は
+       \begin{itemize}
+        \item 現在のリストにおける最後のノード
+         \footnote{最後のノードが\cs{parskip}によるグルーであった場合のみ
+               さらに一つ前のノードを参照する}が水平ボックス$h'$であり,かつ
+         \item \cs{prevdepth}の値とその$h'$の深さの値が一致している
+       \end{itemize}
+       場合にのみ発動するようにしている.
+       \item 行の中身に水平ボックス$h''$が入ってくることもあるが,その場合は$h''$の中身の高さ・深さまでは
+       参照せず,あくまでも$h''$自身の高さ・深さのみを参照する.
+       参照するようにしてしまうと,\cs{smash}など手動で行った高さ・深さ調整の意味がなくなってしまうからである.
+  \end{itemize}
+  
+  \begin{figure}[t]
+       \noindent\centering
+       \begin{minipage}[b]{16\zw}
+         \ltjenableadjust[profile]
+         ……だから,①より$\dfrac{a^2}{b}= \dfrac{1+\sqrt{5}}2$.\\
+         よって$b=\dfrac{1-\sqrt{5}}2$である.\\
+         これを②式に代入すると……
+         \par\vskip\abovecaptionskip
+         \ltjenableadjust[profile=false, linestep=false]
+         \par\centering\leavevmode{\small (a): 無効}
+       \end{minipage}%
+       \kern2\zw
+       \begin{minipage}[b]{16\zw}
+         \ltjsetparameter{linestep_factor=0.25}
+         \ltjenableadjust[profile, linestep]
+         ……だから,①より$\dfrac{a^2}{b} = \dfrac{1+\sqrt{5}}2$.\\
+         よって$b=\dfrac{1-\sqrt{5}}2$である.\\
+         これを②式に代入すると……
+         \par\vskip\abovecaptionskip
+         \ltjenableadjust[profile=false, linestep=false]
+         \par\centering\leavevmode{\small (b): $0.25$\cs{baselineskip}刻み}
+       \end{minipage}\par\medskip
+       \begin{minipage}[b]{16\zw}
+         \ltjsetparameter{linestep_factor=0.5}
+         \ltjenableadjust[profile, linestep]
+         ……だから,①より$\dfrac{a^2}{b} = \dfrac{1+\sqrt{5}}2$.\\
+         よって$b=\dfrac{1-\sqrt{5}}2$である.\\
+         これを②式に代入すると……
+         \par\vskip\abovecaptionskip
+         \ltjenableadjust[profile=false, linestep=false]
+         \par\centering\leavevmode{\small (c): 0.5\cs{baselineskip}刻み}
+       \end{minipage}%
+       \kern2\zw
+       \begin{minipage}[b]{16\zw}
+         \ltjsetparameter{linestep_factor=1}
+         \ltjenableadjust[profile, linestep]
+         ……だから,①より$\dfrac{a^2}{b} = \dfrac{1+\sqrt{5}}2$.\\
+         よって$b=\dfrac{1-\sqrt{5}}2$である.\\
+         これを②式に代入すると……
+         \par\vskip\abovecaptionskip
+         \ltjenableadjust[profile=false, linestep=false]
+         \par\centering\leavevmode{\small (d): \cs{baselineskip}刻み}
+       \end{minipage}\par
+         \caption{段階的な行送り増加}\label{fig:linegap2}
+  \end{figure}
+
+ \item[段階的な行送り調整]
+  既に述べたように,
+  「通常に組んだときの行間」$d$が\cs{lineskiplimit}より小さい場合,\TeX 標準では
+  行間は\cs{lineskip}となるのだった.
+  このとき行送りは「前の行の深さ」,「次の行の高さ」,\cs{lineskip}の3つの和になるわけだが,
+  場合によっては行送りを「\cs{baselineskip}の整数倍」などと切りのいい値に揃えたいという状況が
+  考えられなくもない.
+  
+  \Pkg{luatexja-adjust}パッケージでは,{\catcode`\<=12$d<\cs{lineskiplimit}$}のときに
+  行送りを\cs{baselineskip}の\Param{linestep\_factor}倍ずつ増減させて
+  \begin{quote}
+       行間が\cs{lineskip}以上となるような,
+       最小の$(1+k\cdot \Param{linestep\_factor})\cs{baselineskip}$($k$は整数)の値
+  \end{quote}
+  とする機能を利用できるようにした.
+  \autoref{fig:linegap2}の(a)がこの機能を無効にした状況で,(b),~(c),~(d)が
+  それぞれ\Param{linestep\_factor}を0.25,~0.5,~1とした状況である.
+
+  なお,この機能は表組時(\cs{halign},~\cs{valign})には無効である.
+  \LaTeX における表組環境(tabular, arrayなど)では,\cs{baselineskip},~\cs{lineskip}はどちらも0に設定されているので
+  (代わりに各行に\cs{@arstrut}という支柱が入る)ために意味がないことと,
+  数式を内部で表組を使って組むalign環境などではかえって行間が不揃いになってしまうからである.
 \end{description}
 
-\Pkg{luatexja-adjust}パッケージは,上記で述べた2機能を有効化/無効化するための
+\Pkg{luatexja-adjust}パッケージは,上記で述べた4機能を有効化/無効化するための
 以下の命令を提供する.これらはすべてグローバルに効力を発揮する.
 
 \begin{cslist}
 \item[\cs{ltjenableadjust[...]}]
-\verb+...+ に指定したkey-valueリストに従い,「行末文字の位置調整」「優先順位付きの行長調整」を有効化/無効化する.
+\verb+...+ に指定したkey-valueリストに従い,「行末文字の位置調整」「優先順位付きの行長調整」
+  「『中身までみた』行送り計算」「段階的な行送り調整」を有効化/無効化する.
 指定できるキーは以下の通り.
 \begin{description}
   \item[\texttt{lineend=[false,true,extended]}]
   行末文字の位置調整の機能を無効化(\texttt{false}),「行分割後に調整」の形で有効化(\texttt{true}),
-  「行分割の仮定で考慮」(\texttt{extended})する.
+  「行分割の過程で考慮」の形で有効化(\texttt{extended})する.
   \item[\texttt{priority=[false,true]}]
-  優先順位付きの行長調整を無効化(\texttt{false}),または有効化(\texttt{true})する.
+  優先順位付きの行長調整を無効化(\texttt{false}),または有効化(\texttt{true}).
+  \item[\texttt{profile=[false,true]}]
+  「中身までみた」行送り計算を無効化(\texttt{false}),または有効化(\texttt{true}).
+  \item[\texttt{linestep=[false,true]}]
+  段階的な行送り調整を無効化(\texttt{false}),または有効化(\texttt{true}).
 \end{description}
-キーともキー名のみを指定した場合は値として\texttt{true}が指定されたものと扱われる.
+どのキーともキー名のみを指定した場合は値として\texttt{true}が指定されたものと扱われる.
 
 互換性の為,オプション無しでただ\cs{ltjenableadjust}が呼び出された場合は,
 \begin{lstlisting}
@@ -6775,13 +7343,13 @@ for making the difference obvious.
 \item[\cs{ltjdisableadjust}]
 \Pkg{luatexja-adjust}パッケージの機能を無効化する.
 \begin{lstlisting}
-\ltjenableadjust[lineend=false,priority=false]
+\ltjenableadjust[lineend=false,priority=false,profile=false,linestep=false]
 \end{lstlisting}
 と同義.
 \end{cslist}
 
-また,優先順位付きの行長調整のために,次の2パラメータが\cs{ltjsetparameter}内で
-追加される.両パラメータともグローバルに効力を発揮する.
+また,次のパラメータが\cs{ltjsetparameter}内で
+追加される.いずれもグローバルに効力を発揮する.
 \begin{cslist}[style=standard]
 \item[\DParam{stretch\_priority}\,=\{<list>\}]
 \Param{kanjiskip}, \Param{xkanjiskip},および「\textbf{JAglue}以外のグルー」を,
@@ -6796,16 +7364,30 @@ stretch_priority={kanjiskip=-35,xkanjiskip=-25,others=50}
 \texttt{others}キーが「\textbf{JAglue}以外のグルー」を表す.
 各キーの値は,JFMグルーにおける「優先度$i$」を$10i$に対応させた整数値であり,
   大きい方が先に伸ばされることを意味している.
+  初期値は
+\begin{lstlisting}
+{kanjiskip=-35,xkanjiskip=-25,others=50}
+\end{lstlisting}
+であり,「優先度$-4$」と指定されているJFMグルーが最も伸びにくいようになっている.
 
 \item[\DParam{shrink\_priority}\,=\{<list>\}]
 同様に,「行を自然長より縮める」場合の調整に用いる優先度を指定する.
-それ以外は\Param{stretch\_priority}と指定の形式は変わらない.
+それ以外は\Param{stretch\_priority}と指定の形式は変わらない(初期値も変わらない).
+
+ \item[\DParam{linestep\_factor}\,=<float>]
+  段階的な行送り調整の際,\cs{baselineskip}の自然長の何倍単位で行送りを変えるかを指定する.
+  0を指定すると無効になるのと変わらない.また負数を指定すると,
+  その絶対値が指定されたかのように扱われる.
+  初期値は0.5(つまり半行単位)である.
+
+  \item[\DParam{profile\_hgap\_factor}\,=<float>]
+  「中身まで見た」行送り計算の際,
+  前の行にある深さが大きいものと次の行にある高さが大きいものが
+  水平方向にどれだけ離れていないといけないかを
+  「\cs{lineskip}の自然長の何倍か」で指定する.
+  負数を指定すると,その絶対値が指定されたかのように扱われる.
+  初期値は1(つまり\cs{lineskip}(の自然長))である.
 \end{cslist}
-初期値は\Param{stretch\_priority}, \Param{shrink\_priority}とも
-\begin{lstlisting}
-{kanjiskip=-35,xkanjiskip=-25,others=50}
-\end{lstlisting}
-であり,「優先度$-4$」と指定されているJFMグルーが最も伸び(縮み)にくいようになっている.
 %</ja>
 
 \subsection{\Pkg{luatexja-ruby}}
@@ -7196,9 +7778,14 @@ In this case, one can use \cs{setmainfont} etc.\ to select \emph{alphabetic} fon
 %</en>
 %<*ja>
 \LaTeX 標準のフォント選択機構(NFSS2)を用いて
-\texttt{ltjpm}(明朝),\texttt{ltjpg}(ゴシック),それに後に述べる \texttt{deluxe} オプ
-            ションが指定された場合には \texttt{ltjpmg}(丸ゴシック)という
-3つの和文フォントファミリを定義し,これらを用いる.
+\texttt{ltjpm}$n$(明朝),\texttt{ltjpg}$n$(ゴシック),
+それに後に述べる\texttt{deluxe}オプションが指定された場合には
+\texttt{ltjpmg}$n$(丸ゴシック)という
+和文フォントファミリを定義%
+\footnote{%
+  $n$は自然数であり,\cs{ltjapplypreset}の実行(この命令は\Pkg{luatexja-preset}パッケージ
+  読み込み時に自動的に実行される)ごとに増加していく.
+}し,これらを用いる.
 
 本オプション指定時には\Pkg{fontspec}・\Pkg{luatexja-fontspec}パッケージは
 自動では読み込まれない,しかし,
@@ -7208,9 +7795,10 @@ In this case, one can use \cs{setmainfont} etc.\ to select \emph{alphabetic} fon
 \end{lstlisting}
 のようにすれば,このオプションを指定すれば
 欧文フォントを\Pkg{fontspec}パッケージの機能を使って指定することができる.
-一方,
-パッケージ読み込み時に既に\Pkg{luatexja-fontspec}パッケージが読み込まれて
-            いる場合は \texttt{nfssonly} オプションは無視される.
+
+一方,\Pkg{luatexja-preset}パッケージ読み込み時に
+既に\Pkg{luatexja-fontspec}パッケージが読み込まれている場合は
+\texttt{nfssonly}オプションは無視される.
 %</ja>
 
 \item[match]
@@ -7291,7 +7879,7 @@ characters designed for ruby.
 %<*ja>
 横組・縦組専用仮名を用いる.また,\cs{rubyfamily} でルビ用仮名が使用可能となる\footnote{%
   \cs{rubyfamily}とはいいつつ,実際にはフォントファミリを切り替えるのではない(通常では
-  font featureの追加,\texttt{nfssonly} 指定時にはシェイプを \texttt{rb} に切り替え).
+  OpenType機能の有効化であり,\texttt{nfssonly} 指定時にはシェイプを \texttt{rb} に切り替える).
 }.
 %</ja>
 \item[bold]
@@ -7306,12 +7894,12 @@ since we use same font for both series of gothic.
           いため,
 「ゴシック体の中字」も同時に変更されることになる.
 %</ja>
-\item[90jis]
-%<en>Use 90JIS glyph variants if possible.
-%<ja>出来る限り90JISの字形を使う.
-\item[jis2004]
-%<en>Use JIS2004 glyph variants if possible.
-%<ja>出来る限りJIS2004の字形を使う.
+\item[jis90\textrm{,~}90jis]
+%<en>Use JIS~X~0208:1990 glyph variants if possible.
+%<ja>出来る限りJIS~X~0208:1990の字形を使う.
+\item[jis2004\textrm{,~}2004jis]
+%<en>Use JIS~X~0213:2004 glyph variants if possible.
+%<ja>出来る限りJIS~X~0213:2004の字形を使う.
 \item[jfm\_yoko=<jfm>]
 %<*en>
 Use the JFM \texttt{jfm-<jfm>.lua} for horizontal direction, instead of \texttt{jfm-ujis.lua}~(default JFM).
@@ -7335,14 +7923,14 @@ Use the JFM \texttt{jfm-<jfm>.lua} for vertical direction, instead of \texttt{jf
 
 \end{cslist}
 %<*en>
-Note that \texttt{90jis} and \texttt{jis2004} only affect with mincho,
+Note that \texttt{jis90},~\texttt{90jis}, \texttt{jis2004}~and~\texttt{2004jis} only affect with mincho,
 gothic (and, possibly rounded gothic) families defined by this package.
-We didn't taken account of  when both \texttt{90jis} and \texttt{jis2004} are specified.
+We didn't taken account of when more than one options among them are specified.
 %</en>
 %<*ja>
-\texttt{90jis}と\texttt{jis2004}については本パッケージで定義された
+\texttt{jis90},~\texttt{90jis}, \texttt{jis2004},~\texttt{2004jis}については本パッケージで定義された
 明朝体・ゴシック体(・丸ゴシック体)にのみ有効である.
-両オプションが同時に指定された場合の動作については全く考慮していない.
+これら4オプションのうち複数が同時に指定された場合の動作については全く考慮していない.
 %</ja>
 
 %<en>\subsubsection{Presets which support multi weights}
@@ -7350,13 +7938,13 @@ We didn't taken account of  when both \texttt{90jis} and \texttt{jis2004} are sp
 \label{sssec:ltjpreset-multi}
 
 %<*en>
-Besides \texttt{morisawa-pro}~and~\texttt{morisawa-pr6n} presets,
+Besides \texttt{bizud}, \texttt{morisawa-pro},~and~\texttt{morisawa-pr6n} presets,
 fonts are specified by font name, not by file name.
 In following tables, starred fonts (e.g.~KozGo\dots-Regular) are used for medium series of \textit{gothic},
 \emph{if and only if \texttt{deluxe} option is specified}.
 %</en>
 %<*ja>
-\texttt{morisawa-pro}, \texttt{morisawa-pr6n}以外はフォントの指定は
+\texttt{bizud}, \texttt{morisawa-pro}, \texttt{morisawa-pr6n}以外はフォントの指定は
 (ファイル名でなく)フォント名で行われる.
 以下の表において,*\,つきのフォント(e.g.,~KozGo\dots-Regular)は,\emph{\texttt{deluxe}オプション指定時に}
 ゴシック体中字として用いられるものを示している.
@@ -7403,7 +7991,6 @@ There is not rounded gothic family in Kozuka fonts.
 \end{tabular}
 \end{center}
 
-%<en>\newpage
  \item[hiragino-pro]  Hiragino Pro (Adobe-Japan1-5) fonts.
 %<en>    \\*[-\dimexpr\medskipamount+\baselineskip\relax]
  \item[hiragino-pron] Hiragino ProN (Adobe-Japan1-5, JIS04-savvy) fonts.
@@ -7450,6 +8037,34 @@ Std/StdNフォントであり,その他はAdobe-Japan1-5対応である.
 \end{tabular}
 \end{center}
 
+%<ja>\newpage
+\item[bizud] BIZ UD fonts (by Morisawa Inc.) bundled with
+  Windows~10 October 2018 Update.
+\begin{center}\small
+\begin{tabular}{ll>{\ttfamily}l}
+\toprule
+\textbf{family}&\textbf{series}\\
+\midrule
+%<en>\textit{mincho}
+%<ja>\textgt{明朝}%
+ &&BIZ-UDMinchoM.ttc\\
+\midrule
+ &medium&BIZ-UDGothicR.ttc\\
+\cmidrule(l){2-3}
+%<en>\textit{gothic}%
+%<ja>\gt ゴシック
+ &bold&BIZ-UDGothicB.ttc\\
+ &extra bold&BIZ-UDGothicB.ttc\\
+\midrule
+%<en>\textit{rounded gothic}
+%<ja>\gt 丸ゴシック
+&&BIZ-UDGothicB.ttc\\
+\bottomrule
+\end{tabular}
+\end{center}
+
+%<en>\newpage
+
  \item[morisawa-pro]  Morisawa Pro (Adobe-Japan1-4) fonts.
 %<en>    \\*[-\dimexpr\medskipamount+\baselineskip\relax]
  \item[morisawa-pr6n]  Morisawa Pr6N (Adobe-Japan1-6, JIS04-savvy) fonts.
@@ -7568,6 +8183,7 @@ Std/StdNフォントであり,その他はAdobe-Japan1-5対応である.
 \end{tabular}
 \end{center}
 
+%<en>\newpage
  \item[sourcehan]  Source Han Serif and Source Han Sans fonts (Language-specific OTF \textit{or} OTC)
 %<en>    \\*[-\dimexpr\medskipamount+\baselineskip\relax]
  \item[sourcehan-jp]  Source Han Serif JP and Source Han Sans JP fonts (Region-specific Subset OTF)
@@ -7715,17 +8331,17 @@ Note that HG~Mincho~E, HG~Gothic~E, HG Soei Kaku Gothic UB, and HG Maru Gothic P
 are internally specified by:
 \begin{description}
 \item[default] by font name (\texttt{HGMinchoE}, etc.).
-\item[{\tt 90jis}] by file name (\texttt{hgrme.ttc}, \texttt{hgrge.ttc}, \texttt{hgrsgu.ttc}, \texttt{hgrsmp.ttf}).
-\item[{\tt jis2004}] by file name (\texttt{hgrme04.ttc}, \texttt{hgrge04.ttc}, \texttt{hgrsgu04.ttc}, \texttt{hgrsmp04.ttf}).
+\item[\texttt{jis90}, \texttt{90jis}] by file name (\texttt{hgrme.ttc}, \texttt{hgrge.ttc}, \texttt{hgrsgu.ttc}, \texttt{hgrsmp.ttf}).
+\item[\texttt{jis2004}, \texttt{2004jis}] by file name (\texttt{hgrme04.ttc}, \texttt{hgrge04.ttc}, \texttt{hgrsgu04.ttc}, \texttt{hgrsmp04.ttf}).
 \end{description}
 %</en>
 %<*ja>
 なお,HG明朝E・HGゴシックE・HG創英角ゴシックUB・HG丸ゴシック体PROの4つについては,内部で
 \begin{description}
 \item[標準] フォント名(\texttt{HGMinchoE} など)
-\item[{\tt 90jis}指定時] ファイル名 (%
+\item[\texttt{jis90}, \texttt{90jis}指定時] ファイル名 (%
 \texttt{hgrme.ttc}, \texttt{hgrge.ttc}, \texttt{hgrsgu.ttc}, \texttt{hgrsmp.ttf})
-\item[{\tt jis2004}指定時] ファイル名 (%
+\item[\texttt{jis2004}, \texttt{2004jis}指定時] ファイル名 (%
 \texttt{hgrme04.ttc}, \texttt{hgrge04.ttc}, \texttt{hgrsgu04.ttc}, \texttt{hgrsmp04.ttf})
 \end{description}
 として指定を行っているので注意すること.
@@ -7735,11 +8351,11 @@ are internally specified by:
 %<ja>\subsubsection{新たなプリセットの定義}
 
 %<*ja>
-バージョン********.0以降では,自分で新たなプリセットを定義することが出来るようになった.
+バージョン20170904.0以降では,自分で新たなプリセットを定義することが出来るようになった.
 以下に説明する2命令はプリアンブルでしか実行できない.
 %</ja>
 %<*en>
-From version~********.0, one can define new presets using \cs{ltjnewpreset},
+From version~20170904.0, one can define new presets using \cs{ltjnewpreset},
 and use them by \cs{ltjapplypreset}. These two commands can only be used in the preamble.
 %</en>
 \begin{cslist}
@@ -7945,18 +8561,23 @@ Current number of Japanese font family for math formulas.
 
 \attr{ltj@curjfnt}
 %<*en>
-The font index of current Japanese font for horizontal direction.
+If this attribute is a positive number, it stores the font number of current Japanese font for horizontal direction.
+If this attribute is negative, it means that the Japanese font for horizontal direction is
+not loaded---\LuaTeX-ja only knows its size and JFM.
 %</en>
 %<*ja>
-現在の横組用和文フォントのフォント番号.
+基本的には現在の横組用和文フォントのフォント番号を格納しているが,
+\LaTeX 下で使用する場合は($-2$以下の)負数となることがある.
+  負数の場合は「横組用和文フォントは実際には読み込まれておらず,そのフォントサイズとJFMだけが
+  \LuaTeX-jaが把握している」状態を表す.
 %</ja>
 
 \attr{ltj@curtfnt}
 %<*en>
-The font index of current Japanese font for vertical direction.
+Similar to \cs{ltj@curjfnt}, but with current Japanese font for vertical direction.
 %</en>
 %<*ja>
\8f¾å\9c¨ã\81®ç¸¦çµ\84ç\94¨å\92\8cæ\96\87ã\83\95ã\82©ã\83³ã\83\88ã\81®ã\83\95ã\82©ã\83³ã\83\88ç\95ªå\8f·
¸¦çµ\84ç\94¨å\92\8cæ\96\87ã\83\95ã\82©ã\83³ã\83\88ã\81«é\96¢ã\81\99ã\82\8b\cs{ltj@curjfnt}ã\81¨å\90\8cæ§\98ã\81®å\80¤
 %</ja>
 
 \attr{ltj@charclass}
@@ -9849,19 +10470,37 @@ For illustration, we introduce following classes of characters:
 直前が和文文字であるかを示すフラグ \verb+\lst@ifkanji+ を新たに導入した.
 以降,説明のために以下のように文字を分類する:
 %</ja>
+%<*ja>
 \begin{center}
 \small
-\begin{tabular}{lccccc}
+\begin{tabular}{llllll}
 \toprule
-&Letter&Other&Kanji&Open&Close\\\midrule
+&\emph{Letter}&\emph{Other}&\emph{Kanji}&\emph{Open}&\emph{Close}\\\midrule
 \verb+\lst@ifletter+&T&F&T&F&T\\
 \verb+\lst@ifkanji+&F&F&T&T&F\\
-%<en>Meaning&char in an identifier&other alphabet&%
-%<en>most of Japanese char&opening brackets&closing brackets\\
-%<ja>意図&識別子中の文字&その他欧文文字&殆どの和文文字&開き括弧類&閉じ括弧類\\
+\emph{意図}&識別子中の文字&その他欧文文字&殆どの和文文字&開き括弧類&閉じ括弧類\\
 \bottomrule
 \end{tabular}
 \end{center}
+%</ja>
+%<*en>
+\begin{center}
+\small
+\begin{tabular}{llll}
+\toprule
+&\textbf{Letter}&\textbf{Other}&\\\midrule
+\verb+\lst@ifletter+&T&F&\\
+\verb+\lst@ifkanji+&F&F&\\
+\textbf{Meaning}&char in an identifier&other alphabet&\\
+  \midrule
+&\textbf{Kanji}&\textbf{Open}&\textbf{Close}\\\midrule
+\verb+\lst@ifletter+&T&F&T\\
+\verb+\lst@ifkanji+&T&T&F\\
+\textbf{Meaning}&most of Japanese char&opening brackets&closing brackets\\
+\bottomrule
+\end{tabular}
+\end{center}
+%</en>
 %<*en>
 Note that \textit{digits} in the \Pkg{listings} package can be Letter or
 Other according to circumstances.
@@ -9893,27 +10532,27 @@ The following table summarizes $5\times 5=25$ cases:
 %</ja>
 \begin{center}
 \small
-\begin{tabular}{llccccc}
+\begin{tabular}{lllllll}
 \toprule
 %<*en>
-&&\multicolumn{4}{c}{Next}\\\cmidrule(lr){3-7}
-&&\hbox to 4em{\hss Letter\hss}&\hbox to 4em{\hss Other\hss}
-&\hbox to 4em{\hss Kanji\hss}&\hbox to 4em{\hss Open\hss}&Close\\\midrule
+&&\multicolumn{4}{c}{\textbf{Next}}\\\cmidrule(lr){3-7}
+&&\hbox to 4em{Letter\hss}&\hbox to 4em{Other\hss}
+&\hbox to 4em{Kanji\hss}&\hbox to 4em{Open\hss}&Close\\\midrule
 &Letter&collects&\multicolumn{3}{c}{\hrulefill \ outputs\ \hrulefill}&collects\\
 &Other&outputs&collects&\multicolumn{2}{c}{\hrulefill \ outputs\ \hrulefill}&collects\\
-Prev&Kanji&\multicolumn{4}{c}{\hrulefill \ outputs\ \hrulefill}&collects\\
+\textbf{Prev}&Kanji&\multicolumn{4}{c}{\hrulefill \ outputs\ \hrulefill}&collects\\
 &Open&\multicolumn{5}{c}{\hrulefill \ collects\ \hrulefill}\\
 &Close&\multicolumn{4}{c}{\hrulefill \ outputs\ \hrulefill}&collects\\
 %</en>
 %<*ja>
-&&\multicolumn{4}{c}{後ろ側の文字}\\\cmidrule(lr){3-7}
-&&\hbox to 4em{\hss Letter\hss}&\hbox to 4em{\hss Other\hss}
-&\hbox to 4em{\hss Kanji\hss}&\hbox to 4em{\hss Open\hss}&Close\\\midrule
-&Letter&収集&\multicolumn{3}{c}{\hrulefill \ 出力\ \hrulefill}&収集\\
-&Other&出力&収集&\multicolumn{2}{c}{\hrulefill \ 出力\ \hrulefill}&収集\\
-&Kanji&\multicolumn{4}{c}{\hrulefill \ 出力\ \hrulefill}&収集\\
-&Open&\multicolumn{5}{c}{\hrulefill \ 収集\ \hrulefill}\\
-&Close&\multicolumn{4}{c}{\hrulefill \ 出力\ \hrulefill}&収集\\
+&&\multicolumn{4}{c}{\textbf{後側文字種}}\\\cmidrule(lr){3-7}
+&&\hbox to 4em{Letter\hss}&\hbox to 4em{Other\hss}
+&\hbox to 4em{Kanji\hss}&\hbox to 4em{Open\hss}&Close\\\midrule
+\emph{直}&Letter&収集&\multicolumn{3}{c}{\hrulefill \ 出力\ \hrulefill}&収集\\
+\emph{前}&Other&出力&収集&\multicolumn{2}{c}{\hrulefill \ 出力\ \hrulefill}&収集\\
+\emph{文}&Kanji&\multicolumn{4}{c}{\hrulefill \ 出力\ \hrulefill}&収集\\
+\emph{字}&Open&\multicolumn{5}{c}{\hrulefill \ 収集\ \hrulefill}\\
+\emph{種}&Close&\multicolumn{4}{c}{\hrulefill \ 出力\ \hrulefill}&収集\\
 %</ja>
 \bottomrule
 \end{tabular}
@@ -10161,53 +10800,6 @@ $|\textit{total}|$の分だけが,行中のグルーの伸び量,あるい
 %</ja>
 
 %<*ja>
-\section{IVS対応}
-\verb+luatexja.otf.enable_ivs()+ を実行し,IVS対応を有効にした状態では,
-\verb+pre_linebreak_filter+ や \verb+hpack_filter+ コールバックには
-次の4つが順に実行される状態となっている:
-\begin{description}
-\item[\tt ltj.do\_ivs] \textit{glyph\_node}~$p$の直後に,異体字セレクタ(を表す\textit{glyph\_node})
-が連続した場合に,$p$のフォントに対応したが持つ「異体字情報」に従って出力するグリフを変える.
-
-しかし,単に$p.\textit{char}$を変更するだけでは,後から
-OpenType機能の適用(すぐ下)により置換される可能性がある.そのため,
-\cs{CID} や \cs{UTF} と同じように,\textit{glyph\_node}~$p$の代わりに
-\texttt{user\_id} が\textit{char\_by\_cid}であるようなuser-defined whatsitを用いている.
-\item[(\Pkg{luaotfload} によるfont featureの適用)]
-\item[\tt ltj.otf] \texttt{user\_id} が\textit{char\_by\_cid}であるようなuser-defined whatsitを
-きちんと\textit{glyph\_node}に変換する.この処理は,\cs{CID}, \cs{UTF}やIVSによる置換が,
-OpenType機能の適用で上書きされてしまうのを防止するためである.
-\item[\tt ltj.main\_process] \textbf{JAglue}の挿入処理(\ref{sec-jfmglue}章)と,
-JFMの指定に従って各\textbf{JAchar}の「寸法を補正」することを行う.
-\end{description}
-
-問題は各フォントの持っているIVS情報をどのように取得するか,である.
-\Pkg{luaotfload} はフォント番号<font\_number>の情報を\
-\texttt{fonts.hashes.identifiers[<font\_number>]} 以下に格納している.
-しかし,OpenTypeフォントのIVS情報は格納されていないようである%
-\footnote{TrueTypeフォントに関しては,
-\begin{center}
-\texttt{fonts.hashes.idenfiers[<font\_number>]%
-  .resources.variants[<selector>][<base\_char>]}
-\end{center}
-に,<base\_char>番の文字の後に異体字セレクタ<selector>が続いた場合に
-出力すべきグリフが書かれてある.}.
-%例えば,小塚明朝Pr6N~Rでは,
-
-一方,\LuaTeX 内部の \texttt{fontloader} の返すテーブルには
-OpenTypeフォントでもTrueTypeフォントでもIVS情報が格納されている.
-具体的には……
-
-そのため,\LuaTeX-jaのIVS対応においては,\LuaTeX 内部の\
-\texttt{fontloader} を直接用いることで,フォントのIVS情報を取得している.
-20140114.0以降でキャッシュを用いるようにした要因はここにあり,
-\texttt{fontloader} の呼び出しでかなり時間を消費することから,
-%%% to_table を使わなくしたことで,メモリ使用量は減った
-IVS情報をキャッシュに保存することで2回目以降の実行時間を節約している.
-%</ja>
-
-
-%<*ja>
 \section{複数フォントの「合成」(未完)}
 \section{\LuaTeX-jaにおけるキャッシュ}
 \Pkg{luaotfload}パッケージが,各TrueType・OpenTypeフォントの情報を
@@ -10266,10 +10858,6 @@ CMapが必要である.
 \pageref{para-cid}ページで述べたように,\texttt{cid}キーを使って
 非埋め込みの中国語・韓国語フォントを定義する場合,同様のキャッシュが生成される.
 キャッシュの名称,必要となるCMapについては\autoref{tab:cid-cache}を参照して欲しい.
-
-\item[extra\_***.lua]
-フォント``\texttt{***}''における異体字セレクタの情報,縦組用字形への変換テーブル,そして
-縦組時における幅を格納している.構造は以下の通り:
 %</ja>
 %<*en>
 \subsection{Use of cache}
@@ -10287,16 +10875,6 @@ Similar caches are created as \autoref{tab:cid-cache},
 if you specified \texttt{cid} key in \cs{jfont}
 to use other CID-keyed non-embedded fonts for Chinese or Korean,
 as in Page~\pageref{para-cid}.
-
-\item[extra\_***.lua]
-This file stores the table which stores the following.
-\begin{itemize}
- \item unicode variants in a font ``\texttt{***}''
- \item vertical width of glyphs, if it is not equal to the sum of
-the height of ascender and the depth of descender
- \item vertical variants
-\end{itemize}
-The following is the structure of the that table.
 %</en>
 
 \begin{table}[!tb]
@@ -10311,35 +10889,13 @@ The following is the structure of the that table.
 \midrule
 Adobe-Japan1-*&ltj-cid-auto-adobe-japan1.lua&UniJIS2004-UTF32-*&Adobe-Japan1-UCS2\\
 Adobe-Korea1-*&ltj-cid-auto-adobe-korea1.lua&UniKS-UTF32-*&Adobe-Korea1-UCS2\\
+Adobe-KR-*&ltj-cid-auto-adobe-kr.lua&UniAKR-UTF32-*&Adobe-KR-UCS2\\
 Adobe-GB1-*&ltj-cid-auto-adobe-gb1.lua&UniGB-UTF32-*&Adobe-GB1-UCS2\\
 Adobe-CNS1-*&ltj-cid-auto-adobe-cns1.lua&UniCNS-UTF32-*&Adobe-CNS1-UCS2\\
 \bottomrule
 \end{tabular}
 \end{table}
 
-\begin{lstlisting}
-return {
- {
-  [10955]={    -- U+2ACB "Subset Of Above Not Equal To"
-   [65024]=983879, -- <2ACB FE00>
-   ["vwidth"]=0.98, -- vertical width
-  },
-  [37001]={    -- U+9089 "邉"
-   [0]=37001,  --   <9089 E0100>
-   991049,     --   <9089 E0101>
-   ...
-   ["vform"]=995025, -- vertical variant
-  },
-  ...
-  ["unicodes"]={
-    ["aj102.pe.vert"]=984163, -- glyph name to unicode
-    ...
-  }
- },
- ["chksum"]="FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF", -- checksum of the fontfile
- ["version"]=11, -- version of the cache
-}
-\end{lstlisting}
 %<*ja>
 \item[ltj-jisx0208.\{luc|lub\}]
 \LuaTeX-ja配布中の\texttt{ltj-jisx0208.lua}をバイナリ化したものである.
@@ -10635,6 +11191,51 @@ direction~whatsit内部のノードリストに,\textit{dir\_box}として格
  }
 \]
 のようになる.
+
+\subsection{縦組用字形の取得}
+縦組時には,「\hbox to \zw{、}」(\texttt{U+3001})から「\ltjjachar"FE11」(\texttt{U+FE11})%"
+のように縦組用字形への置き換えに関係する処理は,以下のようになっている.
+  \begin{itemize}
+       \item 各縦組用和文フォントは読み込み時に以下の属性が設定される:
+       \begin{description}
+         \item[\textit{vert\_activated}] 真となるのは,
+         明示的に \texttt{-vert} も \texttt{-vrt2} のいずれも指定されていないちょうどその時.
+         \item[\textit{auto\_enable\_vrt2}] 真となるのは,
+         \texttt{vert}, \texttt{vrt2}のいずれについても有効・無効が指定されていないちょうどその時.
+       \end{description}
+       \textit{vert\_activated}については\texttt{luatexja.define\_jfont}コールバックで渡される引数
+       \texttt{jfont\_info}から取得可能である.
+
+       \item \textit{auto\_enable\_vrt2}が真の場合は,現在のscript tagとlanguage system identifierの値で
+       \texttt{vrt2}機能が利用可能か調べる.利用可能ならば\texttt{vrt2}を,そうでなければ
+       \texttt{vert}を有効化する.
+       \item また,各和文フォント読み込み時には,
+       「OpenType機能による置換以前に行う縦組形への置換」を格納したテーブル\textit{vform}も作成する.
+       \begin{enumerate}
+         \item \LuaTeX-jaには,「\hbox to \zw{、}」(\texttt{U+3001})→「\ltjjachar"FE11」(\texttt{U+FE11})といった
+         いくつかの置換がハードコードされている.そのような各置換$i\longmapsto v$に対して,
+         \begin{quote}
+               置換元$i$が(あるscript, languageにおける)\texttt{vert}では置換対象でなく,
+               かつ置換先$v$がフォント内に存在する文字コードである
+         \end{quote}
+         ならば,$i\longmapsto v$を\textit{vform}に登録する.
+         \item \ref{ssec:tfont}節にある\texttt{jpotf}が指定された場合,
+         ……
+         \item もし\texttt{vert}も\texttt{vrt2}も現在のscript, languageでは有効にできない場合,
+         どこかのscript, languageにおける\texttt{vert}で定義されている
+         置換$i\longmapsto v$をすべて\textit{vform}に登録する.
+       \end{enumerate}
+       
+       あとで説明するように,\textit{vform}は\textit{vert\_activated}が真であるような縦組用和文フォントでしか
+       利用されない.
+       
+       \item 「現在の水平リスト」内の\textbf{JAchar}を(欧文フォントから)和文フォントへ置き換える処理において,
+    その時点での組方向が縦組であり,かつ処理対象の各ノードの縦組用フォントで
+       \textit{vert\_activated}が真である場合,\textit{vform}に従いグリフが置き換えられる.
+
+       \Pkg{luaotfload}が行う,OpenType機能に沿ったグリフ置換はこの後の処理となる.G
+  \end{itemize}
+
 %</ja>
 
 \newpage
@@ -10657,11 +11258,11 @@ TUG 2013, October 2013.
 Requirements for Japanese Text Layout (W3C Working Group Note), 2011, 2012. \newblock
 \url{http://www.w3.org/TR/jlreq/}%
 %<ja> \\日本語訳の書籍版:W3C日本語組版タスクフォース(編),『W3C技術ノート 日本語組版処理の要件』,東京電機大学出版局,2012.
-\bibitem{min10} 乙部厳己.min10フォントについて.\\\null\hfill
+\bibitem{min10} 乙部厳己.「min10フォントについて」\\\null\hfill
 \url{http://argent.shinshu-u.ac.jp/~otobe/tex/files/min10.pdf}
-\bibitem{x4051} 日本工業規格(Japanese Industrial Standard). JIS~X~4051,
-日本語文書の組版方法(Formatting rules for Japanese documents), 1993, 1995, 2004.
-\bibitem{ptexdoc} 濱野尚人,田村明史,倉沢良一.\TeX の出版への応用—縦組み機能の組み込み—
+\bibitem{x4051} 日本工業規格(Japanese Industrial Standard). JIS~X~4051,
+日本語文書の組版方法(Formatting rules for Japanese documents), 1993, 1995, 2004.
+\bibitem{ptexdoc} 濱野尚人,田村明史,倉沢良一.「\TeX の出版への応用—縦組み機能の組み込み—」
 \\\null\hfill\texttt{.../texmf-dist/doc/ptex/base/ptexdoc.pdf}
 \bibitem{ptextug} Hisato Hamano. \newblock
 \textit{Vertical Typesetting with \TeX}, TUGBoat~\textbf{11}(3), 346--352, 1990.
@@ -10670,6 +11271,8 @@ ISO 32000-1:2008, \textit{Document management -- Portable document format -- Par
       1.7}, 2008. \newblock
 \\\null\hfill
 \url{http://www.iso.org/iso/iso\_catalogue/catalogue_tc/catalogue\_detail.htm?csnumber=51502}
+\bibitem{tc18ltja} 北川弘典.「\LuaTeX-jaの近況」,\TeX Conf~2018.\\
+  \url{https://osdn.net/projects/luatex-ja/wiki/Documentation/attach/tc18ltja.pdf}
 \end{thebibliography}
 
 \end{document}