OSDN Git Service

Merge branch 'kmaeda-manual' into kitagawa_test
[luatex-ja/luatexja.git] / doc / manual.dtx
index 39ad3db..9355948 100644 (file)
@@ -85,7 +85,8 @@
 
 %<*en>
 \textbf{This documentation is far from complete. It may have many
-grammatical (and contextual) errors.}
+grammatical (and contextual) errors.} Also, several parts
+(especially, Section~\ref{sec-jfmglue}) are written in Japanese only.
 %</en>
 %<*ja>
 \textbf{\large 本ドキュメントはまだまだ未完成です.}
@@ -104,7 +105,7 @@ Japanese documents when using \LuaTeX.
 %</en>
 %<*ja>
 \LuaTeX-jaパッケージは,次世代標準\TeX である\LuaTeX の上で,\pTeX と同等
-/それ以上の品質の日本語組版を実現させようとするマクロパッケージである.
+それ以上の品質の日本語組版を実現させようとするマクロパッケージである.
 %</ja>
 
 %<en>\subsection{Backgrounds}
@@ -241,13 +242,12 @@ The followings are major changes from \pTeX:
       italic correction are ignored in the insertion process.
 %</en>
 %<*ja>
-\item さらに,2つの文字の間にある行末では効果を持たないノード(例えば
-      \verb+\special+ ノード)や,イタリック補正に伴い挿入されるカーンは
-      挿入処理中では無視される.
+\item さらに,2つの文字の間にある行末では効果を持たないノード(例えば \verb+\special+ ノード)や,
+  イタリック補正に伴い挿入されるカーンは挿入処理中では無視される.
 %</ja>
 
 %<*en>
-\item \emph{Caution: due to above two points, many methods which did the
+\item \emph{Caution: due to above two points, many methods which did for the
       dividing the process of the insertion of \textbf{JAglue} in \pTeX\ are not
       effective anymore.} In concrete terms, the following two methods are not effective anymore:
 %</en>
@@ -262,7 +262,7 @@ The followings are major changes from \pTeX:
       If you want to do so, please put an empty hbox between it instead:
 %</en>
 %<*ja>
-      もし同じことをやりたければ,空のhboxを間に挟めばよい:
+      もし同じことをやりたければ,空の水平ボックスを間に挟めばよい:
 %</ja>
 \begin{verbatim}
   ちょ\hbox{}っと
@@ -293,7 +293,7 @@ The followings are major changes from \pTeX:
 For detailed information, see Part~\ref{part-imp}.
 %</en>
 %<*ja>
-詳細については第 \ref{part-imp} 部を見よ
+詳細については第 \ref{part-imp} 部を参照
 %</ja>
 
 %<en>\subsection{Notations}
@@ -457,6 +457,22 @@ If you are using \TeX~Live~2011 or current W32\TeX, you don't have to worry.
 %<*ja>
 \item \LuaTeX-ja のソースアーカイブ(もちろん \texttt{:)}).
 %</ja>
+%<*en>
+\item The \Pkg{filehook} package.
+%</en>
+%<*ja>
+\item \Pkg{filehook} パッケージ.
+%</ja>
+%<*en>
+\item The \Pkg{xunicode} package, which version is \emph{just v0.981 (2011/09/09)}.\\
+If you have the \Pkg{fontspec} package, this \Pkg{xunicode} package must be exist.
+But be careful about the version; other versions may not work correctly with \LuaTeX-ja.
+%</en>
+%<*ja>
+\item \Pkg{xunicode} パッケージ (\textbf{2011/09/09,~v0.981}).\\
+\Pkg{fontspec} パッケージが導入されていればこのパッケージも導入されているはずであるが,
+この v0.981 以外のバージョンでは\LuaTeX-ja 上で正しく動作しない危険性がある.
+%</ja>
 \end{itemize}
 
 %<*en>
@@ -476,14 +492,14 @@ The installation methods are as follows:
 %<*ja>
 \item ソースアーカイブをダウンロードする.
 
-      ç\8f¾æ\99\82ç\82¹ã\81§ã\81¯ï¼\8c\LuaTeX-ja ã\81®å\85¬å¼\8fã\83ªã\83ªã\83¼ã\82¹ã\81¯ã\81¾ã\81 ã\81ªã\81\84ï¼\8eã\81\9dã\81®ã\81\9fã\82\81ï¼\8cGit ã\83¬ポジトリを
+      ç\8f¾æ\99\82ç\82¹ã\81§ã\81¯ï¼\8c\LuaTeX-ja ã\81®å\85¬å¼\8fã\83ªã\83ªã\83¼ã\82¹ã\81¯ã\81¾ã\81 ã\81ªã\81\84ï¼\8eã\81\9dã\81®ã\81\9fã\82\81ï¼\8cGit ã\83ªポジトリを
       次のようにすることで取得する必要がある:
 %</ja>
 \begin{verbatim}
 $ git clone git://git.sourceforge.jp/gitroot/luatex-ja/luatexja.git
-\end{verbatim} 
+\end{verbatim}
 %<*en>
-      or download the archive of HEAD in \texttt{master} branch from
+      or download the archive of HEAD in the \texttt{master} branch from
 %</en>
 %<*ja>
       もしくは,\texttt{master} ブランチの HEAD のアーカイブを以下からダウンロードしてもよい:
@@ -493,7 +509,7 @@ $ git clone git://git.sourceforge.jp/gitroot/luatex-ja/luatexja.git
 \end{flushleft}
 
 %<*en>
-Note that the forefront of development may not be in \texttt{master} branch.
+Note that the forefront of development may not be the \texttt{master} branch.
 %</en>
 %<*ja>
 \texttt{master} ブランチはたまにしか更新されない.
@@ -510,10 +526,15 @@ Note that the forefront of development may not be in \texttt{master} branch.
 %</ja>
 
 %<*en>
-\item Copy all the contents of \texttt{src/} into one of your \texttt{TEXMF} tree.
+\item Copy all the contents of \texttt{src/} (except \texttt{src/no\_runtime/}) into one of your \texttt{TEXMF} tree.\\
+      \texttt{TEXMF/tex/luatex/luatexja/} is an example location. 
+      Files in \texttt{src/no\_runtime/} are not required for the regular use, 
+      so you may simply remove \texttt{src/no\_runtime/}.
 %</en>
 %<*ja>
-\item \texttt{src/} の中身全てを自分の \texttt{TEXMF} ツリーにコピーする.
+\item \texttt{src/} の中身で,(\texttt{src/no\_runtime/}以外の)全てを自分の \texttt{TEXMF} ツリーにコピーする.\\
+      場所の例としては,例えば \texttt{TEXMF/tex/luatex/luatexja/} がある.
+      \texttt{src/no\_runtime/} 中のファイルは通常の使用には必要ないので,単に削除して構わない.
       シンボリックリンクが利用できる環境で,かつレポジトリを直接取得したのであれば,コピーではなく
       リンクを貼るのが適切だろう.
 %</ja>
@@ -822,23 +843,23 @@ $5\in 素:=\{\,p\in\mathbb N:\text{$p$ is a prime}\,\}$.
 %<*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 Part~\ref{part-ref}.
+this chapter. For the method, please see Subsection~\ref{ssec-math}.
 %</en>
 %<*ja>
 また \LuaTeX-ja プロジェクトでは,和文文字が識別子として用いられることはほとんどない
 と考えており,したがってこの節では数式モード中の和文フォントを変更する方法については
-記述しない.この方法については第 \ref{part-ref} 部を参照のこと.
+記述しない.この方法については \ref{ssec-math} 節を参照のこと.
 %</ja>
 
 %<*en>
 \paragraph{plain \TeX}
 To change Japanese fonts in plain \TeX, you must use the primitive
-\verb+\jfont+. So please see Part~\ref{part-ref}.
+\verb+\jfont+. So please see Subsection~\ref{ssec-jfont}.
 %</en>
 %<*ja>
 \paragraph{plain \TeX}
 plain \TeX で和文フォントを変更するためには,\verb+\jfont+ プリミティブを用いなけれ
-ばならない.第 \ref{part-ref} 部を参照せよ
+ばならない.\ref{ssec-jfont} 節を参照
 %</ja>
 
 %<*en>
@@ -848,7 +869,7 @@ For \LaTeXe, \LuaTeX-ja adopted most of the font selection system of \pLaTeXe\ (
 %<*ja>
 \paragraph{NFSS2}
 \LaTeXe については,\LuaTeX-ja ではフォント選択システムを \pLaTeXe\ (\texttt{plfonts.dtx})
-の大部分を採用している.
+の大部分をそのまま採用している.
 %</ja>
 \begin{itemize}
 %<*en>
@@ -917,11 +938,11 @@ auto select&\verb+\fontencoding+&\verb+\fontfamily+&---&---&\verb+\usefont+\\
       fonts, \emph{or both}. For detail, see Subsection~\ref{ssub-nfsspat}.
 %</en>
 %<*ja>
-      ここで,\verb+\fontencoding{<encoding>}+は,引数により和文側か欧文
+      ここで,\verb+\fontencoding{<encoding>}+ は,引数により和文側か欧文
       側かのどちらかのエンコーディングを変更する.例えば,
-      \verb+\fontencoding{JY3}+は和文フォントのエンコーディングを
+      \verb+\fontencoding{JY3}+ は和文フォントのエンコーディングを
       \texttt{JY3}に変更し,\verb+\fontencoding{T1}+ は欧文フォント側を
-      \texttt{T1}へと変更する.\verb+\fontfamily+も引数により和文側,欧文
+      \texttt{T1}へと変更する.\verb+\fontfamily+ も引数により和文側,欧文
       側,\textbf{あるいは両方}のフォントファミリを変更する.詳細は
       \ref{ssub-nfsspat}節を参照すること.
 %</ja>
@@ -933,13 +954,14 @@ auto select&\verb+\fontencoding+&\verb+\fontfamily+&---&---&\verb+\usefont+\\
       using \verb+\DeclareFontFamily+ doesn't cause any problem.
 %</en>
 %<*ja>
-\item 和文フォントファミリの定義には \verb+\DeclareFontFamily+ の代わりに
-      \verb+\DeclareKanjiFamily+ を用いる.しかし,現在の実装では
-      \verb+\DeclareFontFamily+ を用いても問題は生じない.
+\item 和文フォントファミリの定義には \verb+\DeclareFontFamily+ の
+      代わりに \verb+\DeclareKanjiFamily+ を用いる.しかし,現在の
+      実装では \verb+\DeclareFontFamily+ を用いても問題は生じない.
 %</ja>
 \end{itemize}
 
 \subsection{fontspec}
+\label{ssec-fontspec}
 %<*en>
 To coexist with the \Pkg{fontspec} package, it is needed to load
 \Pkg{luatexja-fontspec} package in the preamble. This additional
@@ -1018,41 +1040,6 @@ these 7~commands, since this feature and \textbf{JAglue} will clash (see
 feature が \textbf{JAglue} と衝突するためである(\ref{para-kern} 節を参照).
 %</ja>
 
-%<*en>
-\paragraph{Caution}
-\Pkg{xunicode} package will be reloaded during the loading of \Pkg{luatexja-fontspec} package.
-However, this reloading won't work for the current version (2011/09/09,~v0.981) of
-\Pkg{xunicode} package. Hence we have to patch it, using the following patch, for example:
-%</en>
-%<*ja>
-\paragraph{注意}
-\Pkg{luatexja-fontspec}パッケージでは,内部で \Pkg{xunicode} パッケージの再読み込みを
-行っているが, \textbf{\TeX\ Live\ 2011 他に含まれている \Pkg{xunicode} パッケージ
-(2011/09/09,~v0.981) ではその再読み込みがうまく動作せず},例えば
-以下のようなパッチを当てる必要がある:
-%</ja>
-\begin{lstlisting}
---- xunicode.sty.orig   2011-09-12 08:31:47.000000000 +0900
-+++ xunicode.sty        2011-11-16 22:06:17.061413113 +0900
-@@ -1475,7 +1475,11 @@
-
- \newtoks\tipasavetokens
- \newtoks\tipachecktokens
-+
-+\fi
- \newif\iftipaonetoken
-+\expandafter\ifx\csname ReloadXunicode\endcsname\relax
-+
- \def\tipalasttoken{!@! do nothing with this !@!}
- \def\tipacatchonechar#1{\begingroup
-  \def\textipa##1{##1}% prevent recursion
-\end{lstlisting}
-%<*ja>
-なお,上流で v0.984 (2011/10/14) でこの問題は修正されているそうです(が,2012/03/20
-現在,まだ CTAN には上がっていない).
-%</ja>
-
-
 %<en>\section{Changing Parameters}
 %<ja>\section{パラメータの変更}
 
@@ -1064,10 +1051,10 @@ parameters, you have to use commands \verb+\ltjsetparameter+ and
 \verb+\ltjgetparameter+.
 %</en>
 %<*ja>
-\LuaTeX-ja には多くのパラメータが存在する.そして \LuaTeX の振る舞いのために,
+\LuaTeX-ja には多くのパラメータが存在する.そして \LuaTeX の仕様のために,
 その多くは \TeX のレジスタにではなく,\LuaTeX-ja 独自の方法で保持されている.
-そのため,これらのパラメータを設定・取得するためには \verb+\ltjsetparameter+ と
-\verb+\ltjgetparameter+ を用いる必要がある.
+そのため,これらのパラメータを設定・取得するためには \verb+\ltjsetparameter+ と \verb+\ltjgetparameter+ を
+用いる必要がある.
 %</ja>
 
 %<en>\subsection{Editing the range of \textbf{JAchar}s}
@@ -1094,7 +1081,7 @@ This assignment of numbers to ranges are always global, so you should
 not do this in the middle of a document.
 %</en>
 %<*ja>
-この文字範囲の割り当てはいつもグローバルであり,したがって文書の途中で
+この文字範囲の割り当ては常にグローバルであり,したがって文書の途中で
 この操作をするべきではない.
 %</ja>
 
@@ -1177,7 +1164,7 @@ number shows whether characters in the range is treated as
 %</en>
 %<*ja>
 以下ではこれら8つの文字範囲について記述する.番号のあとのアルファベット `J' と `A'
\81¯ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81§ \textbf{JAchar} ã\81¨ã\81\97ã\81¦æ\89±ã\82\8fã\82\8cã\82\8bã\81\8bã\81©ã\81\86ã\81\8bã\82\92示ã\81\99.これらの設定は
\81¯ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81§ \textbf{JAchar} ã\81\8b \textbf{ALchar} ã\81\8bã\82\92表ã\81\97ã\81¦ã\81\84ã\82\8b.これらの設定は
 \texttt{PXbase} バンドルで定義されている \texttt{prefercjk} と類似のものである.
 %</ja>
 \begin{description}
@@ -1484,7 +1471,7 @@ The block list is indicated in Table~\ref{table-rng7}.
 \begin{itemize}
 %<*en>
 \item Glues/kerns specified in JFM. If \verb+\inhibitglue+ is issued
-      around a Japanese character, this glue will be not inserted at the
+      around a Japanese character, this glue will not be inserted at the
       place.
 %</en>
 %<*ja>
@@ -1492,7 +1479,7 @@ The block list is indicated in Table~\ref{table-rng7}.
       発行されていれば,このグルーは挿入されない.
 %</ja>
 %<*en>
-\item The default glue which inserted between two \textbf{JAchar}s (\Param{
+\item The default glue which inserted between two \textbf{JAchar}s (\Param{%
       kanjiskip}).
 %</en>
 %<*ja>
@@ -1527,8 +1514,8 @@ To use these data from JFM, set the value of \Param{kanjiskip} or
 %<*ja>
 JFM は「望ましい \Param{kanjiskip} の値」や「望ましい \Param{xkanjiskip} の値」を
 持っていることがある.
-これらのデータを使うためには,\Param{kanjiskip} や \Param{xkanjiskip} の値を
-\verb+\maxdimen+ の値に設定すればよい.
+これらのデータを使うためには,\Param{kanjiskip} や \Param{xkanjiskip} の
+値を \verb+\maxdimen+ の値に設定すればよい.
 %</ja>
 
 %<en>\subsection{Insertion Setting of \Param{xkanjiskip}}
@@ -1561,20 +1548,32 @@ pあq い!う
 The second argument \texttt{preonly} means `the insertion of
 \Param{xkanjiskip} is allowed before this character, but not after'.
 the other possible values are \texttt{postonly}, \texttt{allow} and \texttt{
-inhibit}. ...
+inhibit}.
 %</en>
 %<*ja>
 2つ目の引数の \texttt{preonly} は「\Param{xkanjiskip} の挿入はこの文字の
 前でのみ許され,後では許さない」ことを意味する.他に指定可能な値は
 \texttt{postonly}, \texttt{allow}, \texttt{inhibit} である.
+%</ja>
 
+%<*en>
+\Param{jaxspmode} and \Param{alxspmode} use a same table to store the parameters
+on the current version. Therefore, line 1 in the code above can be rewritten
+as follows:
+%</en>
+%<*ja>
 なお,現行の
 仕様では,\Param{jaxspmode}, \Param{alxspmode} はテーブルを共有しており,
-上のソースの1行目を次のように変えても同じことになる:
+上のコードの1行目を次のように変えても同じことになる:
+%</ja>
 \begin{verbatim}
 \ltjsetparameter{alxspmode={`あ,preonly}, jaxspmode={`\!,postonly}}
 \end{verbatim}
-また,これら2パラメータには数値で値を指定することもできる(第\ref{part-ref}部を参照).
+%<*en>
+One can use also numbers to specify these two parameters (see Subsection \ref{ssec-param}).
+%</en>
+%<*ja>
+また,これら2パラメータには数値で値を指定することもできる(\ref{ssec-param} 節を参照).
 %</ja>
 
 %<*en>
@@ -1696,6 +1695,7 @@ For example, the following sets banner as `\texttt{filename (YYYY-MM-DD hh:mm)}'
 %<ja>\section{フォントメトリックと和文フォント}
 %<en>\subsection{\texttt{\char92jfont} primitive}
 %<ja>\subsection{\texttt{\char92jfont} プリミティブ}
+\label{ssec-jfont}
 
 %<*en>
 To load a font as a Japanese font, you must use the
@@ -1884,11 +1884,12 @@ TODO: kanjiskip?
 
 %<en>\subsection{Prefix \texttt{psft}}
 %<ja>\subsection{\texttt{psft} プレフィックス}
+\label{ssec-psft}
 %<*en>
 Besides \texttt{file:}\ and \texttt{name:}\ prefixes, one can use \texttt{psft:}\
 prefix in \verb+\jfont+ (and~\verb+\font+) primitive,
 to specify a `name-only' Japanese font which
-will be not embedded to PDF. Typical use of this prefix is to specify
+will not be embedded to PDF. Typical use of this prefix is to specify
 the `standard' Japanese fonts, namely, `Ryumin-Light' and
 `GothicBBB-Medium'. For kerning or other information, that of Kozuka
 Mincho Pr6N Regular (this is a font by Adobe Inc., and included in
@@ -2257,10 +2258,10 @@ The following is the list of `imaginary characters':
 \item 上に述べた特殊文字は,\texttt{'boxbdd'}を除き文字クラスを全部0とする
       (JFM中に単に書かなければよい).
 \item \texttt{'boxbdd'}については,それのみで一つの文字クラスを形成し,その
-      文字クラスに関してはglue/kernの設定はしない.
+      文字クラスに関してはグルー/カーンの設定はしない.
 
 これは,\pTeX では,
-      hboxの先頭・末尾とインデントされていない(\verb+\noindent+で開始さ
+      水平ボックスの先頭・末尾とインデントされていない(\verb+\noindent+で開始さ
       れた)段落の先頭にはJFMグルーは入らないという仕様を実現させるためである.
 \item \pTeX の組版を再現させようというのが目的であれば以上の注意を守れば十分である.
 
@@ -2287,6 +2288,7 @@ The following is the list of `imaginary characters':
 
 %<en>\subsection{Math Font Family}
 %<ja>\subsection{数式フォントファミリ}
+\label{ssec-math}
 
 %<*en>
 \TeX\ handles fonts in math formulas by 16~font families\footnote{Omega,
@@ -2562,13 +2564,24 @@ Then, the position of glyphs is shifted up by
 %<ja>\section{パラメータ}
 %<en>\subsection{\texttt{\char92 ltjsetparameter} primitive}
 %<ja>\subsection{\texttt{\char92 ltjsetparameter} プリミティブ}
+
+%<*en>
 As noted before, \verb+\ltjsetparameter+ and \verb+\ltjgetparameter+ are
 primitives for accessing most parameters of \LuaTeX-ja. One of the main
 reason that \LuaTeX-ja didn't adopted the syntax similar to that of \pTeX\
 (\textit{e.g.},~\verb+\prebreakpenalty`)=10000+)
 is the position of \verb+hpack_filter+ callback in the source
 of \LuaTeX, see Section~\ref{sec-para}.
+%</en>
+%<*ja>
+先に述べたように,\verb+\ltjsetparameter+ と \verb+\ltjgetparameter+ は
+\LuaTeX-ja のほとんどのパラメータにアクセスするためのプリミティブである.
+\LuaTeX-ja が \pTeX のような文法(例えば,\verb+\prebreakpenalty`)=10000+)を
+採用しない理由の一つは,\LuaTeX のソースにおける \verb+\hpack_filter+
+コールバックの位置にある.\ref{sec-para} 節を参照.
+%</ja>
 
+%<*en>
 \verb+\ltjsetparameter+ and \verb+\ltjglobalsetparameter+ are primitives
 for assigning parameters. These take one argument which is a
 \texttt{<key>=<value>} list. Allowed keys are described in the next
@@ -2580,46 +2593,106 @@ scope of assignment;
 \verb+\ltjglobalsetparameter+ does a global one.
 They also obey the value of \verb+\globaldefs+,
 like other assignment.
+%</en>
+%<*ja>
+\verb+\ltjsetparameter+ と \verb+\ltjglobalsetparameter+ はパラメータを
+指定するためのプリミティブである.これらは \texttt{<key>=<value>} のリストを
+引数としてとる.許されるキーは次の節に記述する.
+\verb+\ltjsetparameter+ と \verb+\ltjglobalsetparameter+ の違いはスコープの
+違いのみである.
+\verb+\ltjsetparameter+ はローカルな指定,\verb+\ltjglobalsetparameter+ は
+グローバルな指定を行う.
+これらは他のパラメータ指定と同様に \verb+\globaldefs+ の値に従う.
+%</ja>
 
+%<*en>
 \verb+\ltjgetparameter+ is the primitive for acquiring parameters. It
 always takes a parameter name as first argument, and also takes the
 additional argument---a character code, for example---in some cases.
+%</en>
+%<*ja>
+\verb+\ltjgetparameter+ はパラメータの値を取得するためのプリミティブであり,
+常にパラメータの名前を第一引数にとる.
+そして,いくつかの場合には加えてさらに引数(例えば文字コード)をとる.
+%</ja>
 \begin{LTXexample}
 \ltjgetparameter{differentjfm},
 \ltjgetparameter{autospacing},
 \ltjgetparameter{prebreakpenalty}{`)}.
 \end{LTXexample}
+%<*en>
 \emph{The return value of\/ {\normalfont\tt\char92ltjgetparameter} is
 always a string}. This is outputted by \texttt{tex.write()}, so any
 character other than space~`\texttt{\char32}'~(U+0020) has the category code
 12~(other), while the space has 10~(space).
+%</en>
+%<*ja>
+\textbf{{\normalfont\tt\char92ltjgetparameter} の戻り値は常に文字列である.}
+これは \texttt{tex.write()} によって出力しているためで,スペース `\texttt{\char32}'~(U+0020) を除いた文字のカテゴリーコードは全て 12~(other) となる.
+一方,スペースのカテゴリーコードは 10~(space) である.
+%</ja>
 
 %<en>\subsection{List of Parameters}
 %<ja>\subsection{パラメータ一覧}
+\label{ssec-param}
+
+%<*en>
 The following is the list of parameters which can be specified by the
 \verb+\ltjsetparameter+ command. [\verb+\cs+] indicates the counterpart
 in \pTeX, and symbols beside each parameter has the following meaning:
+%</en>
+%<*ja>
+以下は \verb+\ltjsetparameter+ に指定することができるパラメータの一覧である.
+[\verb+\cs+] は \pTeX における対応物を示す.
+また,それぞれのパラメータの右上にある記号には次の意味がある:
+%</ja>
 \begin{itemize}
+%<*en>
 \item No mark: values at the end of the paragraph or the hbox are
       adopted in the whole paragraph/hbox.
+%</en>
+%<*ja>
+\item 記号なし:段落や水平ボックスの終端での値がその段落/水平ボックス全体で用いられる.
+%</ja>
+%<*en>
 \item `\ast' : local parameters, which can change everywhere inside a paragraph/hbox.
+%</en>
+%<*ja>
+\item `\ast':ローカルなパラメータであり,段落/水平ボックス内のどこででも値を変えることができる.
+%</ja>
+%<*en>
 \item `\dagger': assignments are always global.
+%</en>
+%<*ja>
+\item `\dagger':指定は常にグローバルになる.
+%</ja>
 \end{itemize}
 
 \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}\advance\leftmargin1\zw}
 \item[\Param{jcharwidowpenalty}\,=<penalty>] [\verb+\jcharwidowpenalty+]
-
+%<*en>
 Penalty value for suppressing orphans. This penalty is inserted just
             after the last \textbf{JAchar} which is not regarded as a
             (Japanese) punctuation mark.
+%</en>
+%<*ja>
+パラグラフの最後の字が孤立して改行されるのを防ぐためのペナルティの値.
+このペナルティは(日本語の)句読点として扱われない最後の \textbf{JAchar} の直後に
+挿入される.
+%</ja>
 
 \item[\Param{kcatcode}\,=\{<chr\_code>,<natural number>\}]\
-
-An additional attributes having each character whose character code is <chr\_code>.
+%<*en>
+An additional attributes which each character whose character code is <chr\_code> has.
 At the present version, the lowermost bit of <natural number> indicates
             whether the character is considered as a punctuation mark
             (see the description of \Param{jcharwidowpenalty} above).
-
+%</en>
+%<*ja>
+文字コードが <chr\_code> の文字が持つ付加的な属性値 (attribute).
+現在のバージョンでは,<natural number> の最下位ビットが,その文字が句読点と
+みなされるかどうかを表している(上の \Param{jcharwidowpenalty} の記述を参照).
+%</ja>
 
 \item[\Param{prebreakpenalty}\,=\{<chr\_code>,<penalty>\}] [\verb+\prebreakpenalty+]\
 %<*ja>
@@ -2653,43 +2726,76 @@ At the present version, the lowermost bit of <natural number> indicates
 という制限があったが,\LuaTeX-ja ではこれらの制限は解消されている.
 %</ja>
 
-\item[\Param{jatextfont}\,=\{<jfam>,<jfont\_cs>\}] [\verb+\textfont+ in \TeX]
-\item[\Param{jascriptfont}\,=\{<jfam>,<jfont\_cs>\}] [\verb+\scriptfont+ in \TeX]
-\item[\Param{jascriptscriptfont}\,=\{<jfam>,<jfont\_cs>\}] [\verb+\scriptscriptfont+ in \TeX]
+\item[\Param{jatextfont}\,=\{<jfam>,<jfont\_cs>\}]
+%<en>[\verb+\textfont+ in \TeX]
+%<ja>[\TeX の \verb+\textfont+]
+\item[\Param{jascriptfont}\,=\{<jfam>,<jfont\_cs>\}]
+%<en>[\verb+\scriptfont+ in \TeX]
+%<ja>[\TeX の \verb+\scriptfont+]
+\item[\Param{jascriptscriptfont}\,=\{<jfam>,<jfont\_cs>\}]
+%<en>[\verb+\scriptscriptfont+ in \TeX]
+%<ja>[\TeX の \verb+\scriptscriptfont+]
 \item[\Param{yjabaselineshift}\,=<dimen>$^\ast$]\
 \item[\Param{yalbaselineshift}\,=<dimen>$^\ast$] [\verb+\ybaselineshift+]
 
 \item[\Param{jaxspmode}\,=\{<chr\_code>,<mode>\}]
 
-Setting whether inserting  \Param{xkanjiskip} is allowed before/after a \textbf{JAchar} whose character code is <chr\_code>.
+%<*en>
+Setting whether inserting \Param{xkanjiskip} is allowed before/after a \textbf{JAchar} whose character code is <chr\_code>.
 The followings are allowed for <mode>:
+%</en>
+%<*ja>
+文字コードが <chr\_code> の \textbf{JAchar} の前/後ろに \Param{xkanjiskip} の
+挿入を許すかどうかの設定.
+以下の <mode> が許される:
+%</ja>
 \begin{description}
-\item[0, \texttt{inhibit}] Insertion of \Param{xkanjiskip} is inhibited before the character, nor after the character.
-\item[1, \texttt{preonly}] Insertion of \Param{xkanjiskip} is allowed before the character, but not after.
-\item[2, \texttt{postonly}] Insertion of \Param{xkanjiskip} is allowed after the character, but not before.
-\item[3, \texttt{allow}] Insertion of \Param{xkanjiskip} is allowed before the character and after the character.
-This is the default value.
+%<en>\item[0, \texttt{inhibit}] Insertion of \Param{xkanjiskip} is inhibited before the character, nor after the character.
+%<ja>\item[0, \texttt{inhibit}] \Param{xkanjiskip} の挿入は文字の前/後ろのいずれでも禁止される.
+%<en>\item[1, \texttt{preonly}] Insertion of \Param{xkanjiskip} is allowed before the character, but not after.
+%<ja>\item[1, \texttt{preonly}] \Param{xkanjiskip} の挿入は文字の前では許されるが,後ろでは許されない.
+%<en>\item[2, \texttt{postonly}] Insertion of \Param{xkanjiskip} is allowed after the character, but not before.
+%<ja>\item[2, \texttt{postonly}] \Param{xkanjiskip} の挿入は文字の後ろでは許されるが,前では許されない.
+%<en>\item[3, \texttt{allow}] Insertion of \Param{xkanjiskip} is allowed both before the character and after the character. This is the default value.
+%<ja>\item[3, \texttt{allow}] \Param{xkanjiskip} の挿入は文字の前/後ろのいずれでも許される.これがデフォルトの値である.
 \end{description}
+%<*en>
 This parameter is similar to the \verb+\inhibitxspcode+ primitive of \pTeX, but not compatible with \verb+\inhibitxspcode+.
-
+%</en>
+%<*ja>
+このパラメータは \pTeX の \verb+\inhibitxspcode+ プリミティブと似ているが,
+互換性はない.
+%</ja>
 
 \item[\Param{alxspmode}\,=\{<chr\_code>,<mode>\}] [\verb+\xspcode+]
 
+%<*en>
 Setting whether inserting \Param{xkanjiskip} is allowed before/after a
             \textbf{ALchar} whose character code is <chr\_code>.
-The followings are allowed for <mode>:
+             The followings are allowed for <mode>:
+%</en>
+%<*ja>
+文字コードが <chr\_code> の \textbf{ALchar} の前/後ろに \Param{xkanjiskip} の
+挿入を許すかどうかの設定.
+以下の <mode> が許される:
+%</ja>
 \begin{description}
-\item[0, \texttt{inhibit}] Insertion of \Param{xkanjiskip} is inhibited
-          before the character, nor after the character.
-\item[1, \texttt{preonly}] Insertion of \Param{xkanjiskip} is allowed
-          before the character, but not after.
-\item[2, \texttt{postonly}] Insertion of \Param{xkanjiskip} is allowed
-          after the character, but not before.
-\item[3, \texttt{allow}] Insertion of \Param{xkanjiskip} is allowed both
-          before the character and after the character.
-This is the default value.
+%<en>\item[0, \texttt{inhibit}] Insertion of \Param{xkanjiskip} is inhibited before the character, nor after the character.
+%<ja>\item[0, \texttt{inhibit}] \Param{xkanjiskip} の挿入は文字の前/後ろのいずれでも禁止される.
+%<en>\item[1, \texttt{preonly}] Insertion of \Param{xkanjiskip} is allowed before the character, but not after.
+%<ja>\item[1, \texttt{preonly}] \Param{xkanjiskip} の挿入は文字の前では許されるが,後ろでは許されない.
+%<en>\item[2, \texttt{postonly}] Insertion of \Param{xkanjiskip} is allowed after the character, but not before.
+%<ja>\item[2, \texttt{postonly}] \Param{xkanjiskip} の挿入は文字の後ろでは許されるが,前では許されない.
+%<en>\item[3, \texttt{allow}] Insertion of \Param{xkanjiskip} is allowed before the character and after the character. This is the default value.
+%<ja>\item[3, \texttt{allow}] \Param{xkanjiskip} の挿入は文字の前/後ろのいずれでも許される.これがデフォルトの値である.
 \end{description}
+%<*en>
 Note that parameters \Param{jaxspmode} and \Param{alxspmode} use a common table, hence these two parameters are synonyms of each other.
+%</en>
+%<*ja>
+\Param{jaxspmode} と \Param{alxspmode} は共通のテーブルを用いているため,
+これら2つのパラメータは互いの異名となっていることに注意する.
+%</ja>
 
 \item[\Param{autospacing}\,=<bool>$^\ast$] [\verb+\autospacing+]
 \item[\Param{autoxspacing}\,=<bool>$^\ast$] [\verb+\autoxspacing+]
@@ -2698,8 +2804,15 @@ Note that parameters \Param{jaxspmode} and \Param{alxspmode} use a common table,
 
 \item[\Param{differentjfm}\,=<mode>$^\dagger$]
 
+%<*en>
 Specify how glues/kerns between two \textbf{JAchar}s whose JFM (or size) are different.
 The allowed arguments are the followings:
+%</en>
+%<*ja>
+JFM(もしくはサイズ)が異なる2つの \textbf{JAchar} の間にグルー/カーンをどのように
+入れるかを指定うる.
+許される値は以下の通り:
+%</ja>
 \begin{description}
 \item[\texttt{average}]
 \item[\texttt{both}]
@@ -2716,7 +2829,13 @@ The allowed arguments are the followings:
 %<ja>\section{その他のプリミティブ}
 %<en>\subsection{Primitives for Compatibility}
 %<ja>\subsection{互換プリミティブ}
+
+%<*en>
 The following primitives are implemented for compatibility with \pTeX:
+%</en>
+%<*ja>
+以下のプリミティブは \pTeX との互換性のために実装されている:
+%</ja>
 \begin{list}{}{\def\makelabel{\ttfamily\char92 }\advance\leftmargin1\zw}
 \item[kuten]
 \item[jis]
@@ -2725,11 +2844,20 @@ The following primitives are implemented for compatibility with \pTeX:
 \item[ucs]
 \item[kansuji]
 \end{list}
+
 %<en>\subsection{\texttt{\char92 inhibitglue} primitive}
 %<ja>\subsection{\texttt{\char92 inhibitglue} プリミティブ}
+
+%<*en>
 The primitive \verb+\inhibitglue+ suppresses the insertion of \textbf{JAglue}.
 The following is an example, using a special JFM that there will be a glue between
 the beginning of a box and `あ', and also between `あ' and `ウ'.
+%</en>
+%<*ja>
+\verb+\inhibitglue+ プリミティブは \textbf{JAglue} の挿入を抑制する.
+以下は,ボックスの始めと`あ'の間,`あ'と`ウ'の間にグルーが入る特別な JFM を用いた例で
+ある.
+%</ja>
 
 \begin{LTXexample}
 \jfont\g=psft:Ryumin-Light:jfm=test \g
@@ -2740,44 +2868,99 @@ the beginning of a box and `あ', and also between `あ' and `ウ'.
 \par\inhibitglue\hrule あoff\inhibitglue ice
 \end{LTXexample}
 
+%<*en>
 With the help of this example, we remark the specification of \verb+\inhibitglue+:
+%</en>
+%<*ja>
+この例を援用して,\verb+\inhibitglue+ の仕様について述べる.
+%</ja>
 \begin{itemize}
+%<*en>
 \item The call of \verb+\inhibitglue+ in the (internal) vertical mode is
       effective at the beginning of the next paragraph. This is realized
       by hacking \verb+\everypar+.
+%</en>
+%<*ja>
+\item \verb+\inhibitglue+ の垂直モード中での呼び出しは次の段落の始めで効力を持つ.
+  これは \verb+\everypar+ のハックによって実現されている.
+%</ja>
+
+%<*en>
 \item The call of \verb+\inhibitglue+ in the (restricted) horizontal
       mode is only effective on the spot; does not get over boundary of
       paragraphs. Moreover, \verb+\inhibitglue+ cancels ligatures and
       kernings, as shown in line~4 of above example.
+%</en>
+%<*ja>
+\item \verb+\inhibitglue+ の(制限された)水平モード中での呼び出しはその場でのみ
+  有効であり,段落の境界を乗り越えない.
+  さらに,\verb+\inhibitglue+ は上の例の4行目のようにリガチャとカーニングを
+  打ち消す.
+%</ja>
+
+%<*en>
 \item The call of \verb+\inhibitglue+ in math mode is just ignored.
+%</en>
+%<*ja>
+\item \verb+\inhibitglue+ を数式モード中で呼び出した場合はただ無視される.
+%</ja>
 \end{itemize}
 
 %<en>\section{Control Sequences for \LaTeXe}
 %<ja>\section{\LaTeXe 用のコントロールシーケンス}
+
 %<en>\subsection{Patch for NFSS2}
 %<ja>\subsection{NFSS2 へのパッチ}
 \label{ssub-nfsspat}
+
+%<*en>
 As described in Subsection~\ref{ssec-ltx}, \LuaTeX-ja simply adopted
 \texttt{plfonts.dtx} in \pLaTeXe\ for the Japanese patch for NFSS2.
 For an convenience, we will describe
 commands which are not described in Subsection~\ref{ssub-chgfnt}.
+%</en>
+%<*ja>
+\ref{ssec-ltx} 節で述べたように,\LuaTeX-ja は NFSS2 への日本語パッチである
+\pLaTeXe の \texttt{plfonts.dtx} を単純に取り入れている.
+便宜のため,ここでは \ref{ssub-chgfnt} 節で述べていなかったコマンドについて
+記述しておく.
+%</ja>
 
 \begin{cslist}%
 \item[DeclareYokoKanjiEncoding\{<encoding>\}\{<text-settings>\}\{<math-settings>\}]
+
+%<*en>
 In NFSS2 under \LuaTeX-ja, distinction between alphabetic font families
-            and Japanese font families is only made by its
-            encoding. For example, encodings OT1 and T1 are for
+            and Japanese font families are only made by their
+            encodings. For example, encodings OT1 and T1 are for
             alphabetic font families, and a Japanese font family cannot
             have these encodings. This command defines a new encoding
             scheme for Japanese font family (in horizontal direction).
+%</en>
+%<*ja>
+\LuaTeX-ja の NFSS2 においては,欧文フォントファミリと和文フォントファミリは
+そのエンコーディングからのみ作られる.
+例えば,OT1 と T1 のエンコーディングは欧文フォントファミリに対するものであり,
+和文フォントファミリはこれらのエンコーディングを持つことはできない.
+このコマンドは和文フォントファミリ(横書き用)のための新しいエンコーディングを
+定義する.
+%</ja>
 
 \item[DeclareKanjiEncodingDefaults\{<text-settings>\}\{<math-settings>\}]
 \item[DeclareKanjiSubstitution\{<encoding>\}\{<family>\}\{<series>\}\{<shape>\}]
 \item[DeclareErrorKanjiFont\{<encoding>\}\{<family>\}\{<series>\}\{<shape>\}\{<size>\}]
 
+%<*en>
 The above 3~commands are just the counterparts for \verb+DeclareFontEncodingDefaults+ and~others.
+%</en>
+%<*ja>
+上記3つのコマンドはちょうど \verb+DeclareFontEncodingDefaults+ などに対応するものである.
+%</ja>
 
 \item[reDeclareMathAlphabet\{<unified-cmd>\}\{<al-cmd>\}\{<ja-cmd>\}]
+
+% ToDo: en
+%<*ja>
 和文・欧文の数式用フォントファミリを一度に変更する命令を作成する.
 具体的には,欧文数式用フォントファミリ変更の命令<al-cmd> (\verb+\mathrm+等)と,和文数式用フォ
             ントファミリ変更の命令<ja-cmd>(\verb+\mathmc+等)の2つを同時に行う命令として
@@ -2797,6 +2980,7 @@ The above 3~commands are just the counterparts for \verb+DeclareFontEncodingDefa
 両命令の内容を再定義しても,<unified-cmd>の内容にそれは反映されない.
 \item <al-cmd>,~<ja-cmd>に\verb+\@mathrm+などと \texttt{@} をつけた命令を指定した時の動作は保証できない.
 \end{itemize}}
+%</ja>
 
 \item[DeclareRelationFont\{<ja-encoding>\}\{<ja-family>\}\{<ja-series>\}\{<ja-shape>\}\\
   \hfill\{<al-encoding>\}\{<al-family>\}\{<al-series>\}\{<al-shape>\}]
@@ -2809,47 +2993,106 @@ with respect to a Japanese font family given by the former 4~arguments.
 そのフォントに対応する「従属欧文」フォントファミリを後半の4引数により与える.
 %</ja>
 \item[SetRelationFont]
+%<*en>
 This command is almost same as \verb+\DeclareRelationFont+, except that this command does a local
 assignment, where \verb+\DeclareRelationFont+ does a global assignment.
+%</en>
+%<*ja>
+このコマンドは \verb+\DeclareRelationFont+ とローカルな指定であることを除いて
+ほとんど同じである(\verb+\DeclareRelationFont+ はグローバル).
+%</ja>
+
 \item[userelfont]
+%<*en>
 Change current alphabetic font encoding/family/\dots\ to the `accompanied' alphabetic
             font family with respect to current Japanese font family,
             which was set by
-            \verb+\DeclareRelationFont+ or \verb+SetRelationFont+.
+            \verb+\DeclareRelationFont+ or \verb+\SetRelationFont+.
 Like \verb+\fontfamily+, \verb+\selectfont+ is required to take an effect.
+%</en>
+%<*ja>
+現在の欧文フォントエンコーディング/ファミリ/…… を,
+\verb+\DeclareRelationFont+ か \verb+\SetRelationFont+ で指定された
+現在の和文フォントファミリに対応する「従属欧文」フォントファミリに変更する.
+\verb+\fontfamily+ のように,有効にするためには \verb+\selectfont+ が必要である.
+%</ja>
 
 \item[adjustbaseline]
 ...
 
 \item[fontfamily\{<family>\}]
 {\let\item\origitem
+%<*en>
 As in \LaTeXe, this command changes current font family (alphabetic, Japanese,~\emph{or both})
 to <family>. Which family will be changed is determined as follows:
+%</en>
+%<*ja>
+元々の \LaTeXe におけるものと同様に,このコマンドは現在のフォントファミリ(欧文,
+和文,\textbf{もしくは両方})を <family> に変更する.
+どのファミリが変更されるかは以下のようにして決定される:
+%</ja>
 \begin{itemize}
+%<*en>
 \item Let current encoding scheme for Japanese fonts be
       <ja-enc>. Current Japanese font family will be changed to
       <family>, if one of the following two conditions is met:
+%</en>
+%<*ja>
+\item 現在の和文フォントに対するエンコーディングが <ja-enc> であるとしよう.
+  現在の和文フォントファミリは,以下の2つの条件のうちの1つが満たされているときに
+  <family> に変更される:
+%</ja>
 \begin{itemize}
-\item The family <fam> under the encoding <ja-enc> is already defined by
+%<*en>
+\item The family <fam> under the encoding <ja-enc> has been already defined by
       \verb+\DeclareKanijFamily+.
+%</en>
+%<*ja>
+\item エンコーディング <ja-enc> におけるファミリ <fam> が既に \verb+\DeclareKanjiFamily+ によって定義されている.
+%</ja>
+%<*en>
 \item A font definition named \texttt{<enc><ja-enc>.fd} (the file name is
       all lowercase) exists.
+%</en>
+%<*ja>
+\item フォント定義ファイル \texttt{<enc><ja-enc>.fd}(ファイル名は全て小文字)が存在する.
+%</ja>
 \end{itemize}
-\item Let current encoding scheme for Japanese fonts be
+%<*en>
+\item Let current encoding scheme for alphabetic fonts be
       <al-enc>. For alphabetic font family, the criterion as above is used.
+%</en>
+%<*ja>
+\item 現在の欧文フォントに対するエンコーディングを <al-enc> とする.
+  欧文フォントファミリに対しても,上記の基準が用いられる.
+%</ja>
+%<*en>
 \item There is a case which none of the above applies, that is, the font
       family named <family> doesn't seem to be defined neither under the
       encoding <ja-enc>, nor under <al-enc>.
-
 In this case, the default family for font substitution is used for
       alphabetic and Japanese fonts. Note that current encoding will not
       be set to <family>, unlike the original implementation in \LaTeX.
+%</en>
+%<*ja>
+\item 上記のいずれもが適用されない,つまり <family> が <ja-enc> と <al-enc> の
+  どちらでも定義されないような場合がある.
+  この場合,代替フォントに用いられるデフォルトのフォントファミリが欧文フォントと
+  和文フォントに用いられる.\LaTeX のオリジナルの実装とは異なり,
+  現在のエンコーディングは <family> には設定されないことに注意する.
+%</ja>
 \end{itemize}
 }
 \end{cslist}
 
+%<*en>
 As closing this subsection, we shall introduce an example of
-\verb+SetRelationFont+ and \verb+\userelfont+:
+\verb+\SetRelationFont+ and \verb+\userelfont+:
+%</en>
+%<*ja>
+この節の終わりに,\verb+\SetRelationFont+ と \verb+\userelfont+ の例を
+紹介しておこう.
+%</ja>
 \begin{LTXexample}
 \gtfamily{}あいうabc
 \SetRelationFont{JY3}{gt}{m}{n}{OT1}{pag}{m}{n}
@@ -2859,40 +3102,128 @@ As closing this subsection, we shall introduce an example of
 
 %<en>\subsection{Cropmark/`tombow'}
 %<ja>\subsection{トンボ}
+% ToDo
 
 %<en>\section{Extensions}
 %<ja>\section{拡張}
 \subsection{\texttt{luatexja-fontspec.sty}}
 
+%<*en>
+As described in Subsection~\ref{ssec-fontspec}, this optional package
+provides the counterparts for several commands defined in the
+\Pkg{fontspec} package.
+In addition to `font features' in the original \Pkg{fontspec},
+the following `font features' specifications are allowed for
+the commands of Japanese version:
+%</en>
+%<*ja>
+\ref{ssec-fontspec} 節で述べたように,この追加パッケージは \Pkg{fontspec}
+パッケージで定義されているコマンドに対応する和文フォント用のコマンドを提供する.
+オリジナルの \Pkg{fontspec} での `font feature' に加えて,和文版のコマンドには
+以下の `font feature' を指定することができる:
+%</ja>
+
+
+\begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}\advance\leftmargin1\zw}
+\item[JFM=<name>]
+\item[JFM-var=<name>]
+
+%<*en>
+These 2 font features correspond to \texttt{jfm} and \texttt{jfmvar} keys for
+\verb+\jfont+ primitive, respectively. See Subsection~\ref{ssec-jfont}.
+%</en>
+%<*ja>
+これらの2つはそれぞれ \verb+\jfont+ プリミティブに対する
+\texttt{jfm}, \texttt{jfmvar} キーとそれぞれ対応する.
+\ref{ssec-jfont} 節を参照.
+%</ja>
+
+\item[NoEmbed]
+%<*en>
+By specifying this font feature, you can use `name-only' Japanese font which
+will not be embedded in the output PDF file. See Subsection~\ref{ssec-psft}.
+%</en>
+%<*ja>
+これを指定することで,PDF に埋め込まれない「名前だけ」のフォントを指定することが
+できる.\ref{ssec-psft} 節を参照.
+%</ja>
+\end{list}
+
 \subsection{\texttt{luatexja-otf.sty}}
+
+%<*en>
 This optional package supports typesetting characters in
 Adobe-Japan1. \texttt{luatexja-otf.sty} offers the following 2~low-level
 commands:
+%</en>
+%<*ja>
+この追加パッケージは Adobe-Japan1 の文字の出力をサポートする.
+\texttt{luatexja-otf.sty} は以下の2つの低レベルコマンドを提供する:
+%</ja>
 \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}\advance\leftmargin1\zw}
 \item[\char92CID\{<number>\}]
+%<*en>
 Typeset a character whose CID number is <number>.
+%</en>
+%<*ja>
+CID 番号が <number> の文字を出力する.
+%</ja>
+
 \item[\char92UTF\{<hex\_number>\}]
+%<*en>
 Typeset a character whose character code is <hex\_number> (in hexadecimal).
 This command is similar to \verb+\char"+<hex\_number>,\ %"
 but please remind remarks below.
+%</en>
+%<*ja>
+文字コードが(16進で)<hex\_number> の文字を出力する.
+このコマンドは \verb+\char"+<hex\_number> と似ているが,下の記述に注意すること.%"
+%</ja>
 \end{list}
 
-\paragraph{Remarks}
+%<en>\paragraph{Remarks}
+%<ja>\paragraph{注意}
+%<*en>
 Characters by \verb+\CID+ and \verb+\UTF+ commands are different from
 ordinary characters in the following points:
+%</en>
+%<*ja>
+\verb+\CID+ と \verb+\UTF+ コマンドによって出力される文字は
+以下の点で通常の文字と異なる:
+%</ja>
 \begin{itemize}
+%<*en>
 \item Always treated as \textbf{JAchar}s.
+%</en>
+%<*ja>
+\item 常に \textbf{JAchar} として扱われる.
+%</ja>
+%<*en>
 \item Processing codes for supporting OpenType features (\textit{e.g.},
       glyph replacement and kerning) by the \Pkg{luaotfload} package
       is not performed to these characters.
+%</en>
+%<*ja>
+\item OpenType feature(例えばグリフ置換やカーニング)をサポートするための
+  \Pkg{luaotfload} パッケージのコードはこれらの文字には働かない.
+%</ja>
 \end{itemize}
 
 
-\paragraph{Additionally Syntax of JFM}
+%<en>\paragraph{Additional Syntax of JFM}
+%<ja>\paragraph{JFM への記法の追加}
+
+%<*en>
 \texttt{luatexja-otf.sty} extends the syntax of JFM; the entries of \texttt{
 chars} table in JFM now allows a string in the form
 \verb+'AJ1-xxx'+, which stands for the character
 whose CID number in Adobe-Japan1 is \verb+xxx+.
+%</en>
+%<*ja>
+\texttt{luatexja-otf.sty} は JFM の記法を拡張する.
+JFM の \texttt{chars} テーブルのエントリとして \verb+'AJ1-xxx'+ の形の文字列が
+使えるようになる.これは Adobe-Japan1 における CID 番号が \verb+xxx+ の文字を表す.
+%</ja>
 
 %<en>\part{Implementations}
 %<ja>\part{実装}
@@ -2901,8 +3232,15 @@ whose CID number in Adobe-Japan1 is \verb+xxx+.
 %<ja>\section{パラメータの保持}
 \label{sec-para}
 %<en>\subsection{Used Dimensions, Attributes and whatsit nodes}
-%<ja>\subsection{用いられる寸法レジスタ,属性レジスタ,whatsit ノード}
+%<ja>\subsection{\LuaTeX-ja で用いられる寸法レジスタ,属性レジスタ,whatsit ノード}
+
+%<*en>
 Here the following is the list of dimensions and attributes which are used in \LuaTeX-ja.
+%</en>
+%<*ja>
+以下は \LuaTeX-ja で用いられる寸法レジスタ (dimension),属性レジスタ (attribute) の
+リストである.
+%</ja>
 \begin{list}{}{%
 \def\makelabel{\ttfamily}\advance\leftmargin1\zw
 \def\dim#1{\item[\char92 #1\ \textrm{(dimension)}]}
@@ -2910,82 +3248,294 @@ Here the following is the list of dimensions and attributes which are used in \L
 }
 
 \dim{jQ}
+%<*en>
 As explained in Subsection~\ref{ssec-plain}, \verb+\jQ+ is equal to
                        $1\,\textrm{Q}=0.25\,\textrm{mm}$, where `Q'~(also called `級') is
                        a unit used in Japanese phototypesetting. So one should not change the value of this dimension.
+%</en>
+%<*ja>
+\ref{ssec-plain} 節で述べたように,\verb+\jQ+ は $1\,\textrm{Q}=0.25\,\textrm{mm}$
+と等しい.ここで,`Q'(もしくは「級」)は日本の写植で用いられる単位である.したがって,
+この寸法レジスタの値を変更してはならない.
+%</ja>
+
 \dim{jH}
+%<*en>
 There is also a unit called `歯' which equals to $0.25\,\textrm{mm}$ and
                        used in Japanese phototypesetting. This
                        \verb+\jH+ is a synonym of \verb+\jQ+.
-\dim{ltj@zw} A temporal register for the `full-width' of current Japanese font.
-\dim{ltj@zh} A temporal register for the `full-height' (usually the sum of height of imaginary body and its depth) of current Japanese font.
-\attr{jfam} Current number of Japanese font family for math formulas.
-\attr{ltj@curjfnt} The font index of current Japanese font.
-\attr{ltj@charclass} The character class of Japanese \textit{glyph\_node}.
-\attr{ltj@yablshift} The amount of shifting the baseline of alphabetic
-                       fonts in scaled point ($2^{-16}\,\textrm{pt}$).
-\attr{ltj@ykblshift} The amount of shifting the baseline of Japanese
-                       fonts in scaled point ($2^{-16}\,\textrm{pt}$).
-\attr{ltj@autospc} Whether the auto insertion of \Param{kanjiskip} is allowed at the node.
-\attr{ltj@autoxspc} Whether the auto insertion of \Param{xkanjiskip} is allowed at the node.
-\attr{ltj@icflag} An attribute for distinguishing `kinds' of a node. One of the following value is
-                       assigned to this attribute:
+%</en>
+%<*ja>
+同じく写植で用いられていた単位として「歯」があり,これは $0.25\,\textrm{mm}$ と
+等しい.\verb+\jH+ は \verb+\jQ+ の別名である.
+%</ja>
+
+\dim{ltj@zw}
+%<*en>
+A temporal register for the `full-width' of current Japanese font.
+%</en>
+%<*ja>
+現在の和文フォントの「全角幅」を保持する一時レジスタ.
+%</ja>
+
+\dim{ltj@zh}
+%<*en>
+A temporal register for the `full-height' (usually the sum of height of imaginary body and its depth) of current Japanese font.
+%</en>
+%<*ja>
+現在の和文フォントの「全角高さ」(通常,高さと深さの和)を保持する一時レジスタ.
+%</ja>
+
+\attr{jfam}
+%<*en>
+Current number of Japanese font family for math formulas.
+%</en>
+%<*ja>
+数式用の和文フォントファミリの現在の番号.
+%</ja>
+
+\attr{ltj@curjfnt}
+%<*en>
+The font index of current Japanese font.
+%</en>
+%<*ja>
+現在の和文フォントのフォント番号.
+%</ja>
+
+\attr{ltj@charclass}
+%<*en>
+The character class of Japanese \textit{glyph\_node}.
+%</en>
+%<*ja>
+和文文字の \textit{glyph\_node} の文字クラス.
+%</ja>
+
+\attr{ltj@yablshift}
+%<*en>
+The amount of shifting the baseline of alphabetic fonts in scaled point ($2^{-16}\,\textrm{pt}$).
+%</en>
+%<*ja>
+スケールド・ポイント ($2^{-16}\,\textrm{pt}$) を単位とした欧文フォントのベースラインの移動量.
+%</ja>
+
+\attr{ltj@ykblshift}
+%<*en>
+The amount of shifting the baseline of Japanese fonts in scaled point ($2^{-16}\,\textrm{pt}$).
+%</en>
+%<*ja>
+スケールド・ポイント ($2^{-16}\,\textrm{pt}$) を単位とした和文フォントのベースラインの移動量.
+%</ja>
+
+\attr{ltj@autospc}
+%<*en>
+Whether the auto insertion of \Param{kanjiskip} is allowed at the node.
+%</en>
+%<*ja>
+そのノードで \Param{kanjiskip} の自動挿入が許されるかどうか.
+%</ja>
+
+\attr{ltj@autoxspc}
+%<*en>
+Whether the auto insertion of \Param{xkanjiskip} is allowed at the node.
+%</en>
+%<*ja>
+そのノードで \Param{xkanjiskip} の自動挿入が許されるかどうか.
+%</ja>
+
+\attr{ltj@icflag}
+%<*en>
+An attribute for distinguishing `kinds' of a node. One of the following value is
+assigned to this attribute:
+%</en>
+%<*ja>
+ノードの「種類」を区別するための属性.以下のうちのひとつが値として割り当てられる:
+%</ja>
 \begin{description}
-\item[\textit{italic} (1)] Glues from an italic correction
+\item[\textit{italic} (1)]
+%<*en>
+Glues from an italic correction
           (\verb+\/+). This distinction of origins of glues
           (from explicit \verb+\kern+, or from \verb+\/+)
           is needed in the insertion process of \Param{xkanjiskip}.
+%</en>
+%<*ja>
+イタリック補正 (\verb+\/+) によるグルー.このグルーの由来の区別(\verb+\kern+ か
+\verb+\/+ か)は \Param{xkanjiskip} の挿入過程において必要になる.
+%</ja>
+
 \item[\textit{packed} (2)]
-\item[\textit{kinsoku} (3)] Penalties inserted for the word-wrapping  process of Japanese characters (\emph{kinsoku}).
-\item[\textit{from\_jfm} (4)] Glues/kerns from JFM.
-\item[\textit{line\_end} (5)] Kerns for ...
-\item[\textit{kanji\_skip} (6)] Glues for \Param{kanjiskip}.
-\item[\textit{xkanji\_skip} (7)] Glues for \Param{xkanjiskip}.
-\item[\textit{processed} (8)] Nodes which is already processed by ...
-\item[\textit{ic\_processed} (9)] Glues from an italic correction, but also already processed.
-\item[\textit{boxbdd} (15)] Glues/kerns that inserted just the beginning or the ending of an hbox or a paragraph.
+
+\item[\textit{kinsoku} (3)]
+%<*en>
+Penalties inserted for the word-wrapping process of Japanese characters (\emph{kinsoku}).
+%</en>
+%<*ja>
+和文文字のワードラップ過程において挿入されたペナルティ (\emph{kinsoku}).
+%</ja>
+
+\item[\textit{from\_jfm} (4)]
+%<*en>
+Glues/kerns from JFM.
+%</en>
+%<*ja>
+JFM 由来のグルー/カーン.
+%</ja>
+
+\item[\textit{line\_end} (5)]
+%<*en>
+Kerns for ...
+%</en>
+%<*ja>
+カーン ...
+%</ja>
+
+\item[\textit{kanji\_skip} (6)]
+%<*en>
+Glues for \Param{kanjiskip}.
+%</en>
+%<*ja>
+\Param{kanjiskip} のグルー.
+%</ja>
+
+\item[\textit{xkanji\_skip} (7)]
+%<*en>
+Glues for \Param{xkanjiskip}.
+%</en>
+%<*ja>
+\Param{xkanjiskip} のグルー.
+%</ja>
+
+\item[\textit{processed} (8)]
+%<*en>
+Nodes which is already processed by ...
+%</en>
+%<*ja>
+... によって既に処理されたノード.
+%</ja>
+
+\item[\textit{ic\_processed} (9)]
+%<*en>
+Glues from an italic correction, but also already processed.
+%</en>
+%<*ja>
+イタリック補正に由来するグルーであるが,まだ処理されていないもの.
+%</ja>
+
+\item[\textit{boxbdd} (15)]
+%<*en>
+Glues/kerns that inserted just the beginning or the ending of an hbox or a paragraph.
+%</en>
+%<*ja>
+ある水平ボックスか段落の最初か最後に挿入されたグルー/カーン.
+%</ja>
 \end{description}
-\attr{ltj@kcat$i$} Where $i$~is a natural number which is less than~7.
+
+\attr{ltj@kcat$i$}
+%<*en>
+Where $i$~is a natural number which is less than~7.
 These 7~attributes store bit~vectors indicating which character block is regarded as a block of \textbf{JAchar}s.
+%</en>
+%<*ja>
+$i$ は7より小さい自然数.
+これら7つの属性レジスタは,どの文字ブロックが \textbf{JAchar} のブロックとして
+扱われるかを示すビットベクトルを格納する.
+%</ja>
 \end{list}
 
+%<*en>
 Furthermore, \LuaTeX-ja uses several `user-defined' whatsit nodes for
 typesetting. All those nodes store a natural number (hence the node's
 \texttt{type} is 100).
+%</en>
+%<*ja>
+さらに,\LuaTeX-ja はいくつかの「ユーザ定義の」whatsit ノードを組版に用いる.
+これらの全てのノードは自然数を格納している(したがってノードの \texttt{type} は
+100 である).
+%</ja>
 \begin{description}
-\item[30111] Nodes for indicating that \verb+\inhibitglue+ is
+\item[30111]
+%<*en>
+Nodes for indicating that \verb+\inhibitglue+ is
           specified. The \texttt{value} field of these nodes doesn't matter.
-\item[30112] Nodes for \LuaTeX-ja's stack system (see the next
+%</en>
+%<*ja>
+\verb+\inhibitglue+ が指定されたことを示すノード.これらのノードの
+\texttt{value} フィールド は意味を持たない.
+%</ja>
+
+\item[30112]
+%<*en>
+Nodes for \LuaTeX-ja's stack system (see the next
           subsection). The \texttt{value} field of these nodes is
           current group.
-\item[30113] Nodes for Japanese Characters which the callback process of
+%</en>
+%<*ja>
+\LuaTeX-ja のスタックシステム(次の節を参照)のためのノード.
+これらのノードの \texttt{value} フィールドは現在のグループを表す.
+%</ja>
+
+\item[30113]
+%<*en>
+Nodes for Japanese Characters which the callback process of
           luaotfload won't be applied, and the character code is
           stored in the \texttt{value} field. Each node having this
           \verb+user_id+ is converted to a `glyph\_node' \emph{after}
           the callback process of luaotfload.
+%</en>
+%<*ja>
+luaotfload のコールバックによる処理が適用されない和文文字のためのノードで,
+\texttt{value} フィールドにその文字のコードが格納されている.
+この \verb+user_id+ を持つノードはそれぞれが luaotfload のコールバックの処理の
+\textbf{後で} `glyph\_node' に変換される.
+%</ja>
 \end{description}
+%<*en>
 These whatsits will be removed during the process of inserting \textbf{JAglue}s.
+%</en>
+%<*ja>
+これらの whatsit ノードは \textbf{JAglue} の挿入処理の間に取り除かれる.
+%</ja>
 
 %<en>\subsection{Stack System of \LuaTeX-ja}
 %<ja>\subsection{\LuaTeX-ja のスタックシステム}
 \label{ssec-stack}
-\paragraph{Background}
+
+%<en>\paragraph{Background}
+%<ja>\paragraph{背景}
+%<*en>
 \LuaTeX-ja has its own stack system, and most parameters of \LuaTeX-ja
-are stored in it.  To clarify the reason, imagine the parameter
+are stored in it. To clarify the reason, imagine the parameter
 \Param{kanjiskip} is stored by a skip, and consider the following
 source:
+%</en>
+%<*ja>
+\LuaTeX-ja は独自のスタックシステムを持ち,\LuaTeX-ja のほとんどのパラメータは
+これを用いて保持されている.その理由を明らかにするために,
+\Param{kanjiskip} パラメータがスキップレジスタで保持されているとし,
+以下のコードを考えてみよう:
+%</ja>
 \begin{LTXexample}
 \ltjsetparameter{kanjiskip=0pt}ふがふが.%
 \setbox0=\hbox{\ltjsetparameter{kanjiskip=5pt}ほげほげ}
 \box0.ぴよぴよ\par
 \end{LTXexample}
 
-As described in Part~\ref{part-ref}, the only effective value of
+%<*en>
+As described in Subsection~\ref{ssec-param}, the only effective value of
 \Param{kanjiskip} in an hbox is the latest value, so the value of
 \Param{kanjiskip} which applied in the entire hbox should be 5\,pt.
 However, by the implementation method of \LuaTeX, this `5\,pt' cannot be
 known from any callbacks.  In the \texttt{tex/packaging.w} (which is a
 file in the source of \LuaTeX), there are the following codes:
+%</en>
+%<*ja>
+\ref{ssec-param} 節で述べたように,ある水平ボックスの中で効力を持つ
+\Param{kanjiskip} の値は最後に現れた値のみであり,したがってボックス全体に適用される
+\Param{kanjiskip} は 5\,pt であるべきである.しかし,\LuaTeX の実装のために,
+この `5\,pt' はどのコールバックからも知ることはできない.
+\texttt{tex/packaging.w}(これは \LuaTeX のソースファイルである)の中に,
+以下のコードがある:
+%</ja>
 \begin{lstlisting}
 void package(int c)
 {
@@ -3003,16 +3553,33 @@ void package(int c)
                                  saved_level(1), grp, saved_level(2));
         subtype(cur_box) = HLIST_SUBTYPE_HBOX;
 \end{lstlisting}
+%<*en>
 Notice that \verb+unsave+ is executed \emph{before}
 \verb+filtered_hpack+ (this is where \verb+hpack_filter+ callback is
 executed): so `5\,pt' in the above source is orphaned at
-\texttt+unsave+, and hence it can't be accessed from \verb+hpack_filter+
+\verb+unsave+, and hence it can't be accessed from \verb+hpack_filter+
 callback.
+%</en>
+%<*ja>
+\verb+unsave+ が \verb+filtered_hpack+(これは \verb+hpack_filter+ コールバックが
+実行されるところである)の\textbf{前に}実行されていることに注意する.
+したがって,上記ソース中で `5\,pt' は \verb+unsave+ のところで捨てられ,
+\verb+hpack_filter+ からはアクセスすることができない.
+%</ja>
 
-\paragraph{The method}
+%<en>\paragraph{The method}
+%<ja>\paragraph{解決法}
+
+%<*en>
 The code of stack system is based on that in a post of Dev-luatex mailing list\footnote{%
 \texttt{[Dev-luatex] tex.currentgrouplevel}, a post at 2008/8/19 by Jonathan Sauer.}.
+%</en>
+%<*ja>
+スタックシステムのコードは Dev-luatex メーリングリストのある投稿\footnote{\texttt{[Dev-luatex] tex.currentgrouplevel}: Jonathan Sauer による 2008/8/19 の投稿.}を
+ベースにしている.
+%</ja>
 
+%<*en>
 These are two \TeX\ count registers for maintaining information:
 \verb+\ltj@@stack+ for the stack level, and \verb+\ltj@@group@level+ for
 the \TeX's group level when the last assignment was done.  Parameters
@@ -3020,7 +3587,18 @@ are stored in one big table named \texttt{charprop\_stack\_table}, where
 \texttt{charprop\_stack\_table[$i$]} stores data of stack level~$i$. If
 a new stack level is created by \verb+\ltjsetparameter+, all data of the
 previous level is copied.
+%</en>
+%<*ja>
+情報を保持するために,2つの \TeX の整数レジスタを用いている:
+\verb+\ltj@@stack+ でスタックレベル,\verb+\ltj@@group@level+ で最後の代入が
+なされた時点での \TeX のグループレベルを保持している.
+パラメータは \texttt{charprop\_stack\_table} という名前のひとつの大きなテーブルに
+格納される.ここで,\texttt{charprop\_stack\_table[$i$]} はスタックレベル $i$ の
+データを格納している.もし新しいスタックレベルが \verb+\ltjsetparameter+ によって
+生成されたら,前のレベルの全てのデータがコピーされる.
+%</ja>
 
+%<*en>
 To resolve the problem mentioned in `Background' above, \LuaTeX-ja uses
 another thing: When a new stack level is about to be created, a whatsit
 node whose type, subtype and value are 44~(\textit{user\_defined}),
@@ -3029,28 +3607,71 @@ list (we refer this node by \textit{stack\_flag}). This enables us to
 know whether assignment is done just inside a hbox. Suppose that the
 stack level is~$s$ and the \TeX's group level is~$t$ just after the hbox
 group, then:
+%</en>
+%<*ja>
+上の「背景」で述べた問題を解決するために,\LuaTeX-ja ではもう一つの手法を導入する:
+新しいスタックレベルが生成されようとするとき,type, subtype, value がそれぞれ
+44~(\textit{user\_defined}), 30112,そして現在のグループレベルである whatsit ノード
+を現在のリストに付け加える(このノードを \textit{stack\_flag} とする).
+これにより,ある水平ボックスの中で代入がなされたかどうかを知ることが可能
+となる.スタックレベルを $s$,その水平ボックスグループの直後の \TeX のグループレベルを
+$t$ とすると:
+%</ja>
 \begin{itemize}
-\item If there is no \textit{stack\_flag} node in the list of hbox, then
+%<*en>
+\item If there is no \textit{stack\_flag} node in the list of the hbox, then
       no assignment was occurred inside the hbox. Hence values of
       parameters at the end of the hbox are stored in the stack
       level~$s$.
+%</en>
+%<*ja>
+\item もしその水平ボックスのリストの中に \textit{stack\_flag} ノードがなければ,
+  水平ボックスの中では代入は起こらなかったということになる.
+  したがって,その水平ボックスの終わりにおけるパラメータの値はスタックレベル $s$ に
+  格納されている.
+%</ja>
+
+%<*en>
 \item If there is a \textit{stack\_flag} node whose value is~$t+1$, then
       an assignment was occurred just inside the hbox group. Hence
       values of parameters at the end of the hbox are stored in the
       stack level~$s+1$.
+%</en>
+%<*ja>
+\item もし値が $t+1$ の \textit{stack\_flag} ノードがあれば,その
+  水平ボックスグループの中で代入が起こったことになる.
+  したがって,水平ボックスの終わりにおけるパラメータの値はスタックレベル $s+1$ に
+  格納されている.
+%</ja>
+
+%<*en>
 \item If there are \textit{stack\_flag} nodes but all of their values
       are more than~$t+1$, then an assignment was occurred in the box,
       but it is done is `more internal' group. Hence values of
       parameters at the end of the hbox are stored in the stack
       level~$s$.
+%</en>
+%<*ja>
+\item もし \textit{stack\_flag} ノードがあるがそれらの値が全て $t+1$ より大きい
+  場合,そのボックスの中で代入が起こったが,それは「より内部の」グループで
+  起こったということになる.したがって,水平ボックスの終わりでのパラメータの
+  値はスタックレベル $s$ に格納されている.
+%</ja>
 \end{itemize}
 
+%<*en>
 Note that to work this trick correctly, assignments to
 \verb+\ltj@@stack+ and \verb+\ltj@@group@level+ have to be local always,
 regardless the value of \verb+\globaldefs+.
 This problem is resolved by using
 \hbox{\verb+\directlua{tex.globaldefs=0}+} (this assignment is local).
-
+%</en>
+%<*ja>
+このトリックを正しく働かせるためには,\verb+\ltj@@stack+ と \verb+\ltj@@group@level+ への
+代入は \verb+\globaldefs+ の値によらず常にローカルでなければならないことに注意する.
+この問題は \hbox{\verb+\directlua{tex.globaldefs=0}+}(この代入は常にローカル)を
+用いることで解決している.
+%</ja>
 
 %<en>\section{Linebreak after Japanese Character}
 %<ja>\section{和文文字直後の改行}
@@ -3096,7 +3717,7 @@ after `beginning/ending of a group' characters.
 \item State~$M$: 行中.
 \item State~$K$: 行中(和文文字の後).
 \end{itemize}
-また,状態遷移は,図\ref{fig-ptexipro} のようになっており,図中の数字は
+また,状態遷移は,図 \ref{fig-ptexipro} のようになっており,図中の数字は
 カテゴリーコードを表している.最初の3状態は\TeX の入力処理部と同じであり,
 図中から状態$K$と「$j$」と書かれた矢印を取り除けば,\TeX の入力処理部と同
 じものになる.
@@ -3127,10 +3748,21 @@ after `beginning/ending of a group' characters.
  d:=\{3,4,6,7,8,11,12,13\},\quad g:=\{1,2\},\quad j:=(\text{Japanese characters})
 \end{gather*}
 \begin{itemize}
+%<*en>
 \item Numbers represent category codes.
-\item Category codes 9~(ignored), 14~(comment)~and~15~(invalid) are omitted in above diagram.
+%</en>
+%<*ja>
+\item 数字はカテゴリーコードを表わしている.
+%</ja>
+%<*en>
+\item Category codes 9~(ignored), 14~(comment)~and~15~(invalid) are omitted in the above diagram.
+%</en>
+%<*ja>
+\item カテゴリーコード 9(無視する文字),14(コメント文字),15(無効文字)は上の図では省かれている.
+%</ja>
 \end{itemize}
-\caption{State transitions of \pTeX's input processor.}
+%<en>\caption{State transitions of \pTeX's input processor.}
+%<ja>\caption{\pTeX の入力処理部の状態遷移.}
 \label{fig-ptexipro}
 \end{figure}
 
 
 %<en>\section{Insertion of JFM glues, \Param{kanjiskip} and \Param{xkanjiskip}}
 %<ja>\section{JFM グルーの挿入,\Param{kanjiskip} と \Param{xkanjiskip}}
+\label{sec-jfmglue}
 %<en>\subsection{Overview}
 %<ja>\subsection{概要}
 
-
 \LuaTeX-ja における和文処理グルーの挿入方法は,\pTeX のそれとは全く異なる.
 \pTeX では次のような仕様であった:
 \begin{itemize}
 \item JFMグルーの挿入は,和文文字を表すトークンを元に水平リストに(文字を表す)<char\_node>を
 追加する過程で行われる.
-\item \Param{xkanjiskip}の挿入は,hboxへのパッケージングや行分割前に行われる.
+\item \Param{xkanjiskip}の挿入は,水平ボックスへのパッケージングや行分割前に行われる.
 \item \Param{kanjiskip}はノードとしては挿入されない.パッケージングや行分割の計算時に
 「和文文字を表す2つの<char\_node>の間には\Param{kanjiskip}がある」ものとみなされる.
 \end{itemize}
-しかし,\LuaTeX-jaでは,hboxへのパッケージングや行分割前に全ての
+しかし,\LuaTeX-jaでは,水平ボックスへのパッケージングや行分割前に全ての
 \textbf{JAglue},即ちJFMグルー・\Param{xkanjiskip}・\Param{kanjiskip}の
 3種類を一度に挿入することになっている.これは,\LuaTeX において欧文の合字・
 カーニング処理がノードベースになったことに対応する変更である.
 
 \LuaTeX-jaにおける\textbf{JAglue}挿入処理では,次節で定義する
 「クラスタ」を単位にして行われる.大雑把にいうと,「クラスタ」は文字とそれに付随す
-るノード達(アクセント位置補正用のkernや,イタリック補正)をまとめたもの
+るノード達(アクセント位置補正用のカーンや,イタリック補正)をまとめたもの
 であり,2つのクラスタの間には,ペナルティ,\verb+\vadjust+,whatsitなど,行組版
 には関係しないものがある.
 
 \def\OA{$\text{\sf O}_{\text{\sf A}}$}
 \def\OB{$\text{\sf O}_{\text{\sf B}}$}
 \begin{defn}
+%<*en>
 A \emph{cluster} is a list of consecutive nodes in one of the following forms,
 with the \textit{id} of it:
+%</en>
+%<*ja>
+\textbf{クラスタ}は以下の形のうちのどれかひとつをとる連続的なノードのリストである:
+%</ja>
 \begin{enumerate}
+%<*en>
 \item Nodes whose value of\ \verb+\ltj@icflag+ is in $[3,15)$.  These
       nodes come from a hbox which is already packaged, by unpackaging
       (\verb+\unhbox+).
       The \textit{id} is \textit{id\_pbox}.
+%</en>
+%<*ja>
+\item その \verb+\ltj@icflag+ の値が $[3,15)$ に入るノードのリスト.
+  これらのノードはある既にパッケージングされた水平ボックスから \verb+\unhbox+ で
+  アンパックされたものである.
+  その \textit{id} は \textit{id\_pbox} である.
+%</ja>
+
+%<*en>
 \item A inline math formula, including two \textit{math\_node}s at the boundary of it.
       The \textit{id} is \textit{id\_math}.
+%</en>
+%<*ja>
+\item インライン数式でその境界に2つの \textit{math\_node} を含むもの.
+  その \textit{id} は \textit{id\_math} である.
+%</ja>
+
+%<*en>
 \item A \textit{glyph\_node}~$p$ with nodes which relate with it:
+%</en>
+%<*ja>
+\item \textit{glpyh\_node}~$p$ とそれに関係するノード:
+%</ja>
 \begin{enumerate}
+%<*en>
 \item A kern for the italic correction of~$p$.
+%</en>
+%<*ja>
+\item $p$ のイタリック補正のためのカーン.
+%</ja>
+
+%<*en>
 \item An accent attached to $p$ by \verb+\accent+.
+%</en>
+%<*ja>
+\item \verb+\accent+ による $p$ に付随したアクセント.
+%</ja>
 \end{enumerate}
 \[
 \overbrace{%
@@ -3296,22 +3965,48 @@ with the \textit{id} of it:
 \Node{kern}{italic corr.}}^{\text{(b)}}
 \]
 
+%<*en>
 The \textit{id} is \textit{id\_jglyph} or
 \textit{id\_glyph}, according to whether the \textit{glyph\_node}
 represents a Japanese character or not.
+%</en>
+%<*ja>
+\textit{id} は \textit{glyph\_node} が和文文字を表すかどうかによって
+\textit{id\_jglyph},もしくは \textit{id\_glyph} となる.
+%</ja>
+
+%<*en>
 \item An box-like node, that is, an hbox, a vbox, a rule (\verb+\vrule+) and an \textit{unset\_node}.
 The \textit{id} is \textit{id\_hlist} if the node is an
       hbox which is not shifted vertically, or \textit{id\_box\_like}
       otherwise.
+%</en>
+%<*ja>
+\item ボックス様のノード,つまり水平ボックス,垂直ボックス,罫線 (\verb+\vrule+),
+  そして \textit{unset\_node}.
+  その \textit{id} は垂直に移動していない水平ボックスならば \textit{id\_hlist},
+  そうでなければ \textit{id\_box\_like} となる.
+%</ja>
+
+%<*en>
 \item A glue, a kern whose subtype is not 2~(\textit{accent}), and a discretionary break.
 The \textit{id} is \textit{id\_glue}, \textit{id\_kern}
       and \textit{id\_disc}, respectively.
+%</en>
+%<*ja>
+\item グルー,subtype が 2~(\textit{accent}) ではないカーン,そして任意改行.
+  その \textit{id} はそれぞれ \textit{id\_glue}, \textit{id\_kern},そして
+  \textit{id\_disc} である.
+%</ja>
 \end{enumerate}
-We denote a cluster by \textit{Np}, \textit{Nq} and \textit{Nr}.
+%<*en>
+Let \textit{Np}, \textit{Nq} and \textit{Nr} denote a cluster.
+%</en>
+%<*ja>
+以下では \textit{Np}, \textit{Nq}, \textit{Nr} でクラスタを表す.
+%</ja>
 \end{defn}
 
-以降は日本語.
-
 \paragraph{\textit{id}の意味}
 $\mathit{Np}.\mathit{id}$の意味を述べるとともに,
 「先頭の文字」を表す\textit{glyph\_node}~$\mathit{Np}.\mathit{head}$と,
@@ -3338,7 +4033,7 @@ $\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$は,その和文文字
 \item[\textit{id\_math}] インライン数式.\\
 便宜的に,$\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$ともに
 「文字コード$-1$の欧文文字」とおく.
-\item[\textit{id\_hlist}] 縦方向にシフトされていない hbox.\\
+\item[\textit{id\_hlist}] 縦方向にシフトされていない水平ボックス.\\
 この場合,$\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$はそれぞれ$p$の内容を表すリストの,
 先頭・末尾のノードである.
 \begin{itemize}
@@ -3347,10 +4042,10 @@ $\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$は,その和文文字
 \hbox{\hbox{abc}...\hbox{\lower1pt\hbox{xyz}}}
 \end{verbatim}
 のように,$p$の内容が別の hbox で開始・終了している可能性も十分あり得る.そのような場合,
-$\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$の算出は,\textbf{垂直方向にシフトされていない} hbox 
+$\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$の算出は,\textbf{垂直方向にシフトされていない}水平ボックス
 場合だけ内部を再帰的に探索する.例えば上の例では,$\mathit{Np}.\mathit{head}$は文字「a」を表すノードであり,
-一方$\mathit{Np}.\mathit{tail}$は垂直方向にシフトされた hbox,\verb+\lower1pt\hbox{xyz}+に対応するノードである.
-\item また,先頭にアクセント付きの文字がきたり,末尾にイタリック補正用の kern 
+一方$\mathit{Np}.\mathit{tail}$は垂直方向にシフトされた水平ボックス,\verb+\lower1pt\hbox{xyz}+に対応するノードである.
+\item また,先頭にアクセント付きの文字がきたり,末尾にイタリック補正用のカーン
 来ることもあり得る.この場合は,クラスタの定義のところにもあったように,それらは無視して算出を行う.
 \item 最初・最後のノードが合字によって作られた\textit{glyph\_node}のときは,それぞれに対して\textit{id\_glyph}%
 と同様に再帰的に構成要素をたどっていく.
@@ -3378,11 +4073,11 @@ $\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$の算出は,\textbf{
 \textit{id}が\textit{id\_jglyph}であるか,\\
 \textit{id}が\textit{id\_pbox}であって$\mathit{Np}.\mathit{head}$が\textbf{JAchar}であるとき.
 
-\item[和文B] リスト中のhboxの中身の先頭として出現した和文文字.和文Aとの違いは,これの前に
+\item[和文B] リスト中の水平ボックスの中身の先頭として出現した和文文字.和文Aとの違いは,これの前に
 JFMグルーの挿入が行われない(\Param{xkanjiskip},~\Param{kanjiskip}は入り得る)ことである.\\
 \textit{id}が\textit{id\_hlist}か\textit{id\_disc}であって$\mathit{Np}.\mathit{head}$が\textbf{JAchar}であるとき.
 
-\item[欧文] リスト中に直接/hboxの中身として出現している欧文文字.次の3つの場合が該当:
+\item[欧文] リスト中に直接/水平ボックスの中身として出現している欧文文字.次の3つの場合が該当:
 \begin{itemize}
 \item \textit{id}が\textit{id\_glyph}である.
 \item \textit{id}が\textit{id\_math}である.
@@ -3396,23 +4091,23 @@ JFMグルーの挿入が行われない(\Param{xkanjiskip},~\Param{kanjiskip}
 
 \end{description}
 
-\subsection{段落/hboxの先頭や末尾}
+\subsection{段落/水平ボックスの先頭や末尾}
 \paragraph{先頭部の処理}
-まず,段落/hboxの一番最初にあるクラスタ\textit{Np}を探索する.
-hboxの場合は何の問題もないが,段落の場合では以下のノード達を事前に読み飛ばしておく:
+まず,段落/水平ボックスの一番最初にあるクラスタ\textit{Np}を探索する.
+水平ボックスの場合は何の問題もないが,段落の場合では以下のノード達を事前に読み飛ばしておく:
 \begin{center}
-\verb+\parindent+由来のhbox ($\mathit{subtype}=3$),及び\textit{subtype}が44~(\textit{user\_defined})でない
+\verb+\parindent+由来の水平ボックス ($\mathit{subtype}=3$),及び\textit{subtype}が44~(\textit{user\_defined})でない
 ようなwhatsit.
 \end{center}
-これは,\verb+\parindent+由来のhboxがクラスタを構成しないようにするためである.
+これは,\verb+\parindent+由来の水平ボックスがクラスタを構成しないようにするためである.
 
 次に,\textit{Np}の直前に空白$g$を必要なら挿入する:
 \begin{enumerate}
 \item この処理が働くような\textit{Np}は\textsf{和文A}である.
-\item 問題のリストが字下げありの段落(\verb+\parindent+由来のhboxあり)の場合は,
-この空白$g$は「文字コード\texttt{'parbdd'}の文字」と\textit{Np}の間に入るglue/kernである.
-\item そうでないとき(\verb+noindent+で開始された段落や,hbox)は,
-$g$は「文字コード\texttt{'boxbdd'}の文字」と\textit{Np}の間に入るglue/kernである.
+\item 問題のリストが字下げありの段落(\verb+\parindent+由来の水平ボックスあり)の場合は,
+この空白$g$は「文字コード\texttt{'parbdd'}の文字」と\textit{Np}の間に入るグルー/カーンである.
+\item そうでないとき(\verb+noindent+で開始された段落や水平ボックス)は,
+$g$は「文字コード\texttt{'boxbdd'}の文字」と\textit{Np}の間に入るグルー/カーンである.
 \end{enumerate}
 ただし,もし$g$がglueであった場合,この挿入によって\textit{Np}による行分割が新たに可能になるべきではない.
 そこで,以下の場合には,$g$の直前に\verb+\penalty10000+を挿入する:
@@ -3422,8 +4117,8 @@ $g$は「文字コード\texttt{'boxbdd'}の文字」と\textit{Np}の間に入
 \end{itemize}
 
 \paragraph{末尾の処理}
-末尾の処理は,問題のリストが段落のものかhboxのものかによって異なる.
-後者の場合は容易い:最後のクラスタを\textit{Nq}とおくと,\textit{Nq}と「文字コード\texttt{'boxbdd'}の文字」の間に入るglue/kernを,
+末尾の処理は,問題のリストが段落のものか水平ボックスのものかによって異なる.
+後者の場合は容易い:最後のクラスタを\textit{Nq}とおくと,\textit{Nq}と「文字コード\texttt{'boxbdd'}の文字」の間に入るグルー/カーンを,
 \textit{Nq}の直後に挿入するのみである.
 
 一方.前者(段落)の場合は,リストの末尾は常に\verb+\penalty10000+と,
@@ -3469,16 +4164,16 @@ $g$は「文字コード\texttt{'boxbdd'}の文字」と\textit{Np}の間に入
 \item もし両クラスタの間で\verb+\inhibitglue+が実行されていた場合(証としてwhatsitノードが自動挿入される),
       代わりに\Param{kanjiskip}が挿入されることとなる.次へ.
 \item \textit{Nq}と\textit{Np}が同じJFM・同じ\texttt{jfmvar}キー・同じサイズの和文フォントであったならば,
-      共通に使っているJFM内で挿入される空白 (glue or kern) が決まっているか調べる.
+      共通に使っているJFM内で挿入される空白(グルーかカーン)が決まっているか調べる.
 \item 1.でも2.でもない場合は,\textit{Nq}と\textit{Np}が違うJFM/\texttt{jfmvar}/サイズである.
 この場合,まず
 \[
 \vcenter{\halign{\hfil$#:={}$&(\inhibitglue#\inhibitglue)\cr
-gb&\textit{Nq}と「文字コードが{\tt'diffmet'}の文字」との間に入るglue/kern\cr
-ga&「文字コードが{\tt'diffmet'}の文字」と\textit{Np}との間に入るglue/kern\cr
+gb&\textit{Nq}と「文字コードが{\tt'diffmet'}の文字」との間に入るグルー/カーン\cr
+ga&「文字コードが{\tt'diffmet'}の文字」と\textit{Np}との間に入るグルー/カーン\cr
 }}
 \]
-として,左側由来・右側由来の空白 (glue/kern) を(それぞれのJFMから)求める.
+として,左側由来・右側由来の空白(グルー/カーン)を(それぞれのJFMから)求める.
 $\mathit{ga}$と$\mathit{gb}$のどちらか片方が未定義であるならば,定義されている側の値をそのまま採用する.
 もし$\mathit{ga}$と$\mathit{gb}$が両方決まっているならば,両者の値を平均\footnote{\Param{differentjfm}パラメタの
 値によって,「大きい方」「小さい方」「合計」に変えることができる.}した値を採用する.
@@ -3502,7 +4197,7 @@ $q$と$r$の間は(実フォントが同じなのに)\texttt{jfmvar}キー
 \item[\Param{kanjiskip}~{[K]}] 上の[M]において空白が定まらなかった場合,
 \Param{kanjiskip}の値を以下で定め,それを「右空白」として採用する.
 この段階においては,\verb+\inhibitglue+は効力を持たないため,
-結果として,2つの和文文字間には常に何らかのglue/kernが挿入されることとなる.
+結果として,2つの和文文字間には常に何らかのグルー/カーンが挿入されることとなる.
 \begin{enumerate}
 \item 両クラスタ(厳密には$\mathit{Nq}.\mathit{tail}$,$\mathit{Np}.\mathit{head}$)の中身の文字コードに対する
 \Param{autospacing}パラメタが両方ともfalseだった場合は,長さ0のglueとする.
@@ -3520,9 +4215,9 @@ JFM由来の値だけを用いる.もし両者で使われているJFMが異
 \textit{Nq}と\textit{Np}の間で行分割が起きたときに,
 \textit{Nq}と行末の間に入る空白である.ぶら下げ組の組版などに用いられることを期待している.
 \begin{enumerate}
-\item 既に算出した「右空白」がkernである場合は,「左空白」は挿入されない.
+\item 既に算出した「右空白」がカーンである場合は,「左空白」は挿入されない.
 \item 「右空白」がglueか未定義(長さ0のglueとみなす)の場合は,「左空白」は
-\textit{Nq}と「文字コード\texttt{'lineend'}の文字」との間に入るkernとして,JFMから決定される.
+\textit{Nq}と「文字コード\texttt{'lineend'}の文字」との間に入るカーンとして,JFMから決定される.
 \item 2.で決まった「左空白」の長さが0でなければ,その分だけ先ほど算出した「右空白」の自然長を引く.
 \end{enumerate}
 \end{description}
@@ -3548,10 +4243,10 @@ $a$は禁則処理用に\textit{Nq}と\textit{Np}の間に加えられるべき
 「右空白」の(もし未定義なら\textit{Np}の)直前に挿入……
 ということになるが,実際には僅かにこれより複雑である.
 \begin{itemize}
-\item 「右空白」がkernであるとき,
+\item 「右空白」がカーンであるとき,
 それは「\textit{Nq}と\textit{Np}の間で改行は許されない」ことを意図している.そのため,
 この場合は$a\neq 0$であってもペナルティの挿入はしない.
-\item 「左空白」がkernとしてきっちり定義されている時(このとき,「右空白」はkernでない),
+\item 「左空白」がカーンとしてきっちり定義されている時(このとき,「右空白」はカーンでない),
 この「左空白」の直後での行分割を許容しないといけないので,$a=0$であっても
 \textit{penalty\_node}を作って挿入する.
 \item 以上のどれでもないときは,$a\neq 0$ならば\textit{penalty\_node}を作って挿入する.
@@ -3561,7 +4256,8 @@ $a$は禁則処理用に\textit{Nq}と\textit{Np}の間に加えられるべき
 \def\gkf#1#2#3{\sf$\displaystyle\vphantom{\Bigg(}%
   \frac{\hbox to 1\zw{#1}\hbox to 4.5\zw{\hss #2}}{\hbox{#3}}$}
 \begin{table}[t]
-\caption{Summary of JFM glues}
+%<en>\caption{Summary of JFM glues.}
+%<ja>\caption{JFM グルーの概要.}
 \label{tab-jfmglue}
 \begin{center}
 \small
@@ -3589,18 +4285,42 @@ kern&\gkf{E}{\OB}{PS}\\
 \end{tabular}
 \end{center}
 \begin{quote}
+%<*en>
 Here {\small\gkf{E}{M→K}{PN}} means that
+%</en>
+%<*ja>
+ここで {\small\gkf{E}{M→K}{PN}} は次の意味である:
+%</ja>
 \begin{enumerate}
+%<*en>
 \item To determine the `right-space', \LuaTeX-ja first attempts by the method `\textsf{JFM-origin~[M]}'.
 If this attempt fails, \LuaTeX-ja use the method `\textsf{\Param{kanjiskip}~[K]}'.
+%</en>
+%<*ja>
+\item 「右空白」を決めるために,\LuaTeX-ja はまず「JFM由来{[M]}」の方法を試みる.
+  これが失敗したら,\LuaTeX-ja は「\Param{kanjiskip}~{[K]}」の方法を試みる.
+%</ja>
+
+%<*en>
 \item The `left space' between \textit{Nq}~and~\textit{Np} is determined by the method `\textsf{line-end~[E]}'.
+%</en>
+%<*ja>
+\item \textit{Nq} と \textit{Np} の間の「左空白」は「\textsf{line-end~[E]}」の
+  方法で決定される.
+%</ja>
+
+%<*en>
 \item \LuaTeX-ja adopts the method `\textsf{P-normal~[PN]}' to adjust the penalty between two clusters for \emph{kinsoku shori}.
+%</en>
+%<*ja>
+\item \LuaTeX-ja は2つのクラスタの間の禁則処理用のペナルティを調節するために「\textsf{P-normal~[PN]}」の方法を採用する.
+%</ja>
 \end{enumerate}
 \end{quote}
 \end{table}
 
 \subsection{その他の場合}
-本節の内容は表\ref{tab-jfmglue}にまとめてある.
+本節の内容は表 \ref{tab-jfmglue} にまとめてある.
 
 \paragraph{和文Aと欧文の間}
 \textit{Nq}が\textsf{和文A}で,\textit{Np}が\textsf{欧文}の場合,JFMグルー挿入処理は次のようにして行われる.
@@ -3618,7 +4338,7 @@ If this attempt fails, \LuaTeX-ja use the method `\textsf{\Param{kanjiskip}~[K]}
 \begin{enumerate}
 \item もし両クラスタの間で\verb+\inhibitglue+が実行されていた場合(証としてwhatsitノードが自動挿入される),次へ.
 \item そうでなければ,
-\textit{Nq}と「文字コードが{\tt'jcharbdd'}の文字」との間に入るglue/kernとして定まる.
+\textit{Nq}と「文字コードが{\tt'jcharbdd'}の文字」との間に入るグルー/カーンとして定まる.
 \end{enumerate}
 \item[\Param{xkanjiskip}~{[X]}]
 この段階では,\textsf{\Param{kanjiskip}~[K]}のときと同じように,
@@ -3657,12 +4377,12 @@ If this attempt fails, \LuaTeX-ja use the method `\textsf{\Param{kanjiskip}~[K]}
 \begin{enumerate}
 \item もし両クラスタの間で\verb+\inhibitglue+が実行されていた場合(証としてwhatsitノードが自動挿入される),次へ.
 \item そうでなければ,
-「文字コードが{\tt'jcharbdd'}の文字」と\textit{Np}との間に入るglue/kernとして定まる.
+「文字コードが{\tt'jcharbdd'}の文字」と\textit{Np}との間に入るグルー/カーンとして定まる.
 \end{enumerate}
 \end{description}
 
-\paragraph{和文Aと箱・glue・kernの間}
-\textit{Nq}が\textsf{和文A}で,\textit{Np}が\textsf{箱}・glue・kernのいずれかであった場合,
+\paragraph{和文Aと箱・グルー・カーンの間}
+\textit{Nq}が\textsf{和文A}で,\textit{Np}が\textsf{箱}・グルー・カーンのいずれかであった場合,
 両者の間に挿入されるJFMグルーについては同じ処理である.しかし,そこでの行分割に対する仕様が異なるので,
 ペナルティの挿入処理は若干異なったものとなっている.
 
@@ -3680,8 +4400,8 @@ If this attempt fails, \LuaTeX-ja use the method `\textsf{\Param{kanjiskip}~[K]}
 \item[箱] \textit{Np}が\textsf{箱}であった場合は,両クラスタの間での行分割は
 (明示的に両クラスタの間に\verb+\penalty10000+があった場合を除き)いつも許容される.そのため,
 ペナルティ処理は,後に述べる\textsf{P-allow~[PA]}が\textsf{P-normal~[PN]}の代わりに用いられる.
-\item[glue] \textit{Np}がglueの場合,ペナルティ処理は\textsf{P-normal~[PN]}を用いる.
-\item[kern] \textit{Np}がkernであった場合は,両クラスタの間での行分割は
+\item[グルー] \textit{Np}がグルーの場合,ペナルティ処理は\textsf{P-normal~[PN]}を用いる.
+\item[カーン] \textit{Np}がカーンであった場合は,両クラスタの間での行分割は
 (明示的に両クラスタの間にペナルティがあった場合を除き)許容されない.
 ペナルティ処理は,後に述べる\textsf{P-suppress~[PS]}を使う.
 \end{description}
@@ -3699,8 +4419,8 @@ If this attempt fails, \LuaTeX-ja use the method `\textsf{\Param{kanjiskip}~[K]}
 そのために,以下の場合に$a$をもつ\textit{penalty\_node}を作って
 「右空白」の(もし未定義なら\textit{Np}の)直前に挿入する:
 \begin{itemize}
-\item 「右空白」がglueでない(kernか未定義)であるとき.
-\item 「左空白」がkernとしてきっちり定義されている時.
+\item 「右空白」がグルーでない(カーンか未定義)であるとき.
+\item 「左空白」がカーンとしてきっちり定義されている時.
 \end{itemize}
 
 \item[P-suppress~{[PS]}]
@@ -3713,7 +4433,7 @@ If this attempt fails, \LuaTeX-ja use the method `\textsf{\Param{kanjiskip}~[K]}
 そのため,「右空白」がglueであれば,その直前に\verb+\penalty10000+を挿入する.
 \end{description}
 
-なお,「右空白」はkern,「左空白」は未定義の
+なお,「右空白」はカーン,「左空白」は未定義の
 \[
  \overbrace{\Node{glyph}{`あ'}}^{\mathit{Nq}}\longrightarrow \overbrace{\Node{glue}{1\,pt}}^{\mathit{Np}}
 \]
@@ -3737,8 +4457,8 @@ If this attempt fails, \LuaTeX-ja use the method `\textsf{\Param{kanjiskip}~[K]}
 \footnote{kern$\rightarrow$glueが1つの行分割可能点(行分割に伴うペナルティは0)
 であるため,たとえ$a=10000$であっても,\textit{Nq}と\textit{Np}の間で行分割を禁止することはできない.}.
 
-\paragraph{箱・glue・kernと和文Aの間}
-\textit{Np}が\textsf{箱}・glue・kernのいずれかで,\textit{Np}が\textsf{和文A}であった場合は,
+\paragraph{箱・グルー・カーンと和文Aの間}
+\textit{Np}が\textsf{箱}・グルー・カーンのいずれかで,\textit{Np}が\textsf{和文A}であった場合は,
 すぐ上の(\textit{Nq}と\textit{Np}の順序が逆になっている)場合とほぼ同じであるが,「左空白」がなくなることにのみ注意.
 \begin{itemize}
 \item 「右空白」については,既に述べた\textsf{Boundary-A~[\OA]}により空白を決定しようと試みる.
@@ -3751,13 +4471,13 @@ $\mathit{Nq}.\mathit{tail}$は無意味なので,
 \]
 \begin{description}
 \item[箱] \textit{Nq}が\textsf{箱}の場合は,\textsf{P-allow~[PA]}を用いる.
-\item[glue] \textit{Nq}がglueの場合は,\textsf{P-normal~[PN]}を用いる.
-\item[kern] \textit{Nq}がkernの場合は,\textsf{P-suppress~[PS]}を用いる.
+\item[グルー] \textit{Nq}がグルーの場合は,\textsf{P-normal~[PN]}を用いる.
+\item[カーン] \textit{Nq}がカーンの場合は,\textsf{P-suppress~[PS]}を用いる.
 \end{description}
 \end{itemize}
 
 \paragraph{和文Aと和文Bの違い}
-先に述べたように,\textsf{和文B}はhboxの中身の先頭(or 末尾)として出現している
+先に述べたように,\textsf{和文B}は水平ボックスの中身の先頭(or 末尾)として出現している
 和文文字である.リスト内に直接ノードとして現れている和文文字(\textsf{和文A})との違いは,
 \begin{itemize}
 \item \textsf{和文B}に対しては,JFMの文字クラス指定から定まる空白
@@ -3769,7 +4489,7 @@ $\mathit{Nq}.\mathit{tail}$は無意味なので,
 \Param{kanjiskip}~\textsf{[K]}の挿入を行う.
 \item \textsf{和文B}の2つのクラスタの間には,\Param{kanjiskip}~\textsf{[K]}が自動的に入る.
 \end{itemize}
-\item \textsf{和文B}と箱・glue・kernが隣接したとき(どちらが前かは関係ない),間にJFMグルー・ペナルティの挿入は一切しない.
+\item \textsf{和文B}と箱・グルー・カーンが隣接したとき(どちらが前かは関係ない),間にJFMグルー・ペナルティの挿入は一切しない.
 \item \textsf{和文B}と\textsf{和文B},また\textsf{和文B}と\textsf{欧文}とが隣接した時は,禁則用ペナルティ挿入処理は
 \textsf{P-suppress~[PS]}が用いられる.
 \item \textsf{和文B}の文字に対する\Param{prebreakpenalty},~\Param{postbreakpenalty}の値は使われず,0として計算される.
@@ -3785,7 +4505,7 @@ $\mathit{Nq}.\mathit{tail}$は無意味なので,
 \begin{itemize}
 \item 1行目の\verb+\inhibitglue+は\textsf{Boundary-B~[\OB]}の処理のみを抑止するので,ピリオドと「A」の間には
 \Param{xkanjiskip}(四分アキ)が入ることに注意.
-\item 2行目のピリオドと「A」の間においては,前者が\textsf{和文B}となる(hboxの中身の末尾として登場しているから)ので,
+\item 2行目のピリオドと「A」の間においては,前者が\textsf{和文B}となる(水平ボックスの中身の末尾として登場しているから)ので,
 そもそも\textsf{Boundary-B~[\OB]}の処理は行われない.よって,\Param{xkanjiskip}が入ることとなる.
 \item 3行目では,ピリオドの属するクラスタは\textsf{和文A}である.これによって,
 ピリオドと「A」の間には\textsf{Boundary-B~[\OB]}由来の半角アキが入ることになる.