OSDN Git Service

Update the manual: a remark about xunicode.sty.
[luatex-ja/luatexja.git] / doc / manual.dtx
index 7a524c2..b0493d4 100644 (file)
@@ -5,7 +5,7 @@
 \usepackage[margin=20mm,footskip=5mm]{geometry}
 
 \usepackage{amsmath,amssymb,xcolor,pict2e,multienum,amsthm,float}
-\usepackage{booktabs,listings,lltjlisting,showexpl,multicol}
+\usepackage{booktabs,listings,showexpl,multicol}
 \usepackage{luatexja-otf}
 \usepackage{luatexja-fontspec}
 \usepackage[unicode]{hyperref}
 \DeclareRobustCommand\LuaTeX{Lua\TeX}
 \DeclareRobustCommand\pdfTeX{pdf\TeX}
 \DeclareRobustCommand\pTeX{p\kern-.05em\TeX}
-\DeclareRobustCommand\upTeX{p\kern-.05em\TeX}
+\DeclareRobustCommand\upTeX{up\kern-.05em\TeX}
 \DeclareRobustCommand\pLaTeX{p\kern-.05em\LaTeX}
 \DeclareRobustCommand\pLaTeXe{p\kern-.05em\LaTeXe}
 \DeclareRobustCommand\epTeX{\ensuremath{\varepsilon}-\kern-.125em\pTeX}
 
 \ltjsetparameter{jacharrange={-3}}
+\ltjdefcharrange{6}{`■}
 \theoremstyle{definition}
 %<en>\newtheorem{defn}{Definition}
 %<ja>\newtheorem{defn}{定義}
     \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
   \fi
   \vskip\belowcaptionskip}
+% Suppress output from showexpl to stdout.
+\let\SX@Info\relax
 \makeatother
 
+\def\Node#1#2{\,\vcenter{\hbox{\fboxsep=1pt\fbox{\vbox{\small\halign{\hfil##\hfil\cr
+  #1\mathstrut\cr\noalign{\hrule height.4pt}\strut#2\cr}}}}\,}}
+
 %<*en>
 \title{The \LuaTeX-ja package}
 \author{The \LuaTeX-ja project team}
@@ -73,7 +79,7 @@
 \bigskip
 
 %<*en>
-{\Large\bf This documentation is far from complete. It may have many
+\textbf{This documentation is far from complete. It may have many
 grammatical (and contextual) errors.}
 %</en>
 %<*ja>
@@ -105,7 +111,7 @@ are used to typeset Japanese documents in \TeX. \pTeX\ is an engine
 extension of \TeX: so it can produce high-quality Japanese documents
 without using very complicated macros. But this point is a mixed
 blessing: \pTeX\ is left behind from other extensions of \TeX,
-especially \eTeX\ and pdf\TeX, and from changes about
+especially \eTeX\ and \pdfTeX, and from changes about
 Japanese processing in computers (\textit{e.g.}, the UTF-8 encoding).
 %</en>
 %<*ja>
@@ -130,7 +136,7 @@ extent, but gaps still exist.
 外部UTF-8入力が利用可能となり,さらにUnicode化を推進し,\pTeX の内部処理
 までUnicode化した\upTeX も開発されている.また,\pTeX に\eTeX 拡張をマー
 ジした\epTeX も登場し,\TeX\ Live\ 2011では\pLaTeX が\epTeX の上で動作す
-るようになった.だが,\pdfTeX 拡張(pdf直接出力やmicro-typesetting)を
+るようになった.だが,\pdfTeX 拡張(PDF 直接出力やmicro-typesetting)を
 \pTeX に対応させようという動きはなく,海外とのgapは未だにあるのが現状であ
 る.
 %</ja>
@@ -189,8 +195,8 @@ The followings are major changes from \pTeX:
 %</ja>
 
 %<*en>
-\item In \pTeX, a linebreak after Japanese character is ignored (and
-      doesn't yield a space), since linebreaks (in source files) are
+\item In \pTeX, a line break after Japanese character is ignored (and
+      doesn't yield a space), since line breaks (in source files) are
       permitted almost everywhere in Japanese texts. However, \LuaTeX-ja
       doesn't have this function completely, because of a specification
       of \LuaTeX.
@@ -226,12 +232,12 @@ The followings are major changes from \pTeX:
 
 %<*en>
 \item Furthermore, nodes between two characters which have no effects in
-      linebreak (\textit{e.g.}, \verb+\special+ node) and kerns from
+      line break (\textit{e.g.}, \verb+\special+ node) and kerns from
       italic correction are ignored in the insertion process.
 %</en>
 %<*ja>
 \item さらに,2つの文字の間にある行末では効果を持たないノード(例えば
-      \verb+\special+ ã\83\8eã\83¼ã\83\89ï¼\89ã\82\84ï¼\8cã\82¤ã\82¿ã\83ªã\83\83ã\82¯è£\9cæ­£ã\81«ä¼´ã\81\86挿入されるカーンは
+      \verb+\special+ ã\83\8eã\83¼ã\83\89ï¼\89ã\82\84ï¼\8cã\82¤ã\82¿ã\83ªã\83\83ã\82¯è£\9cæ­£ã\81«ä¼´ã\81\84挿入されるカーンは
       挿入処理中では無視される.
 %</ja>
 
@@ -251,7 +257,7 @@ The followings are major changes from \pTeX:
       If you want to do so, please put an empty hbox between it instead:
 %</en>
 %<*ja>
-      ã\82\82ã\81\97å\90\8cã\81\98ã\81\93ã\81¨ã\82\92ã\82\84ã\82\8aã\81\9fã\81\91ã\82\8cã\81°ï¼\8c空ã\81®hboxã\82\92é\96\93ã\81«æ\8c\9fã\82\80ã\82\88ã\81\86ã\81«ã\81\97ã\81¦ã\81\8fã\81 ã\81\95い:
+      ã\82\82ã\81\97å\90\8cã\81\98ã\81\93ã\81¨ã\82\92ã\82\84ã\82\8aã\81\9fã\81\91ã\82\8cã\81°ï¼\8c空ã\81®hboxã\82\92é\96\93ã\81«æ\8c\9fã\82\81ã\81°ã\82\88い:
 %</ja>
 \begin{verbatim}
   ちょ\hbox{}っと
@@ -276,7 +282,7 @@ The followings are major changes from \pTeX:
 \item 現時点では,縦書きは \LuaTeX-ja ではサポートされていない.
 %</ja>
 
-\end{itemize} 
+\end{itemize}
 
 %<*en>
 For detailed information, see Part~\ref{part-imp}.
@@ -297,7 +303,7 @@ In this document, the following terms and notations are used:
 
 \begin{itemize}
 %<*en>
-\item Characters are divided into two types: 
+\item Characters are divided into two types:
 %</en>
 %<*ja>
 \item 文字は2種類に分けられる:
@@ -314,7 +320,7 @@ In this document, the following terms and notations are used:
 %</ja>
 
 %<*en>
-\item \textbf{ALchar}: standing for all other characters like alphabets. 
+\item \textbf{ALchar}: standing for all other characters like alphabets.
 %</en>
 %<*ja>
 \item \textbf{ALchar}: アルファベットを始めとする,その他全ての文字を指す.
@@ -397,14 +403,14 @@ This project is hosted by SourceForge.JP.
 本プロジェクトは SourceForge.JP のサービスを用いて運営されている.
 %</ja>
 
-%<en>\paragraph{Members}\ 
-%<ja>\paragraph{開発メンバー}\ 
+%<en>\paragraph{Members}\
+%<ja>\paragraph{開発メンバー}\
 %<*en>
 \begin{multienumerate}
 \def\labelenumi{$\bullet$}
 \mitemxxx{Hironori KITAGAWA}{Kazuki MAEDA}{Takayuki YATO}
 \mitemxxx{Yusuke KUROKI}{Noriyuki ABE}{Munehiro YAMAMOTO}
-\mitemxxx{Tomoaki HONDA}{Shuzaburo SAITO}{}
+\mitemxxo{Tomoaki HONDA}{Shuzaburo SAITO}
 \end{multienumerate}
 %</en>
 %<*ja>
@@ -412,7 +418,7 @@ This project is hosted by SourceForge.JP.
 \def\labelenumi{$\bullet$}
 \mitemxxx{北川 弘典}{前田 一貴}{八登 崇之}
 \mitemxxx{黒木 裕介}{阿部 紀行}{山本 宗宏}
-\mitemxxx{本田 知亮}{齋藤修三郎}{}
+\mitemxxo{本田 知亮}{齋藤 修三郎}
 \end{multienumerate}
 %</ja>
 
@@ -441,10 +447,10 @@ If you are using \TeX~Live~2011 or current W32\TeX, you don't have to worry.
       \TeX~Live~2011 や W32\TeX の最新版ならば問題ない.
 %</ja>
 %<*en>
-\item The source archive of \LuaTeX-ja, of course{\tt:)}
+\item The source archive of \LuaTeX-ja, of course\texttt{:)}
 %</en>
 %<*ja>
-\item \LuaTeX-ja のソースアーカイブ(もちろん {\tt:)}).
+\item \LuaTeX-ja のソースアーカイブ(もちろん \texttt{:)}).
 %</ja>
 \end{itemize}
 
@@ -490,24 +496,24 @@ Note that the forefront of development may not be in \texttt{master} branch.
 %</ja>
 
 %<*en>
-\item Extract the archive. You will see {\tt src/} and several other sub-directories.
+\item Extract the archive. You will see \texttt{src/} and several other sub-directories.
 %</en>
 %<*ja>
-\item アーカイブを展開する.{\tt src/} をはじめとしたいくつかのディレクトリができる.
+\item アーカイブを展開する.\texttt{src/} をはじめとしたいくつかのディレクトリができる.
 %</ja>
 
 %<*en>
-\item Copy all the contents of {\tt src/} into one of your \texttt{TEXMF} tree.
+\item Copy all the contents of \texttt{src/} into one of your \texttt{TEXMF} tree.
 %</en>
 %<*ja>
-\item {\tt src/} の中身全てを自分の \texttt{TEXMF} ツリーにコピーする.
+\item \texttt{src/} の中身全てを自分の \texttt{TEXMF} ツリーにコピーする.
 %</ja>
 
 %<*en>
-\item If {\tt mktexlsr} is needed to update the filename database, make it so.
+\item If \texttt{mktexlsr} is needed to update the file name database, make it so.
 %</en>
 %<*ja>
-\item もし {\tt mktexlsr} を実行する必要があればそうする.
+\item 必要があれば,\texttt{mktexlsr} を実行する.
 %</ja>
 \end{enumerate}
 
@@ -521,11 +527,11 @@ Note that the forefront of development may not be in \texttt{master} branch.
 %</en>
 %<*ja>
 \item 原稿のソースファイルの文字コードは UTF-8 でなければならない.
-      EUC-JP や Shift-JIS は使用できない
+      従来日本語の文字コードとして用いられてきた EUC-JP や Shift-JIS は使用できません
 %</ja>
 
 %<*en>
-\item May be conflict with other packages. 
+\item May be conflict with other packages.
 
       For example, the default setting of \textbf{JAchar} in the present
       version does not coexist with the \Pkg{unicode-math}
@@ -554,17 +560,18 @@ Note that the forefront of development may not be in \texttt{master} branch.
 
 %<*en>
 To use \LuaTeX-ja in plain \TeX, simply put the following at the beginning of the document:
-\begin{verbatim}
-\input luatexja.sty
-\end{verbatim}
-This does minimal settings (like {\tt ptex.tex}) for typesetting Japanese documents:
 %</en>
 %<*ja>
 \LuaTeX-ja を plain \TeX で使うためには,単に次の行をソースファイルの冒頭に追加すればよい:
+%</ja>
 \begin{verbatim}
 \input luatexja.sty
 \end{verbatim}
-これで({\tt ptex.tex} のように)日本語組版のための最低限の設定がなされる:
+%<*en>
+This does minimal settings (like \texttt{ptex.tex}) for typesetting Japanese documents:
+%</en>
+%<*ja>
+これで(\texttt{ptex.tex} のように)日本語組版のための最低限の設定がなされる:
 %</ja>
 
 \begin{itemize}
@@ -586,8 +593,8 @@ This does minimal settings (like {\tt ptex.tex}) for typesetting Japanese docume
 \begin{tabular}{ccccc}
 \toprule
 \textbf{字体}&\textbf{フォント名}&\bf `10\,pt'&\bf`7\,pt'&\bf`5\,pt'\\\midrule
-\emph{明朝体}&Ryumin-Light    &\verb+\tenmin+&\verb+\sevenmin+&\verb+\fivemin+\\
-\emph{ゴシック体}&GothicBBB-Medium&\verb+\tengt+ &\verb+\sevengt+ &\verb+\fivegt+\\
+明朝体&Ryumin-Light    &\verb+\tenmin+&\verb+\sevenmin+&\verb+\fivemin+\\
+ゴシック体&GothicBBB-Medium&\verb+\tengt+ &\verb+\sevengt+ &\verb+\fivegt+\\
 \bottomrule
 \end{tabular}
 \end{center}
@@ -640,7 +647,7 @@ This does minimal settings (like {\tt ptex.tex}) for typesetting Japanese docume
       量は次のように設定されている:
 %</ja>
 \[
- (0.25\cdot 0.962216\cdot 10\,\mathrm{pt})^{+1\,\text{pt}}_{-1\,\text{pt}} 
+ (0.25\cdot 0.962216\cdot 10\,\mathrm{pt})^{+1\,\text{pt}}_{-1\,\text{pt}}
  = 2.40554\,\mathrm{pt}^{+1\,\text{pt}}_{-1\,\text{pt}}.
 \]
 \end{itemize}
@@ -653,31 +660,37 @@ This does minimal settings (like {\tt ptex.tex}) for typesetting Japanese docume
 
 %<*en>
 Using in \LaTeXe\ is basically same. To set up the minimal environment
-for Japanese, you only have to load {\tt luatexja.sty}:
+for Japanese, you only have to load \texttt{luatexja.sty}:
+%</en>
+%<*ja>
+\LaTeXe を用いる場合も基本的には同じである.日本語組版のための最低限の環境を
+設定するためには,\texttt{luatexja.sty} を読み込むだけでよい:
+%</ja>
 \begin{verbatim}
 \usepackage{luatexja}
 \end{verbatim}
-It also does minimal settings (counterparts in \pLaTeX\ are {\tt
-plfonts.dtx} and {\tt pldefs.ltx}):
+%<*en>
+It also does minimal settings (counterparts in \pLaTeX\ are \texttt{
+plfonts.dtx} and \texttt{pldefs.ltx}):
 %</en>
 %<*ja>
-\LaTeXe を用いる場合も基本的には同じである.日本語組版のための最低限の環境を
-設定するためには,{\tt luatexja.sty} を読み込むだけでよい
+これで \pLaTeX の \texttt{plfonts.dtx} と \texttt{pldefs.ltx} に相当する最低限の設定が
+なされる
 %</ja>
 
 \begin{itemize}
 %<*en>
-\item {\tt JY3} is the font encoding for Japanese fonts (in horizontal direction).\\
-When vertical typesetting is supported by \LuaTeX-ja in the future, {\tt JT3} will be used for vertical fonts.
+\item \texttt{JY3} is the font encoding for Japanese fonts (in horizontal direction).\\
+When vertical typesetting is supported by \LuaTeX-ja in the future, \texttt{JT3} will be used for vertical fonts.
 %</en>
 %<*ja>
-\item {\tt JY3} は和文フォント用のフォントエンコーディングである(横書き用).\\
-将来的に,\LuaTeX-ja で縦書きがサポートされる際には,{\tt JT3} を縦書き用として
+\item \texttt{JY3} は和文フォント用のフォントエンコーディングである(横書き用).\\
+将来的に,\LuaTeX-ja で縦書きがサポートされる際には,\texttt{JT3} を縦書き用として
 用いる予定である.
 %</ja>
 
 %<*en>
-\item Two font families {\tt mc} and {\tt gt} are defined: 
+\item Two font families \texttt{mc} and \texttt{gt} are defined:
 \begin{center}
 \begin{tabular}{ccccc}
 \toprule
@@ -688,11 +701,11 @@ When vertical typesetting is supported by \LuaTeX-ja in the future, {\tt JT3} wi
 \end{tabular}
 \end{center}
 Remark that the bold series in both family are same as the medium series of \emph{gothic} family.
-This is a convention in \pLaTeX. This is a trace that there were only 2~fonts (these are Ryumin-Light 
-and GothicBBB-Medium) in early yearss of DTP.
+This is a convention in \pLaTeX. This is a trace that there were only 2~fonts (these are Ryumin-Light
+and GothicBBB-Medium) in early years of DTP.
 %</en>
 %<*ja>
-\item 2つのフォントファミリ {\tt mc} と {\tt gt} が定義されている:
+\item 2つのフォントファミリ \texttt{mc} と \texttt{gt} が定義されている:
 \begin{center}
 \begin{tabular}{ccccc}
 \toprule
@@ -703,30 +716,30 @@ and GothicBBB-Medium) in early yearss of DTP.
 \end{tabular}
 \end{center}
 どちらのファミリにおいても,その bold シリーズはゴシック体の medium シリーズで
-あることに注意.これは初期の DTP において和文フォントが2つ(それがちょうど\ 
+あることに注意.これは初期の DTP において和文フォントが2つ(それがちょうど\
 Ryumin-Light, GothicBBB-Medium だった)しか利用できなかった時の名残であり,\pLaTeX{}
 での標準設定とも同じである.
 %</ja>
 
 %<*en>
-\item Japanese characters in math mode are typeset by the font family {\tt mc}.
+\item Japanese characters in math mode are typeset by the font family \texttt{mc}.
 %</en>
 %<*ja>
-\item 数式モード中の和文文字は {\tt mc} ファミリで出力される.
+\item 数式モード中の和文文字は \texttt{mc} ファミリで出力される.
 %</ja>
 \end{itemize}
 
 %<*en>
 However, above settings are not sufficient for Japanese-based
 documents. To typeset Japanese-based documents, you are better to use
-class files other than {\tt article.cls}, {\tt book.cls}, and so on.  At
+class files other than \texttt{article.cls}, \texttt{book.cls}, and so on.  At
 the present, we have the counterparts of \Pkg{jclasses} (standard
 classes in \pLaTeX) and \Pkg{jsclasses} (classes by Haruhiko
 Okumura), namely, \Pkg{ltjclasses} and \Pkg{ltjsclasses}.
 %</en>
 %<*ja>
 しかしながら,上記の設定は日本語の文書にとって十分とは言えない.
-日本語文書を組版するためには,{\tt article.cls}, {\tt book.cls} といった
+日本語文書を組版するためには,\texttt{article.cls}, \texttt{book.cls} といった
 欧文用のクラスファイルではなく,和文用のクラスファイルを用いた方がよい.
 現時点では,\Pkg{jclasses} (\pLaTeX の標準クラス)と \Pkg{jsclasses}
 (奥村晴彦氏によるクラスファイル)に対応するものとして,\Pkg{ltjclasses},
@@ -734,7 +747,7 @@ Okumura), namely, \Pkg{ltjclasses} and \Pkg{ltjsclasses}.
 %</ja>
 
 %<*en>
-\paragraph{{\tt\char92 CID, {\tt\char92 UTF}} and macros in OTF package}
+\paragraph{\texttt{\char92 CID, \texttt{\char92 UTF}} and macros in OTF package}
 Under \pLaTeX, \Pkg{otf} package (developed by Shuzaburo Saito) is
 used for typesetting characters which is in Adobe-Japan1-6 CID but not
 in JIS~X~0208. Since this package is widely used, \LuaTeX-ja
@@ -742,7 +755,7 @@ supports some of functions in \Pkg{otf} package.
 If you want to use these functions, load \Pkg{luatexja-otf} package.
 %</en>
 %<*ja>
-\paragraph{{\tt\char92 CID, {\tt\char92 UTF}} と OTF パッケージのマクロ}
+\paragraph{\texttt{\char92 CID, \texttt{\char92 UTF}} と OTF パッケージのマクロ}
 \pLaTeX では,JIS~X~0208 にない Adobe-Japan1-6 の文字を出力するために,
 齋藤修三郎氏による \Pkg{otf} パッケージが用いられていた.このパッケージは
 広く用いられているため,\LuaTeX-ja においても \Pkg{otf} パッケージの機能の
@@ -756,7 +769,7 @@ If you want to use these functions, load \Pkg{luatexja-otf} package.
 \CID{7652}飾区の\CID{13706}野家,
 葛飾区の吉野家
 \end{LTXexample}
-%lltjlisting.sty要修正?:↑「森」の直後で改行.
+%lltjp-listings.sty要修正?:↑「森」の直後で改行.
 
 
 %<en>\subsection{Changing Fonts}
@@ -770,8 +783,8 @@ sources like the following:
 %</en>
 %<*ja>
 \paragraph{意見:数式モード中の和文文字}
-\pTeX では数式中での和文文字の使用がサポートされていたので
-以下のようなソースが存在した:
+\pTeX では,何もしないでも数式中に和文文字を記述することができた.そのため
+以下のようなソースが見られた:
 %</ja>
 \begin{LTXexample}
 $f_{高温}$~($f_{\text{high temperature}}$).
@@ -781,7 +794,7 @@ $5\in{}素:=\{\,p\in\mathbb N:\text{$p$ is a prime}\,\}$.
 %<*en>
 We (the project members of \LuaTeX-ja) think that using
 Japanese characters in math mode are allowed if and only if these are used as identifiers.
-In this point of view, 
+In this point of view,
 %</en>
 %<*ja>
 \LuaTeX-ja プロジェクトでは,数式モード中での和文文字はそれらが識別子として用いられる
@@ -791,7 +804,7 @@ In this point of view,
 \begin{itemize}
 %<*en>
 \item The lines 1~and~2 above are not correct, since `高温' in above is used as a textual label, and
-`よって' is used as a conjunction. 
+`よって' is used as a conjunction.
 %</en>
 %<*ja>
 \item 上記数式のうち 1, 2 行目は正しくない.なぜならば `高温' が意味のあるラベルと
@@ -814,7 +827,7 @@ Hence, in our opinion, the above input should be corrected as:
 \begin{LTXexample}
 $f_{\text{高温}}$~%
 ($f_{\text{high temperature}}$).
-\[ y=(x-1)^2+2\quad 
+\[ y=(x-1)^2+2\quad
   \mathrel{\text{よって}}\quad y>0 \]
 $5\in{}素:=\{\,p\in\mathbb N:\text{$p$ is a prime}\,\}$.
 \end{LTXexample}
@@ -826,8 +839,8 @@ this chapter. For the method, please see Part~\ref{part-ref}.
 %</en>
 %<*ja>
 また \LuaTeX-ja プロジェクトでは,和文文字が識別子として用いられることはほとんどない
\81¨è\80\83ã\81\88ã\81¦ã\81\8aã\82\8aï¼\8cã\81\97ã\81\9fã\81\8cã\81£ã\81¦ã\81\93ã\81®ç« では数式モード中の和文フォントを変更する方法については
-記述しない.この方法については第 \ref{part-ref} を参照のこと.
\81¨è\80\83ã\81\88ã\81¦ã\81\8aã\82\8aï¼\8cã\81\97ã\81\9fã\81\8cã\81£ã\81¦ã\81\93ã\81®ç¯\80では数式モード中の和文フォントを変更する方法については
+記述しない.この方法については第 \ref{part-ref} を参照のこと.
 %</ja>
 
 %<*en>
@@ -838,17 +851,17 @@ To change Japanese fonts in plain \TeX, you must use the primitive
 %<*ja>
 \paragraph{plain \TeX}
 plain \TeX で和文フォントを変更するためには,\verb+\jfont+ プリミティブを用いなけれ
-ばならない.第 \ref{part-ref} を参照せよ.
+ばならない.第 \ref{part-ref} を参照せよ.
 %</ja>
 
 %<*en>
 \paragraph{NFSS2}
 For \LaTeXe, \LuaTeX-ja simply adopted the font selection system from that
-of \pLaTeXe\ (in {\tt plfonts.dtx}).
+of \pLaTeXe\ (in \texttt{plfonts.dtx}).
 %</en>
 %<*ja>
 \paragraph{NFSS2}
-\LaTeXe については,\LuaTeX-ja では単にフォント選択システムを \pLaTeXe\ ({\tt plfonts.dtx})
+\LaTeXe については,\LuaTeX-ja では単にフォント選択システムを \pLaTeXe\ (\texttt{plfonts.dtx})
 から採用している.
 %</ja>
 \begin{itemize}
@@ -866,10 +879,10 @@ of \pLaTeXe\ (in {\tt plfonts.dtx}).
 %<*en>
 \item Commands \verb+\fontfamily+, \verb+\fontseries+,
       \verb+\fontshape+ and \verb+\selectfont+ can be used to change
-      attributes of Japanese fonts. 
+      attributes of Japanese fonts.
 %</en>
 %<*ja>
-\item \verb+\fontfamily+, \verb+\fontseries+, \verb+\fontshape+, そして 
+\item \verb+\fontfamily+, \verb+\fontseries+, \verb+\fontshape+, そして
       \verb+\selectfont+ が和文フォントの属性を変更するために使用できる.
 %</ja>
 
@@ -910,20 +923,21 @@ auto select&\verb+\fontencoding+&\verb+\fontfamily+&---&---&\verb+\usefont+\\
 
 %<*en>
       \verb+\fontencoding{<encoding>}+ changes the encoding of alphabetic fonts
-      or Japanese fonts depending on the argument. For example, 
-      \verb+\fontencoding{JY3}+ changes the encoding of Japanese fonts to 
-      \texttt{JY3} and \verb+\fontencoding{T1}+ changes the encoding of 
+      or Japanese fonts depending on the argument. For example,
+      \verb+\fontencoding{JY3}+ changes the encoding of Japanese fonts to
+      \texttt{JY3} and \verb+\fontencoding{T1}+ changes the encoding of
       alphabetic fonts to \texttt{T1}.
       \verb+\fontfamily+ also changes the family of Japanese fonts, alphabetic
       fonts, \emph{or both}. For detail, see Subsection~\ref{ssub-nfsspat}.
 %</en>
 %<*ja>
-      ここで,\verb+\fontencoding{<encoding>}+は,引数により和文側か欧文側かの
-      どちらかが切り替わる.例えば,\verb+\fontencoding{JY3}+は和文フォントの
-      エンコーディングを\texttt{JY3}に変更し,\verb+\fontencoding{T1}+ は欧文
-      フォント側を\texttt{T1}へと変更する.
-      \verb+\fontfamily+も引数により和文側,欧文側,\textbf{あるいは両方}のフォ
-      ントファミリが切り替わる.詳細は\ref{ssub-nfsspat}節を参照すること.
+      ここで,\verb+\fontencoding{<encoding>}+は,引数により和文側か欧文
+      側かのどちらかのエンコーディングを変更する.例えば,
+      \verb+\fontencoding{JY3}+は和文フォントのエンコーディングを
+      \texttt{JY3}に変更し,\verb+\fontencoding{T1}+ は欧文フォント側を
+      \texttt{T1}へと変更する.\verb+\fontfamily+も引数により和文側,欧文
+      側,\textbf{あるいは両方}のフォントファミリを変更する.詳細は
+      \ref{ssub-nfsspat}節を参照すること.
 %</ja>
 
 %<*en>
@@ -934,13 +948,13 @@ auto select&\verb+\fontencoding+&\verb+\fontfamily+&---&---&\verb+\usefont+\\
 %</en>
 %<*ja>
 \item 和文フォントファミリの定義には \verb+\DeclareFontFamily+ の代わりに
-      \verb+\DeclareKanjiFamily+ を用いる.しかし,現在の実装では 
+      \verb+\DeclareKanjiFamily+ を用いる.しかし,現在の実装では
       \verb+\DeclareFontFamily+ を用いても問題は生じない.
 %</ja>
 \end{itemize}
 
+\subsection{fontspec}
 %<*en>
-\paragraph{fontspec}
 To coexist with the \Pkg{fontspec} package, it is needed to load
 \Pkg{luatexja-fontspec} package in the preamble. This additional
 package automatically loads \Pkg{luatexja} and \Pkg{fontspec}
@@ -957,7 +971,7 @@ In \Pkg{luatexja-fontspec} package, the following 7~commands are defined as
 counterparts of original commands in the \Pkg{fontspec} package:
 %</en>
 %<*ja>
-\Pkg{luatexja-fontspec} パッケージでは,以下の7つのコマンドを \Pkg{fontspec} 
+\Pkg{luatexja-fontspec} パッケージでは,以下の7つのコマンドを \Pkg{fontspec}
 パッケージの元のコマンドに対応するものとして定義している:
 %</ja>
 %<*en>
@@ -996,12 +1010,12 @@ alphabetic fonts
 %</ja>
 
 \begin{LTXexample}
-  \fontspec[Numbers=OldStyle]{TeX Gyre Termes}
-  \jfontspec{IPAexMincho}
-  JIS~X~0213:2004→辻
+\fontspec[Numbers=OldStyle]{TeX Gyre Termes}
+\jfontspec{IPAexMincho}
+JIS~X~0213:2004→辻
 
-  \addjfontfeatures{CJKShape=JIS1990}
-  JIS~X~0208:1990→辻
+\addjfontfeatures{CJKShape=JIS1990}
+JIS~X~0208:1990→辻
 \end{LTXexample}
 
 %<*en>
@@ -1015,106 +1029,279 @@ these 7~commands, since this feature and \textbf{JAglue} will clash (see
 和文フォントについては全ての和文文字のグリフがほぼ等幅であるのが普通であるため,
 \verb+\setmonojfont+ コマンドは存在しないことに注意.また,これらの和文用の7つのコマ
 ンドでは Kerning feature はデフォルトでは off となっている.これはこの
-feature が \textbf{JAglue} と衝突するためである(\ref{para-kern} 節を見よ).
+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}
+
+
 %<en>\section{Changing Parameters}
 %<ja>\section{パラメータの変更}
+
+%<*en>
 There are many parameters in \LuaTeX-ja. And due to the behavior of \LuaTeX,
 most of them are not stored as internal register of \TeX, but as an
 original storage system in \LuaTeX-ja. Hence, to assign or acquire those
 parameters, you have to use commands \verb+\ltjsetparameter+ and
 \verb+\ltjgetparameter+.
+%</en>
+%<*ja>
+\LuaTeX-ja には多くのパラメータが存在する.そして \LuaTeX の振る舞いのために,
+その多くは \TeX のレジスタにではなく,\LuaTeX-ja 独自の方法で保持されている.
+そのため,これらのパラメータを設定・取得するためには \verb+\ltjsetparameter+ と
+\verb+\ltjgetparameter+ を用いなければならない.
+%</ja>
 
 %<en>\subsection{Editing the range of \textbf{JAchar}s}
 %<ja>\subsection{\textbf{JAchar} の範囲の設定}
 
-To edit the range of \textbf{JAchar}s, You have to assign a non-zero
+%<*en>
+To edit the range of \textbf{JAchar}s, you have to assign a non-zero
 natural number which is less than 217 to the character range first. This
 can be done by using \verb+\ltjdefcharrange+ primitive. For example, the
 next line assigns whole characters in Supplementary Multilingual Plane
 and the character `漢' to the range number~100.
+%</en>
+%<*ja>
+\textbf{JAchar} の範囲を設定するためには,まず文字範囲に0より大きく217より小さい
+自然数を割り当てる必要がある.これには \verb+\ltjdefcharrange+ プリミティブを用いる.
+例えば,次のように書くことで追加多言語面 (SMP) にある全ての文字と `漢' の範囲番号が
+100に設定される.
+%</ja>
 \begin{lstlisting}
 \ltjdefcharrange{100}{"10000-"1FFFF,`漢}
 \end{lstlisting}
+%<*en>
 This assignment of numbers to ranges are always global, so you should
-not do this in the middle of a document. 
+not do this in the middle of a document.
+%</en>
+%<*ja>
+この文字範囲への番号の割り当てはいつもグローバルであり,したがって文書の途中で
+この操作をするべきではない.
+%</ja>
 
+%<*en>
 If some character has been belonged to some non-zero numbered range,
 this will be overwritten by the new setting. For example, whole SMP
-belong the range~4 in the default setting of \LuaTeX-ja, and if you
-specify the above line, then SMP will belong the range~100 and be
+belong to the range~4 in the default setting of \LuaTeX-ja, and if you
+specify the above line, then SMP will belong to the range~100 and be
 removed from the range~4.
+%</en>
+%<*ja>
+もし指定されたある文字がある非零番号の範囲に属していたならば,これは新しい設定で
+上書きされる.例えば,SMP は全て \LuaTeX-ja のデフォルトでは4番の文字範囲に
+属しているが,上記の指定を行えば SMP は100番に属すようになり,4番からは除かれる.
+%</ja>
 
-After assigning numbers to ranges, the {\sf jacharrange} parameter can
+%<*en>
+After assigning numbers to ranges, the \textsf{jacharrange} parameter can
 be used to customize which character range will be treated as ranges of
 \textbf{JAchar}s, as the following line (this is just the default
 setting of \LuaTeX-ja):
+%</en>
+%<*ja>
+文字範囲に番号を割り当てた後は,\textsf{jacharrange} パラメータが \textbf{JAchar} と
+して扱われる文字の範囲を設定するために用いられる.例えば,以下は \LuaTeX-ja の
+初期設定である:
+%</ja>
 \begin{verbatim}
 \ltjsetparameter{jacharrange={-1, +2, +3, -4, -5, +6, +7, +8}}
 \end{verbatim}
-The argument to {\sf jacharrange} parameter is a list of integer. Negative interger $-n$ in the list means that `the character range~$n$ is ...'.
+%<*en>
+The argument to \textsf{jacharrange} parameter is a list of integer.
+Negative integer $-n$ in the list means that `the characters that belong to
+range~$n$ are treated as \textbf{ALchar}', and positive integer $+n$ means
+that `the characters that belong to range~$n$ are treated as \textbf{JAchar}'.
+%</en>
+%<*ja>
+\textsf{jacharrange} パラメータには整数のリストを与える.
+リスト中の負の整数 $-n$ は「文字範囲 $n$ に属する文字は \textbf{ALchar} として
+扱われる」ことを意味し,正の整数 $+n$ は \textbf{JAchar} として扱うことを意味する.
+%</ja>
 
+%<*en>
 \paragraph{Default Setting}
-Lua\TeX-ja predefines eight character ranges for convinience. They are
+\LuaTeX-ja predefines eight character ranges for convenience. They are
 determined from the following data:
+%</en>
+%<*ja>
+\paragraph{初期設定}
+\LuaTeX-ja では8つの文字範囲を設定している.これらは以下のデータに基づいて決定して
+いる.
+%</ja>
 \begin{itemize}
+%<*en>
 \item Blocks in Unicode~6.0.
+%</en>
+%<*ja>
+\item Unicode~6.0 のブロック.
+%</ja>
+%<*en>
 \item The \texttt{Adobe-Japan1-UCS2} mapping between a CID Adobe-Japan1-6 and Unicode.
+%</en>
+%<*ja>
+\item \texttt{Adobe-Japan1-UCS2} による Adobe-Japan1-6 の CID と Unicode の間の
+      マッピング.
+%</ja>
+%<*en>
 \item The \texttt{PXbase} bundle for \upTeX\ by Takayuki Yato.
+%</en>
+%<*ja>
+\item 八登崇之氏による \upTeX 用の \texttt{PXbase} バンドル.
+%</ja>
 \end{itemize}
 
+%<*en>
 Now we describe these eight ranges. The alphabet `J' or `A' after the
 number shows whether characters in the range is treated as
-\textbf{JAchar}s or not by default. These settings are similar to \texttt{prefercjk} ...
+\textbf{JAchar}s or not by default. These settings are similar to the
+\texttt{prefercjk} settings defined in \texttt{PXbase} bundle.
+%</en>
+%<*ja>
+以下ではこれら8つの文字範囲について記述する.番号のあとのアルファベット `J' と `A'
+はデフォルトで \textbf{JAchar} として扱われるかどうかを示す.これらの設定は
+\texttt{PXbase} バンドルで定義されている \texttt{prefercjk} と類似のものである.
+%</ja>
 \begin{description}
+%<*en>
 \item[Range~8${}^{\text{J}}$] Symbols in 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 charatcers:
+        consists of the following characters:
+%</en>
+%<*ja>
+\item[範囲 8${}^{\text{J}}$] ISO~8859-1 の上位領域(ラテン1補助)と
+                             JIS~X~0208 の共通部分にある記号.この文字範囲は
+                             以下の文字で構成される:
+%</ja>
 \begin{multicols}{2}
 \begin{itemize}
-\def\ch#1#2{\item \char"#1\ ({\tt U+00#1}, #2)}%"
+\def\ch#1#2{\item \char"#1\ (\texttt{U+00#1}, #2)}%"
+%<*en>
 \ch{A7}{Section Sign}
-\ch{A8}{Umlaut or diaeresis}
+\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}
+%</en>
+%<*ja>
+\ch{A7}{節記号}
+\ch{A8}{トレマ}
+\ch{B0}{度}
+\ch{B1}{正又は負符号}
+\ch{B4}{アキュート・アクセント}
+\ch{B6}{段落記号}
+\ch{D7}{乗算記号}
+\ch{F7}{除算記号}
+%</ja>
 \end{itemize}
 \end{multicols}
+
+%<*en>
 \item[Range~1${}^{\text{A}}$] Latin characters that some of them are included in Adobe-Japan1-6.
 This range consist of the following Unicode ranges, \emph{except characters in the range~8 above}:
+%</en>
+%<*ja>
+\item[範囲 1${}^{\text{A}}$] ラテン文字.一部はAdobe-Japan1-6 にも含まれている.
+                             この範囲は以下の Unicode のブロックから構成されている.
+                             \textbf{ただし,範囲 8 は除く.}
+%</ja>
 \begin{multicols}{2}
 \begin{itemize}
-\item {\tt U+0080}--{\tt U+00FF}: Latin-1 Supplement
-\item {\tt U+0100}--{\tt U+017F}: Latin Extended-A
-\item {\tt U+0180}--{\tt U+024F}: Latin Extended-B
-\item {\tt U+0250}--{\tt U+02AF}: IPA Extensions
-\item {\tt U+02B0}--{\tt U+02FF}: Spacing Modifier Letters
-\item {\tt U+0300}--{\tt U+036F}: Combining Diacritical Marks
-\item {\tt U+1E00}--{\tt U+1EFF}: Latin Extended Additional
-\par\ 
+%<*en>
+\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
+\item \texttt{U+0300}--\texttt{U+036F}: Combining Diacritical Marks
+\item \texttt{U+1E00}--\texttt{U+1EFF}: Latin Extended Additional
+%</en>
+%<*ja>
+\item \texttt{U+0080}--\texttt{U+00FF}: ラテン1補助
+\item \texttt{U+0100}--\texttt{U+017F}: ラテン文字拡張A
+\item \texttt{U+0180}--\texttt{U+024F}: ラテン文字拡張B
+\item \texttt{U+0250}--\texttt{U+02AF}: IPA拡張(国際音声記号)
+\item \texttt{U+02B0}--\texttt{U+02FF}: 前進を伴う修飾文字
+\item \texttt{U+0300}--\texttt{U+036F}: ダイアクリティカルマーク(合成可能)
+\item \texttt{U+1E00}--\texttt{U+1EFF}: ラテン文字拡張追加
+%</ja>
+\par\
 \end{itemize}
 \end{multicols}
+%<*en>
 \item[Range~2${}^{\text{J}}$] Greek and Cyrillic letters. JIS~X~0208 (hence most of Japanese
           fonts) has some of these characters.
+%</en>
+%<*ja>
+\item[範囲 2${}^{\text{J}}$] ギリシャ文字とキリル文字.JIS~X~0208(したがって多くの
+                             和文フォント)はこれらの文字を持つ.
+%</ja>
 \begin{multicols}{2}
 \begin{itemize}
-\item {\tt U+0370}--{\tt U+03FF}: Greek and Coptic
-\item {\tt U+0400}--{\tt U+04FF}: Cyrillic
-\item {\tt U+1F00}--{\tt U+1FFF}: Greek Extended
-\\\ 
+%<*en>
+\item \texttt{U+0370}--\texttt{U+03FF}: Greek and Coptic
+\item \texttt{U+0400}--\texttt{U+04FF}: Cyrillic
+\item \texttt{U+1F00}--\texttt{U+1FFF}: Greek Extended
+%</en>
+%<*ja>
+\item \texttt{U+0370}--\texttt{U+03FF}: ギリシア文字及びコプト文字
+\item \texttt{U+0400}--\texttt{U+04FF}: キリル文字
+\item \texttt{U+1F00}--\texttt{U+1FFF}: キリル文字補助
+%</ja>
+\\\
 \end{itemize}
 \end{multicols}
+%<*en>
 \item[Range~3${}^{\text{J}}$] Punctuations and Miscellaneous symbols. The block list is
           indicated in Table~\ref{table-rng3}.
+%</en>
+%<*ja>
+\item[範囲 3${}^{\text{J}}$] 句読点と記号類.ブロックのリストは表~\ref{table-rng3}
+                             に示してある.
+%</ja>
 \begin{table}[!tb]
-\caption{Unicode blocks in predefined character range~3.}\label{table-rng3}
-\catcode`\"=13\def"#1#2#3#4{{\tt U+#1#2#3#4}}%"
+%<*en>
+\caption{Unicode blocks in predefined character range~3.}
+%</en>
+%<*ja>
+\caption{文字範囲 3 に指定されている Unicode ブロック.}
+%</ja>
+\label{table-rng3}
+\catcode`\"=13\def"#1#2#3#4{\texttt{U+#1#2#3#4}}%"
 \begin{center}\small
 \begin{tabular}{llll}
+%<*en>
 "2000--"206F&General Punctuation&
 "2070--"209F&Superscripts and Subscripts\\
 "20A0--"20CF&Currency Symbols&
@@ -1134,26 +1321,74 @@ This range consist of the following Unicode ranges, \emph{except characters in t
 "2980--"29FF&Misc.\ Mathematical Symbols-B&
 "2B00--"2BFF&Miscellaneous Symbols and Arrows\\
 "E000--"F8FF&Private Use Area&
+%</en>
+%<*ja>
+"2000--"206F&一般句読点&
+"2070--"209F&上付き・下付き\\
+"20A0--"20CF&通貨記号&
+"20D0--"20FF&記号用ダイアクリティカルマーク(合成可能)\\
+"2100--"214F&文字様記号&
+"2150--"218F&数字に準じるもの\\
+"2190--"21FF&矢印&
+"2200--"22FF&数学記号(演算子)\\
+"2300--"23FF&その他の技術用記号&
+"2400--"243F&制御機能用記号\\
+"2500--"257F&罫線素片&
+"2580--"259F&ブロック要素\\
+"25A0--"25FF&幾何学模様&
+"2600--"26FF&その他の記号\\
+"2700--"27BF&装飾記号&
+"2900--"297F&補助矢印B\\
+"2980--"29FF&その他の数学記号B&
+"2B00--"2BFF&その他の記号及び矢印\\
+"E000--"F8FF&私用領域(外字領域)&
+%</ja>
 \end{tabular}
 \end{center}
 \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:
+%</en>
+%<*ja>
+\item[範囲 4${}^{\text{A}}$] 通常和文フォントには含まれていない文字.
+                             この範囲は他の範囲にないほとんど全ての Unicode ブロック
+                             で構成されている.したがって,ブロックのリストを示す
+                             代わりに,範囲の定義そのものを示す:
+%</ja>
 \begin{lstlisting}
 \ltjdefcharrange{4}{%
-   "500-"10FF, "1200-"1DFF, "2440-"245F, "27C0-"28FF, "2A00-"2AFF, 
-  "2C00-"2E7F, "4DC0-"4DFF, "A4D0-"A82F, "A840-"ABFF, "FB50-"FE0F, 
+   "500-"10FF, "1200-"1DFF, "2440-"245F, "27C0-"28FF, "2A00-"2AFF,
+  "2C00-"2E7F, "4DC0-"4DFF, "A4D0-"A82F, "A840-"ABFF, "FB50-"FE0F,
   "FE20-"FE2F, "FE70-"FEFF, "FB00-"FB4F, "10000-"1FFFF} % non-Japanese
 \end{lstlisting}
+%<*en>
 \item[Range~5${}^{\text{A}}$] Surrogates and Supplementary Private Use Areas.
+%</en>
+%<*ja>
+\item[範囲 5${}^{\text{A}}$] 代用符号と補助私用領域.
+%</ja>
+%<*en>
 \item[Range~6${}^{\text{J}}$] Characters used in Japanese. The block list is indicated in Table~\ref{table-rng6}.
+%</en>
+%<*ja>
+\item[範囲 6${}^{\text{J}}$] 日本語で用いられる文字.ブロックのリストは
+                             表~\ref{table-rng6} に示す.
+%</ja>
 \begin{table}[!tb]
-\caption{Unicode blocks in predefined character range~6.}\label{table-rng6}
-\catcode`\"=13\def"#1#2#3#4{{\tt U+#1#2#3#4}}%"
+%<*en>
+\caption{Unicode blocks in predefined character range~6.}
+%</en>
+%<*ja>
+\caption{文字範囲 6 に指定されている Unicode ブロック.}
+%</ja>
+\label{table-rng6}
+\catcode`\"=13\def"#1#2#3#4{\texttt{U+#1#2#3#4}}%"
 \begin{center}\small
 \begin{tabular}{llll}
+%<*en>
 "2460--"24FF&Enclosed Alphanumerics&
 "2E80--"2EFF&CJK Radicals Supplement\\
 "3000--"303F&CJK Symbols and Punctuation&
@@ -1170,16 +1405,49 @@ This range consist of the following Unicode ranges, \emph{except characters in t
 "FE30--"FE4F&CJK Compatibility Forms\\
 "FE50--"FE6F&Small Form Variants&
 "{20}000--"{2F}FFF&(Supplementary Ideographic Plane)
+%</en>
+%<*ja>
+"2460--"24FF&囲み英数字&
+"2E80--"2EFF&CJK部首補助\\
+"3000--"303F&CJKの記号及び句読点&
+"3040--"309F&平仮名\\
+"30A0--"30FF&片仮名&
+"3190--"319F&漢文用記号(返り点)\\
+"31F0--"31FF&片仮名拡張&
+"3200--"32FF&囲みCJK文字・月\\
+"3300--"33FF&CJK互換用文字&
+"3400--"4DBF&CJK統合漢字拡張A\\
+"4E00--"9FFF&CJK統合漢字&
+"F900--"FAFF&CJK互換漢字\\
+"FE10--"FE1F&縦書き形&
+"FE30--"FE4F&CJK互換形\\
+"FE50--"FE6F&小字形&
+"{20}000--"{2F}FFF&(追加多言語面)
+%</ja>
 \end{tabular}
 \end{center}
 \end{table}
+%<*en>
 \item[Range~7${}^{\text{J}}$] Characters used in CJK languages, but not included in  Adobe-Japan1-6.
 The block list is indicated in Table~\ref{table-rng7}.
+%</en>
+%<*ja>
+\item[範囲 7${}^{\text{J}}$] CJK 言語で用いられる文字のうち,Adobe-Japan1-6 に
+                            含まれていないもの.
+                            ブロックのリストは表~\ref{table-rng7} に示す.
+%</ja>
 \begin{table}[!tb]
-\caption{Unicode blocks in predefined character range~7.}\label{table-rng7}
-\catcode`\"=13\def"#1#2#3#4{{\tt U+#1#2#3#4}}%"
+%<*en>
+\caption{Unicode blocks in predefined character range~7.}
+%</en>
+%<*ja>
+\caption{文字範囲 7 に指定されている Unicode ブロック.}
+%</ja>
+\label{table-rng7}
+\catcode`\"=13\def"#1#2#3#4{\texttt{U+#1#2#3#4}}%"
 \begin{center}\small
 \begin{tabular}{llll}
+%<*en>
 "1100--"11FF&Hangul Jamo&
 "2F00--"2FDF&Kangxi Radicals\\
 "2FF0--"2FFF&Ideographic Description Characters&
@@ -1192,6 +1460,21 @@ The block list is indicated in Table~\ref{table-rng7}.
 "A830--"A83F&Common Indic Number Forms\\
 "AC00--"D7AF&Hangul Syllables&
 "D7B0--"D7FF&Hangul Jamo Extended-B
+%</en>
+%<*ja>
+"1100--"11FF&ハングル字母&
+"2F00--"2FDF&康熙部首\\
+"2FF0--"2FFF&漢字構成記述文字&
+"3100--"312F&注音字母 (注音符号)\\
+"3130--"318F&ハングル互換字母&
+"31A0--"31BF&注音字母拡張\\
+"31C0--"31EF&CJKの筆画&
+"A000--"A48F&イ文字\\
+"A490--"A4CF&イ文字部首&
+"A830--"A83F&共通インド数字に準じるもの\\
+"AC00--"D7AF&ハングル音節文字&
+"D7B0--"D7FF&ハングル字母拡張B
+%</ja>
 \end{tabular}
 \end{center}
 \end{table}
@@ -1201,59 +1484,124 @@ The block list is indicated in Table~\ref{table-rng7}.
 %<en>\subsection{\Param{kanjiskip} and \Param{xkanjiskip}}
 %<ja>\subsection{\Param{kanjiskip} と \Param{xkanjiskip}}
 \label{subs-kskip}
+
+%<*en>
 \textbf{JAglue} is divided into the following three categories:
+%</en>
+%<*ja>
+\textbf{JAglue} は以下の3つのカテゴリに分類される:
+%</ja>
 \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
       place.
-\item The default glue which inserted between two \textbf{JAchar}s ({\sf
+%</en>
+%<*ja>
+\item JFM で指定されたグルー/カーン.もし \verb+\inhibitglue+ が和文文字の周りで
+      発行されていれば,このグルーは挿入されない.
+%</ja>
+%<*en>
+\item The default glue which inserted between two \textbf{JAchar}s (\Param{
       kanjiskip}).
+%</en>
+%<*ja>
+\item デフォルトで2つの \textbf{JAchar} の間に挿入されるグルー(\Param{kanjiskip}).
+%</ja>
+%<*en>
 \item The default glue which inserted between a \textbf{JAchar} and an
       \textbf{ALchar} (\Param{xkanjiskip}).
+%</en>
+%<*ja>
+\item デフォルトで \textbf{JAchar} と \textbf{ALchar} の間に挿入されるグルー(\Param{xkanjiskip}).
+%</ja>
 \end{itemize}
+%<*en>
 The value (a skip) of \Param{kanjiskip} or \Param{xkanjiskip} can be
 changed as the following.
+%</en>
+%<*ja>
+\Param{kanjiskip} や \Param{xkanjiskip} の値は以下のようにして変更可能である.
+%</ja>
 \begin{lstlisting}
-\ltjsetparameter{kanjiskip={0pt plus 0.4pt minus 0.4pt}, 
+\ltjsetparameter{kanjiskip={0pt plus 0.4pt minus 0.4pt},
                  xkanjiskip={0.25\zw plus 1pt minus 1pt}}
 \end{lstlisting}
 
-
-It may occur that JFM contains the data of `ideal width of {\sf
-kanjiskip}' and/or `ideal width of \Param{xkanjiskip}'.
-To use these data from JFM, set the value of \Param{kanjiskip} or 
+%<*en>
+It may occur that JFM contains the data of `ideal width of \Param{kanjiskip}'
+and/or `ideal width of \Param{xkanjiskip}'.
+To use these data from JFM, set the value of \Param{kanjiskip} or
 \Param{xkanjiskip} to \verb+\maxdimen+.
+%</en>
+%<*ja>
+JFM は「望ましい \Param{kanjiskip} の値」や「望ましい \Param{xkanjiskip} の値」を
+持っていることがある.
+これらのデータを使うためには,\Param{kanjiskip} や \Param{xkanjiskip} の値を
+\verb+\maxdimen+ の値に設定すればよい.
+%</ja>
 
 %<en>\subsection{Insertion Setting of \Param{xkanjiskip}}
 %<ja>\subsection{\Param{xkanjiskip} の設定の挿入}
-It is not desirable that \Param{xkanjiskip} is inserted between every
+
+%<*en>
+It is not desirable that \Param{xkanjiskip} is inserted into every
 boundary between \textbf{JAchar}s and \textbf{ALchar}s. For example,
 \Param{xkanjiskip} should not be inserted after opening parenthesis
 (\textit{e.g.}, compare `(あ' and `(\hskip\ltjgetparameter{xkanjiskip}あ').
-
 \LuaTeX-ja can control whether \Param{xkanjiskip} can be inserted
 before/after a character, by changing \Param{jaxspmode} for \textbf{JAchar}s and
-\Param{alxspmode} parameters \textbf{ALchar}s respectively. 
+\Param{alxspmode} parameters \textbf{ALchar}s respectively.
+%</en>
+%<*ja>
+\Param{xkanjiskip} がすべての \textbf{JAchar} と \textbf{ALchar} の境界に
+挿入されるのは望ましいことではない.例えば,\Param{xkanjiskip} は開き括弧の
+後には挿入されるべきではない(`(あ' と `(\hskip\ltjgetparameter{xkanjiskip}あ' を
+比べてみよ).
+\LuaTeX-ja では \Param{xkanjiskip} をある文字の前/後に挿入するかどうかを,
+\textbf{JAchar} に対しては \Param{jaxspmode} を,\textbf{ALchar} に対しては
+\Param{alxspmode} をそれぞれ変えることで制御することができる.
+%</ja>
 \begin{LTXexample}
-\ltjsetparameter{jaxspmode={`あ,preonly}, alxspmode={`\!,postonly}} 
+\ltjsetparameter{jaxspmode={`あ,preonly}, alxspmode={`\!,postonly}}
 pあq い!う
 \end{LTXexample}
 
-The second argument {\tt preonly} means `the insertion of
+%<*en>
+The second argument \texttt{preonly} means `the insertion of
 \Param{xkanjiskip} is allowed before this character, but not after'.
-the other possible values are {\tt postonly}, {\tt allow} and {\tt
-inhibit}. For the compatibility with \pTeX, natural numbers between
-0~and~3 are also allowed as the second argument\footnote{But we don't
-recommend this: since numbers 1~and~2 have opposite meanings in
-\Param{jaxspmode} and \Param{alxspmode}.}.
+the other possible values are \texttt{postonly}, \texttt{allow} and \texttt{
+inhibit}. ...
+%</en>
+%<*ja>
+2つ目の引数の \texttt{preonly} は「\Param{xkanjiskip} の挿入はこの文字の
+前でのみ許され,後では許さない」ことを意味する.他に指定可能な値は
+\texttt{postonly}, \texttt{allow}, \texttt{inhibit} である.
 
+なお,現行の
+仕様では,\Param{jaxspmode}, \Param{alxspmode} はテーブルを共有しており,
+上のソースの1行目を次のように変えても同じことになる:
+\begin{verbatim}
+\ltjsetparameter{alxspmode={`あ,preonly}, jaxspmode={`\!,postonly}}
+\end{verbatim}
+また,これら2パラメータには数値で値を指定することもできる(第\ref{part-ref}部を参照).
+%</ja>
+
+%<*en>
 If you want to enable/disable all insertions of \Param{kanjiskip} and
 \Param{xkanjiskip}, set \Param{autospacing} and \Param{autoxspacing}
-parameters to {\tt false}, respectively.
-
+parameters to \texttt{true}/\texttt{false}, respectively.
+%</en>
+%<*ja>
+もし全ての \Param{kanjiskip} と \Param{xkanjiskip} の挿入を有効化/無効化
+したければ,それぞれ \Param{autospacing} と \Param{autoxspacing} を
+\texttt{true}/\texttt{false} に設定すればよい.
+%</ja>
 
 %<en>\subsection{Shifting Baseline}
 %<ja>\subsection{ベースラインの移動}
+
+%<*en>
 To make a match between a Japanese font and an alphabetic font, sometimes
 shifting of the baseline of one of the pair is needed. In \pTeX, this is achieved
 by setting \verb+\ybaselineshift+ to a non-zero length (the
@@ -1263,22 +1611,44 @@ Japanese fonts, but not that of alphabetic fonts.
 Because of this, \LuaTeX-ja can independently set the shifting amount
 of the baseline of alphabetic fonts (\Param{yalbaselineshift}
 parameter) and that of Japanese fonts (\Param{yjabaselineshift}
-parameter). 
+parameter).
+%</en>
+%<*ja>
+和文フォントと欧文フォントを合わせるためには,時々どちらかのベースラインの移動が
+必要になる.\pTeX ではこれは \verb+\ybaselineshift+ を非零の長さに設定することで
+なされていた(欧文フォントのベースラインが下がる).しかし,日本語が主ではない
+文書に対しては,欧文フォントではなく和文フォントのベースラインを移動した方がよい.
+このため,\LuaTeX-ja では欧文フォントのベースラインのシフト量
+(\Param{yalbaselineshift} パラメータ)と和文フォントのベースラインのシフト量
+(\Param{yjabaselineshift}パラメータ)を独立に設定できるようになっている.
+%</ja>
 
 \begin{LTXexample}
 \vrule width 150pt height 0.4pt depth 0pt\hskip-120pt
 \ltjsetparameter{yjabaselineshift=0pt, yalbaselineshift=0pt}abcあいう
 \ltjsetparameter{yjabaselineshift=5pt, yalbaselineshift=2pt}abcあいう
 \end{LTXexample}
+%<*en>
 Here the horizontal line in above is the baseline of a line.
+%</en>
+%<*ja>
+上の例において引かれている水平線がベースラインである.
+%</ja>
 
+%<*en>
 There is an interesting side-effect: characters in different size can be
 vertically aligned center in a line, by setting two parameters appropriately.
 The following is an example (beware the value is not well tuned):
+%</en>
+%<*ja>
+この機能には面白い使い方がある:2つのパラメータを適切に設定することで,サイズの
+異なる文字を中心線に揃えることができるのだ.
+以下は一つの例である(値はあまり調整されていないことに注意):
+%</ja>
 \begin{LTXexample}
-xyz漢字 
+xyz漢字
 {\scriptsize
-  \ltjsetparameter{yjabaselineshift=-1pt, 
+  \ltjsetparameter{yjabaselineshift=-1pt,
     yalbaselineshift=-1pt}
   XYZひらがな
 }abcかな
@@ -1287,17 +1657,34 @@ xyz漢字
 
 %<en>\subsection{Cropmark}
 %<ja>\subsection{トンボ}
+
+%<*en>
 Cropmark is a mark for indicating 4~corners and horizontal/vertical
 center of the paper. In Japanese, we call cropmark as tombo(w).
 \pLaTeX\ and this \LuaTeX-ja support `tombow' by their kernel.
 The following steps are needed to typeset cropmark:
+%</en>
+%<*ja>
+トンボは用紙の四つ角と水平/垂直方向の中心を表す印である.
+\pLaTeX と \LuaTeX-ja ではトンボの出力をサポートしている.
+トンボを出力するためには以下の手順が必要である:
+%</ja>
 
 \begin{enumerate}
+%<*en>
 \item First, define the banner which will be printed at the upper left
       of the paper. This is done by assigning a token list to
       \verb+\@bannertoken+.
 
-For example, the following sets banner as `{\tt filename (2012-01-01 17:01)}':
+For example, the following sets banner as `\texttt{filename (YYYY-MM-DD hh:mm)}':
+%</en>
+%<*ja>
+\item まず,用紙の左上に印刷されるバナーを定義する.これは \verb+\@bannertoken+
+      にトークンリストを与えることでなされる.
+
+例えば,以下はバナーとして `\texttt{filename (YYYY-MM-DD hh:mm)}' を設定する:
+%</ja>
+
 \begin{verbatim}
 \makeatletter
 
@@ -1316,71 +1703,142 @@ For example, the following sets banner as `{\tt filename (2012-01-01 17:01)}':
 %<ja>\part{リファレンス}
 \label{part-ref}
 %<en>\section{Font Metric and Japanese Font}
-%<ja>\section{フォントメトリックと日本語フォント}
+%<ja>\section{フォントメトリックと和文フォント}
 %<en>\subsection{\texttt{\char92jfont} primitive}
 %<ja>\subsection{\texttt{\char92jfont} プリミティブ}
+
+%<*en>
 To load a font as a Japanese font, you must use the
 \verb+\jfont+ primitive instead of~\verb+\font+, while
-\verb+\jfont+ admits the same syntax used in~\verb+\font+. 
+\verb+\jfont+ admits the same syntax used in~\verb+\font+.
 \LuaTeX-ja automatically loads \Pkg{luaotfload} package,
 so TrueType/OpenType fonts with features can be used for Japanese fonts:
+%</en>
+%<*ja>
+フォントを和文フォントとして読み込むためには,\verb+\jfont+ プリミティブを
+\verb+\font+ プリミティブの代わりに用いる.
+\verb+\jfont+ プリミティブの文法は \verb+\font+ と同じである.
+\LuaTeX-ja は \Pkg{luaotfload} パッケージを自動的に読み込むので,
+TrueType/OpenType フォントに feature を指定したものを和文フォントとして用いる
+ことができる:
+%</ja>
 \begin{LTXexample}
 \jfont\tradgt={file:ipaexg.ttf:script=latn;%
   +trad;-kern;jfm=ujis} at 14pt
 \tradgt{}当/体/医/区
 \end{LTXexample}
 
+%<*en>
 Note that the defined control sequence
 (\verb+\tradgt+ in the example above) using \verb+\jfont+ is not a
 \textit{font\_def} token, hence the input like \verb+\fontname\tradgt+
 causes a error.  We denote control sequences which are defined in
 \verb+\jfont+ by <jfont\_cs>.
+%</en>
+%<*ja>
+なお,\verb+\jfont+ で定義されたコントロールシーケンス(上の例だと \verb+\tradgt+)
+は \textit{font\_def} トークンではないので,\verb+\fontname\tradgt+ のような
+入力はエラーとなることに注意する.以下では \verb+\jfont+ で定義された
+コントロールシーケンスを <jfont\_cs> で表す.
+%</ja>
 
-\paragraph{Prefix \texttt{psft}}
+%<en>\paragraph{Prefix \texttt{psft}}
+%<ja>\paragraph{\texttt{psft} プレフィックス}
+%<*en>
 Besides \texttt{file:}\ and \texttt{name:}\ prefixes, \texttt{psft:}\
 can be used a prefix in \verb+\jfont+ (and~\verb+\font+) primitive.
 Using this prefix, you can specify a `name-only' Japanese font which
 will be not 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 informations, that of Kozuka
+`GothicBBB-Medium'. For kerning or other information, that of Kozuka
 Mincho Pr6N Regular (this is a font by Adobe Inc., and included in
 Japanese Font Packs for Adore Reader) will be used.
-
+%</en>
+%<*ja>
+\texttt{file:} と \texttt{name:} のプレフィックスに加えて,
+\verb+\jfont+ プリミティブ(と \verb+\font+ プリミティブ)では
+\texttt{psft:} プレフィックス用いることができる.
+このプレフィックスを用いることで,PDF には埋め込まれない「名前だけの」
+和文フォントを指定することができる.典型的な使い方は「標準的な」和文フォント,
+つまり `Ryumin-Light' と `GothicBBB-Medium' を指定することである.
+この場合,カーニング他の情報は小塚明朝 Pr6N Regular
+(Adobe 社によるフォントで,Adobe Reader の日本語フォントパックに含まれている)
+が用いられる.
+%</ja>
 
 \paragraph{JFM}
+%<*en>
 As noted in Introduction, a JFM has measurements of characters and
 glues/kerns that are automatically inserted for Japanese
 typesetting. The structure of JFM will be described in the next
 subsection. At the calling of \verb+\jfont+ primitive, you must specify
 which JFM will be used for this font by the following keys:
+%</en>
+%<*ja>
+「はじめに」の節で述べたように,JFM は文字と和文組版で自動的に挿入される
+グルー/カーンの寸法情報を持っている.JFM の構造は次の小節で述べる.
+\verb+\jfont+ プリミティブの呼び出しの際には,どの JFM を用いるのかを以下のキーで
+指定する必要がある:
+%</ja>
 
 \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}}
 \item[jfm=<name>]
-Specify the name of JFM. A file named \texttt{jfm-<name>.lua} will be searched and/or loaded.
+%<*en>
+Specify the name of JFM. If specified JFM has not been loaded, \LuaTeX-ja search and load 
+a file named \texttt{jfm-<name>.lua}.
 
-The followings are JFMs shipped with Lua\TeX-ja:
+The following JFMs are shipped with \LuaTeX-ja:
+%</en>
+%<*ja>
+JFM の名前を指定する.もし以前に指定されたJFMが読み込まれていなければ,
+\texttt{jfm-<name>.lua} を読み込む.
+
+以下の JFM が \LuaTeX-ja には同梱されている:
+%</ja>
 \begin{description}
-\item[\tt jfm-ujis.lua] A standard JFM in Lua\TeX-ja. This JFM is
-      based on \verb+upnmlminr-h.tfm+, a metric for UTF/OTF package that
-      is used in \upTeX. When you use the \Pkg{luatexja-otf} package, please use this JFM.
+%<*en>
+\item[\tt jfm-ujis.lua] A standard JFM in \LuaTeX-ja. This JFM is
+  based on \verb+upnmlminr-h.tfm+, a metric for UTF/OTF package that
+  is used in \upTeX. When you use the \Pkg{luatexja-otf} package, you should use this JFM.
+%</en>
+%<*ja>
+\item[\tt jfm-ujis.lua] \LuaTeX-ja の標準 JFM である.この JFM は \upTeX で
+  用いられる UTF/OTF パッケージ用のメトリックである \verb+upnmlminr-h.tfm+ を
+  元にしている.\Pkg{luatexja-otf} パッケージを使うときはこの JFM を指定するべきである.
+%</ja>
+%<*en>
 \item[\tt jfm-jis.lua] A counterpart for \verb+jis.tfm+, `JIS font
-          metric' which is widely used in \pTeX. A major difference of
-          \texttt{jfm-ujis.lua} and this \texttt{jfm-jis.lua} is that
-          most haracters under \texttt{jfm-ujis.lua} are square-shaped,
-          while that under \texttt{jfm-jis.lua} are horizontal
-          rectangles.
-
+  metric' which is widely used in \pTeX. A major difference of
+  \texttt{jfm-ujis.lua} and this \texttt{jfm-jis.lua} is that
+  most characters under \texttt{jfm-ujis.lua} are square-shaped,
+  while that under \texttt{jfm-jis.lua} are horizontal
+  rectangles.
+%</en>
+%<*ja>
+\item[\tt jfm-jis.lua] \pTeX で広く用いられている「JIS フォントメトリック」
+  \verb+jis.tfm+ に相当する JFM である.\texttt{jfm-ujis.lua} とこの
+  \texttt{jfm-jis.lua} の主な違いは,\texttt{jfm-ujis.lua} ではほとんどの文字が
+  正方形状であるのに対し,\texttt{jfm-jis.lua} では横長の長方形状である.
+%</ja>
+%<*en>
 \item[\tt jfm-min.lua] A counterpart for \verb+min10.tfm+, which is one
-          of the default Japanese font metric shipped with \pTeX. There
-          are notable difference between this JFM and other 2~JFMs, as
-          shown in Table~\ref{tab-difjfm}.
+  of the default Japanese font metric shipped with \pTeX. There
+  are notable difference between this JFM and other 2~JFMs, as
+  shown in Table~\ref{tab-difjfm}.
+%</en>
+%<*ja>
+\item[\tt jfm-min.lua] \pTeX に同梱されているデフォルトの和文フォントメトリック
+  である \verb+min10.tfm+ に相当する JFM である.この JFM と他の2つの JFM の間には
+  表 \ref{tab-difjfm} に示すような特筆すべき違いがある.
+%</ja>
 \end{description}
 
-\item[jfmvar=<string>] Sometimes there is a need that 
+\item[jfmvar=<string>] Sometimes there is a need that ...
 \end{list}
 
 \begin{table}[t]
-\caption{Differences between JFMs shipped with \LuaTeX-ja}
+%<en>\caption{Differences between JFMs shipped with \LuaTeX-ja}
+%<ja>\caption{\LuaTeX-ja に同梱されている JFM の違い}
 \label{tab-difjfm}
 \ltjsetparameter{jacharrange={+3}}
 \begin{center}
@@ -1401,29 +1859,58 @@ The followings are JFMs shipped with Lua\TeX-ja:
 \toprule
 &\tt jfm-ujis.lua&\tt jfm-jis.lua&\tt jfm-min.lua\\
 \midrule
-Example~1&\r{ujis}&\r{jis}&\r{min}\\
-Example~2&\s{ujis}&\s{jis}&\s{min}\\
+%<en>Example~1\footnotemark
+%<ja>例1\footnotemark
+&\r{ujis}&\r{jis}&\r{min}\\
+%<en>Example~2
+%<ja>例2
+&\s{ujis}&\s{jis}&\s{min}\\
 Bounding Box&\t{ujis}&\t{jis}&\t{min}\\
 \bottomrule
 \end{tabular}
 \end{center}
 \ltjsetparameter{jacharrange={-3}}
 \end{table}
+\footnotetext{from: 乙部厳己, min10フォントについて.
+\texttt{http://argent.shinshu-u.ac.jp/\~{\ }otobe/tex/files/min10.pdf}.}
 
-\paragraph{Note: kern feature}\label{para-kern}
+%<en>\paragraph{Note: kern feature}
+%<ja>\paragraph{注意:kern feature}
+\label{para-kern}
+%<*en>
 Some fonts have information for inter-glyph spacing. However, this
 information is not well-compatible with \LuaTeX-ja.  More concretely,
 this kerning space from this information are inserted \emph{before} the
 insertion process of \textbf{JAglue}, and this causes incorrect spacing
 between two characters when both a glue/kern from the data in the font
 and it from JFM are present.
+%</en>
+%<*ja>
+いくつかのフォントはグリフ間のスペースについての情報を持っている.しかし,
+この情報は \LuaTeX-ja とはあまり相性がよくない.具体的には,この情報に基づいて挿入
+されるカーニングスペースは \textbf{JAglue} の挿入過程の\textbf{前に}挿入され,
+JFM に基づくグルー/カーンも挿入される場合には2文字間の意図しないスペースの原因と
+なる.
+%</ja>
 
 \begin{itemize}
-\item You should specify {\tt -kern} in
-{\tt\char92jfont} primitive, when you want to use other font features,
-      such as {\tt script=...}\,.
-\item If you want to use Japanese fonts in proportinal width, and use
+%<*en>
+\item You should specify \texttt{-kern} in
+  \verb+jfont+ primitive, when you want to use other font features,
+  such as \texttt{script=...}\,.
+%</en>
+%<*ja>
+\item  \texttt{script=...} といった feature を使いたい場合には,\verb+\jfont+
+  プリミティブに \texttt{-kern} を指定するべきである.
+%</ja>
+%<*en>
+\item If you want to use Japanese fonts in proportional width, and use
       information from this font, use \texttt{jfm-prop.lua} for its JFM, and ...
+%</en>
+%<*ja>
+\item もしプロポーショナル幅の和文フォントをそのフォントの情報に基づいて使いたい
+  ならば,\texttt{jfm-prop.lua} を JFM として指定し,……
+%</ja>
 
 TODO: kanjiskip?
 \end{itemize}
@@ -1470,7 +1957,7 @@ Like the \Param{kanjiskip} field, this field specifies the `ideal'
 
 Besides from above fields, a JFM file have several sub-tables those
 indices are natural numbers.  The table indexed by~$i\in\omega$ stores
-informations of `character class'~$i$. At least, the character class~0 is
+information of `character class'~$i$. At least, the character class~0 is
 always present, so each JFM file must have a sub-table whose index is
 \texttt{[0]}.  Each sub-table (its numerical index is denoted by $i$) has
 the following fields:
@@ -1491,10 +1978,10 @@ This field is a list of characters which are in this character
 
 Specify width of characters in character class~$i$, height, depth and
 the amount of italic correction. All characters in character class~$i$ are regarded that its width, height and depth are
-as values of these fields. 
-But there is one exception: if \texttt{'prop'} is specified in \texttt{width} field, width of a character becomes that of its `real' glyph 
+as values of these fields.
+But there is one exception: if \texttt{'prop'} is specified in \texttt{width} field, width of a character becomes that of its `real' glyph
 
-\item[left=<length>, down=<length>, align=<align>]\ 
+\item[left=<length>, down=<length>, align=<align>]\
 
 These fields are for adjusting the position of the `real' glyph. Legal
             values of \texttt{align} field are \texttt{'left'},
@@ -1506,8 +1993,8 @@ The effects of these 3~fields are indicated in Figure~\ref{fig-pos}.
 
 In most cases, \texttt{left} and \texttt{down} fields are~0, while
 it is not uncommon that the \texttt{align} field is \texttt{'middle'} or \texttt{'right'}.
-For example, setting the \texttt{align} field to \texttt{'right'} is practically needed 
-when the current character class is the class for opening delimiters'. 
+For example, setting the \texttt{align} field to \texttt{'right'} is practically needed
+when the current character class is the class for opening delimiters'.
 \begin{figure}[!tb]
 \begin{minipage}{0.4\textwidth}%
 \begin{center}\unitlength=10pt\small
@@ -1558,16 +2045,16 @@ when the current character class is the class for opening delimiters'.
 \put(1,-1.7){\makebox(0,0)[t]{\texttt{left}}}
 \put(3,0){\vector(0,-1){1.5}}
 \put(3.2,-0.75){\makebox(0,0)[l]{\texttt{down}}}
-\end{picture} 
+\end{picture}
 \end{center}
 \end{minipage}%
 \begin{minipage}{0.6\textwidth}%
-Consider a node containing Japanese character whose value of the \texttt{align} 
+Consider a node containing Japanese character whose value of the \texttt{align}
 field is \texttt{'middle'}.
 \begin{itemize}
 \item The black rectangle is a frame of the node.
 Its width, height and depth are specified by JFM.
-\item Since the \texttt{align} field is \texttt{'middle'}, 
+\item Since the \texttt{align} field is \texttt{'middle'},
 the `real' glyph is centered horizontally (the green rectangle).
 \item Furthermore, the glyph is shifted according to values of fields
       \texttt{left} and \texttt{down}. The ultimate position of the real
@@ -1586,9 +2073,9 @@ the `real' glyph is centered horizontally (the green rectangle).
 
 %<*en>
 \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}}
-\item['lineend'] An ending of a line. 
+\item['lineend'] An ending of a line.
 \item['diffmet'] Used at a boundary between two \textbf{JAchar}s whose JFM or size is different.
-\item['boxbdd'] The beginning/ending of a horizontal box, and the beginging of a noindented paragraph.
+\item['boxbdd'] The beginning/ending of a horizontal box, and the beginning of a noindented paragraph.
 \item['parbdd'] The beginning of an (indented) paragraph.
 \item['jcharbdd'] A boundary between \textbf{JAchar} and anything else
             (such as \textbf{ALchar}, kern, glue, ...).
@@ -1600,10 +2087,10 @@ the `real' glyph is centered horizontally (the green rectangle).
 上で説明した通り,\texttt{chars}フィールド中にはいくつかの「特殊文字」も
 指定可能である.これらは,大半が\pTeX のJFMグルーの挿入処理ではみな「文字
 クラス0の文字」として扱われていた文字であり,その結果として\pTeX より細か
\81\84çµ\84ç\89\88調æ\95´ã\81\8cã\81§ã\81\8dã\82\8bã\82\88ã\81\86ã\81«ã\81ªã\81£ã\81¦ã\81\84ã\82\8bï¼\8e以ä¸\8bã\81®その一覧を述べる:
\81\84çµ\84ç\89\88調æ\95´ã\81\8cã\81§ã\81\8dã\82\8bã\82\88ã\81\86ã\81«ã\81ªã\81£ã\81¦ã\81\84ã\82\8bï¼\8e以ä¸\8bã\81§その一覧を述べる:
 \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}}
 \item['lineend'] 行の終端を表す.
-\item['diffmet'] 
+\item['diffmet']
 
 \item['boxbdd'] hboxの先頭と末尾,及びインデントされていない
             (\verb+\noindent+で開始された)段落の先頭を表す.
@@ -1668,7 +2155,7 @@ an external package is needed to support this in plain \TeX\ and
 \LuaTeX-ja's handling of Japanese fonts in math formulas is similar;
 Table~\ref{tab-math} shows counterparts to \TeX's primitives for math
 font families. There is no relation between the value of
-\verb+\fam+ and that of \verb+\jfam+; with appropreate settings, 
+\verb+\fam+ and that of \verb+\jfam+; with appropriate settings,
 you can set both \verb+\fam+ and \verb+\jfam+ to~the same value.
 
 \begin{table}[!tb]
@@ -1696,6 +2183,7 @@ be accessed via \verb+luatexbase.add_to_callback+ function and so on, as other c
 {\def\makelabel#1{\bfseries#1}}
 \item[\texttt{luatexja.load\_jfm} callback]
 With this callback you can overwrite JFMs.
+This callback is called when a new JFM is loaded.
 
 \begin{verbatim}
 function (<table> jfm_info, <string> jfm_name)
@@ -1703,7 +2191,7 @@ function (<table> jfm_info, <string> jfm_name)
 end
 \end{verbatim}
 
-The argument \verb+jfm_info+ contains a table similar to the table in a JFM file, except 
+The argument \verb+jfm_info+ contains a table similar to the table in a JFM file, except
 this argument has \texttt{chars} field which contains character codes
             whose character class is not~0.
 
@@ -1714,7 +2202,7 @@ An example of this callback is the \texttt{ltjarticle} class, with
 
 \item[\texttt{luatexja.define\_font} callback]
 This callback and the next callback form a pair, and you can assign letters which don't have
-            fixed codepoints in Unicode to non-zero character classes.
+            fixed code points in Unicode to non-zero character classes.
 This \texttt{luatexja.define\_font} callback is called just when new Japanese font is loaded.
 \begin{verbatim}
 function (<table> jfont_info, <number> font_number)
@@ -1729,8 +2217,8 @@ You may assume that \verb+jfont_info+ has the following fields:
 \item[\tt var] The value specified in \texttt{jfmvar=...} at a call of \verb+\jfont+.
 \end{description}
 
-The returned table \verb+new_jfont_info+ also should include these three fields. 
-The \verb+font_number+ is a font number. 
+The returned table \verb+new_jfont_info+ also should include these three fields.
+The \verb+font_number+ is a font number.
 
 A good example of this and the next callbacks is the \Pkg{luatexja-otf}
             package, supporting \verb+"AJ1-xxx"+ form for Adobe-Japan1
@@ -1761,32 +2249,60 @@ The argument \verb+char_class+ is the result of \LuaTeX-ja's default
 
 This callback doesn't replace any code of \LuaTeX-ja.
 
+\item[\texttt{luatexja.set\_width} callback]
+This callback is called when \LuaTeX-ja is trying to encapsule a
+            \textbf{JAchar} \textit{glyph\_node}, to adjust its
+            dimension and position.
+\begin{lstlisting}[numbers=left]
+function (<table> shift_info, <table> jfont_info, <number> char_class)
+  return <table> new_shift_info
+end
+\end{lstlisting}
 
+The argument \verb+shift_info+ and the returned \verb+new_shift_info+ have
+\texttt{down} and \texttt{left} fields, which are the amount of shifting
+            down/left the character in a scaled-point.
 
+%<*ja>
+良い例が\Pkg{test/valign.lua}である.このファイルが読み込まれた状態では,
+            JFM内で規定された文字クラス0の文字における$(\hbox{高
+            さ}):(\hbox{深さ})$の比になるように,実際のフォントの出力上
+            下位置が自動調整される.例えば,
+\begin{itemize}
+\item JFM側の設定:$(\hbox{高さ})=88x$, $(\hbox{深さ})=12x$%
+(和文OpenTypeフォントの標準値)
+\item 実フォント側の数値:$(\hbox{高さ})=28y$, $(\hbox{深さ})=5y$(和文TrueTypeフォントの標準値)
+\end{itemize}
+となっていたとする.すると,実際の文字の出力位置は,
+\[
+ \frac{88x}{88x+12x} (28y+5y) - 28y = \frac{26}{825}y= 0.03\dot1\dot5y
+\]
+だけ上にずらされることになる,
+%</ja>
 \end{list}
 
 
 
 %<en>\section{Parameters}
 %<ja>\section{パラメータ}
-%<en>\subsection{{\tt\char92 ltjsetparameter} primitive}
-%<ja>\subsection{{\tt\char92 ltjsetparameter} プリミティブ}
+%<en>\subsection{\texttt{\char92 ltjsetparameter} primitive}
+%<ja>\subsection{\texttt{\char92 ltjsetparameter} プリミティブ}
 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+) 
+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}.
 
 \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
-subsection.  
+subsection.
 The difference between
 \verb+\ltjsetparameter+ and \verb+\ltjglobalsetparameter+ is only the
 scope of assignment;
-\verb+\ltjsetparameter+ does a local assignment and 
-\verb+\ltjglobalsetparameter+ does a global one. 
+\verb+\ltjsetparameter+ does a local assignment and
+\verb+\ltjglobalsetparameter+ does a global one.
 They also obey the value of \verb+\globaldefs+,
 like other assignment.
 
@@ -1794,18 +2310,18 @@ like other assignment.
 always takes a parameter name as first argument, and also takes the
 additional argument---a character code, for example---in some cases.
 \begin{LTXexample}
-\ltjgetparameter{differentjfm}, 
+\ltjgetparameter{differentjfm},
 \ltjgetparameter{autospacing},
 \ltjgetparameter{prebreakpenalty}{`)}.
 \end{LTXexample}
 \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~`{\tt\char32}'~(U+0020) has the category code
+character other than space~`\texttt{\char32}'~(U+0020) has the category code
 12~(other), while the space has 10~(space).
 
 %<en>\subsection{List of Parameters}
 %<ja>\subsection{パラメータ一覧}
-The following is the list of parameters which can be specificated by the
+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:
 \begin{itemize}
@@ -1818,19 +2334,19 @@ in \pTeX, and symbols beside each parameter has the following meaning:
 \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}}
 \item[\Param{jcharwidowpenalty}\,=<penalty>] [\verb+\jcharwidowpenalty+]
 
-Penalty value for supressing orphans. This penalty is inserted just
+Penalty value for suppressing orphans. This penalty is inserted just
             after the last \textbf{JAchar} which is not regarded as a
             (Japanese) punctuation mark.
 
 \item[\Param{kcatcode}\,=\{<chr\_code>,<natural number>\}]\
 
-An additional attributes having each character whose character code is <chr\_code>.  
+An additional attributes having each character whose character code is <chr\_code>.
 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).
 
 
-\item[\Param{prebreakpenalty}\,=\{<chr\_code>,<penalty>\}] [\verb+\prebreakpenalty+]\ 
+\item[\Param{prebreakpenalty}\,=\{<chr\_code>,<penalty>\}] [\verb+\prebreakpenalty+]\
 %<*ja>
 文字コード<chr\_code>の\textbf{JAchar}が行頭にくることを抑止するために,
             この文字の前に挿入/追加されるペナルティの量を指定する.
@@ -1865,20 +2381,22 @@ At the present version, the lowermost bit of <natural number> indicates
 \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{yjabaselineshift}\,=<dimen>$^\ast$]\ 
+\item[\Param{yjabaselineshift}\,=<dimen>$^\ast$]\
 \item[\Param{yalbaselineshift}\,=<dimen>$^\ast$] [\verb+\ybaselineshift+]
 
-\item[\Param{jaxspmode}\,=\{<chr\_code>,<mode>\}] [\verb+\inhibitxspcode+]
+\item[\Param{jaxspmode}\,=\{<chr\_code>,<mode>\}]
 
 Setting whether inserting  \Param{xkanjiskip} is allowed before/after a \textbf{JAchar} whose character code is <chr\_code>.
 The followings are allowed for <mode>:
 \begin{description}
-\item[0, \texttt{inhibit}] Insertion of \Param{xkanjiskip} is inhibited before the charater, nor after the charater.
-\item[2, \texttt{preonly}] Insertion of \Param{xkanjiskip} is allowed before the charater, but not after.
-\item[1, \texttt{postonly}] Insertion of \Param{xkanjiskip} is allowed after the charater, but not before.
-\item[3, \texttt{allow}] Insertion of \Param{xkanjiskip} is allowed before the charater and after the charater.
+\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.
 \end{description}
+This parameter is similar to the \verb+\inhibitxspcode+ primitive of \pTeX, but not compatible with \verb+\inhibitxspcode+.
+
 
 \item[\Param{alxspmode}\,=\{<chr\_code>,<mode>\}] [\verb+\xspcode+]
 
@@ -1887,16 +2405,16 @@ Setting whether inserting \Param{xkanjiskip} is allowed before/after a
 The followings are allowed for <mode>:
 \begin{description}
 \item[0, \texttt{inhibit}] Insertion of \Param{xkanjiskip} is inhibited
-          before the charater, nor after the charater.
+          before the character, nor after the character.
 \item[1, \texttt{preonly}] Insertion of \Param{xkanjiskip} is allowed
-          before the charater, but not after.
+          before the character, but not after.
 \item[2, \texttt{postonly}] Insertion of \Param{xkanjiskip} is allowed
-          after the charater, but not before.
+          after the character, but not before.
 \item[3, \texttt{allow}] Insertion of \Param{xkanjiskip} is allowed both
-          before the charater and after the charater.
+          before the character and after the character.
 This is the default value.
 \end{description}
-Note that parameters \Param{jaxspmode} and \Param{alxspmode} use a common table.
+Note that parameters \Param{jaxspmode} and \Param{alxspmode} use a common table, hence these two parameters are synonyms of each other.
 
 \item[\Param{autospacing}\,=<bool>$^\ast$] [\verb+\autospacing+]
 \item[\Param{autoxspacing}\,=<bool>$^\ast$] [\verb+\autoxspacing+]
@@ -1905,7 +2423,7 @@ Note that parameters \Param{jaxspmode} and \Param{alxspmode} use a common table.
 
 \item[\Param{differentjfm}\,=<mode>$^\dagger$]
 
-Specify how glues/kerns between two \textbf{JAchar}s whose JFM (or size) are different. 
+Specify how glues/kerns between two \textbf{JAchar}s whose JFM (or size) are different.
 The allowed arguments are the followings:
 \begin{description}
 \item[\texttt{average}]
@@ -1923,7 +2441,7 @@ The allowed arguments are the followings:
 %<ja>\section{その他のプリミティブ}
 %<en>\subsection{Primitives for Compatibility}
 %<ja>\subsection{互換プリミティブ}
-The following primtives are implemented for compatibility with \pTeX:
+The following primitives are implemented for compatibility with \pTeX:
 \begin{list}{}{\def\makelabel{\ttfamily\char92 }}
 \item[kuten]
 \item[jis]
@@ -1932,10 +2450,10 @@ The following primtives are implemented for compatibility with \pTeX:
 \item[ucs]
 \item[kansuji]
 \end{list}
-%<en>\subsection{{\tt\char92 inhibitglue} primitive}
-%<ja>\subsection{{\tt\char92 inhibitglue} プリミティブ}
+%<en>\subsection{\texttt{\char92 inhibitglue} primitive}
+%<ja>\subsection{\texttt{\char92 inhibitglue} プリミティブ}
 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 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 `ウ'.
 
 \begin{LTXexample}
@@ -1964,7 +2482,7 @@ With the help of this example, we remark the specification of \verb+\inhibitglue
 \label{ssub-nfsspat}
 As described in Subsection~\ref{ssec-ltx}, \LuaTeX-ja simply adopted
 \texttt{plfonts.dtx} in \pLaTeXe\ for the Japanese patch for NFSS2.
-For an convinience, we will describe
+For an convenience, we will describe
 commands which are not described in Subsection~\ref{ssub-chgfnt}.
 
 \begin{cslist}%
@@ -1996,15 +2514,15 @@ The above 3~commands are just the counterparts for \verb+DeclareFontEncodingDefa
 \item[DeclareRelationFont\{<ja-encoding>\}\{<ja-family>\}\{<ja-series>\}\{<ja-shape>\}\\
   \hfill\{<al-encoding>\}\{<al-family>\}\{<al-series>\}\{<al-shape>\}]
 %<*en>
-This command sets the `accompanied' alphabetic font family (given by the latter 4~arguments) 
-with respect to a Japanese font family given by the former 4~arguments. 
+This command sets the `accompanied' alphabetic font family (given by the latter 4~arguments)
+with respect to a Japanese font family given by the former 4~arguments.
 %</en>
 %<*ja>
 いわゆる「従属欧文」を設定するための命令である.前半の4引数で表される和文フォントファミリに対して,
 そのフォントに対応する「従属欧文」フォントファミリを後半の4引数により与える.
 %</ja>
 \item[SetRelationFont]
-This command is almost same as \verb+\DeclareRelationFont+, except that this command does a local 
+This command is almost same as \verb+\DeclareRelationFont+, except that this command does a local
 assignment, where \verb+\DeclareRelationFont+ does a global assignment.
 \item[userelfont]
 Change current alphabetic font encoding/family/\dots\ to the `accompanied' alphabetic
@@ -2018,7 +2536,7 @@ Like \verb+\fontfamily+, \verb+\selectfont+ is required to take an effect.
 
 \item[fontfamily\{<family>\}]
 {\let\item\origitem
-As in \LaTeXe, this command changes current font family (alphabetic, Japanese,~\emph{or both}) 
+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:
 \begin{itemize}
 \item Let current encoding scheme for Japanese fonts be
@@ -2027,18 +2545,18 @@ to <family>. Which family will be changed is determined as follows:
 \begin{itemize}
 \item The family <fam> under the encoding <ja-enc> is already defined by
       \verb+\DeclareKanijFamily+.
-\item A font definition named \texttt{<enc><ja-enc>.fd} (the filename is
+\item A font definition named \texttt{<enc><ja-enc>.fd} (the file name is
       all lowercase) exists.
 \end{itemize}
 \item Let current encoding scheme for Japanese fonts be
       <al-enc>. For alphabetic font family, the criterion as above is used.
 \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>. 
+      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 inplementation in \LaTeX.
+      be set to <family>, unlike the original implementation in \LaTeX.
 \end{itemize}
 }
 \end{cslist}
@@ -2057,11 +2575,11 @@ As closing this subsection, we shall introduce an example of
 
 %<en>\section{Extensions}
 %<ja>\section{拡張}
-\subsection{{\tt luatexja-fontspec.sty}}
+\subsection{\texttt{luatexja-fontspec.sty}}
 
-\subsection{{\tt luatexja-otf.sty}}
-This optional package supports typesetting charaters in
-Adobe-Japan1. {\tt luatexja-otf.sty} offers the following 2~low-level
+\subsection{\texttt{luatexja-otf.sty}}
+This optional package supports typesetting characters in
+Adobe-Japan1. \texttt{luatexja-otf.sty} offers the following 2~low-level
 commands:
 \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}}
 \item[\char92CID\{<number>\}]
@@ -2084,10 +2602,10 @@ ordinary characters in the following points:
 
 
 \paragraph{Additionally Syntax of JFM}
-{\tt luatexja-otf.sty} extends the syntax of JFM; the entries of {\tt
+\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+. 
+\verb+'AJ1-xxx'+, which stands for the character
+whose CID number in Adobe-Japan1 is \verb+xxx+.
 
 %<en>\part{Implementations}
 %<ja>\part{実装}
@@ -2107,11 +2625,11 @@ Here the following is the list of dimensions and attributes which are used in \L
 \dim{jQ}
 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. 
+                       a unit used in Japanese phototypesetting. So one should not change the value of this dimension.
 \dim{jH}
 There is also a unit called `歯' which equals to $0.25\,\textrm{mm}$ and
-                       used in Japanese phototypesetting. The dimension
-                       \verb+\jH+ stores this length, similar to \verb+\jQ+. 
+                       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.
@@ -2126,18 +2644,18 @@ There is also a unit called `歯' which equals to $0.25\,\textrm{mm}$ and
 \attr{ltj@icflag} An attribute for distinguishing `kinds' of a node. One of the following value is
                        assigned to this attribute:
 \begin{description}
-\item[\textit{italic} (1)] Glues from an itaric correction
-          (\verb+\/+). This distinction of origins of glues 
+\item[\textit{italic} (1)] 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}.
-\item[\textit{packed} (2)] 
+\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 itaric correction, but also already processed.
+\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.
 \end{description}
 \attr{ltj@kcat$i$} Where $i$~is a natural number which is less than~7.
@@ -2154,7 +2672,7 @@ typesetting. All those nodes store a natural number (hence the node's
           subsection). The \texttt{value} field of these nodes is
           current group.
 \item[30113] Nodes for Japanese Characters which the callback process of
-          luaotfload won't be applied, andd the character code is
+          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.
@@ -2208,7 +2726,7 @@ callback.
 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.}.
 
-These are two \TeX\ count registers for maintaining informations:
+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
 are stored in one big table named \texttt{charprop\_stack\_table}, where
@@ -2241,7 +2759,7 @@ group, then:
 \end{itemize}
 
 Note that to work this trick correctly, assignments to
-\verb+\ltj@@stack+ and \verb+\ltj@@group@level+ have to be local always, 
+\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).
@@ -2253,12 +2771,12 @@ This problem is resolved by using
 %<en>\subsection{Reference: Behavior in \pTeX}
 %<ja>\subsection{参考: \pTeX の挙動}
 %<*en>
-In~\pTeX, a linebreak after a Japanese character doesn't emit a space,
+In~\pTeX, a line break after a Japanese character doesn't emit a space,
 since words are not separated by spaces in Japanese writings. However,
 this feature isn't fully implemented in \LuaTeX-ja due to the
 specification of callbacks in~\LuaTeX. To clarify the difference between
-\pTeX~and~\LuaTeX, We briefly describe the handling of a linebreak in~\pTeX, in
-this subsection. 
+\pTeX~and~\LuaTeX, We briefly describe the handling of a line break in~\pTeX, in
+this subsection.
 
 \pTeX's input processor can be described in terms of a finite state
 automaton, as that of~\TeX\ in~Section~2.5 of~\cite{texbytopic}. The
@@ -2278,7 +2796,7 @@ after `beginning/ending of a group' characters.
 
 %<*ja>
 欧文では文章の改行は単語間でしか行わない.そのため,\TeX では,(文字の直後の)改行は
-空ç\99½æ\96\87å­\97ã\81¨å\90\8cã\81\98æ\89±ã\81\84ã\81¨ã\81\97ã\81¦æ\89±ã\82\8fã\82\8cã\82\8bï¼\8eä¸\80æ\96¹ï¼\8cå\92\8cæ\96\87ã\81§ã\81¯ã\81»ã\81¨ã\82\93ã\81©ã\81©ã\81©ã\81\93ã\81§ã\82\82æ\94¹è¡\8cã\81\8cå\8f¯è\83½ã\81ªã\81\9fã\82\81ï¼\8c
+空白文字と同じ扱いとして扱われる.一方,和文ではほとんどどこでも改行が可能なため,
 \pTeX では和文文字の直後の改行は単純に無視されるようになっている.
 
 このような動作は,\pTeX が\TeX からエンジンとして拡張されたことによって可能になったことである.
@@ -2291,7 +2809,7 @@ after `beginning/ending of a group' characters.
 \item State~$M$: 行中.
 \item State~$K$: 行中(和文文字の後).
 \end{itemize}
-また,状態遷移は,図\label{fig-ptexipro}のようになっており,図中の数字は
+また,状態遷移は,図~\ref{fig-ptexipro} のようになっており,図中の数字は
 カテゴリーコードを表している.最初の3状態は\TeX の入力処理部と同じであり,
 図中から状態$K$と「$j$」と書かれた矢印を取り除けば,\TeX の入力処理部と同
 じものになる.
@@ -2305,11 +2823,11 @@ after `beginning/ending of a group' characters.
 
 \begin{figure}[!tb]
 \begin{gather*}
- \def\sp{\text{\tt\char32}}
+ \def\sp{\texttt{\char32}}
  \xymatrix{&&
    {\text{scan a cs}}\ar@(r,ul)[dr]&\\
 \ar[r]&
-   *++[o][F-]{N}\ar[ur]^0\ar[dd]_{d,\ g}\ar[u]^{5\ (\text{\tt\char92par})}
+   *++[o][F-]{N}\ar[ur]^0\ar[dd]_{d,\ g}\ar[u]^{5\ (\texttt{\char92par})}
      \ar@{->}@(d,l)[ddrr]_(0.45){j}&&
    *++[o][F-]{S}\ar@(l,dr)[ul]^0\ar@(l,ur)[ddll]_{d,\ g}\ar[u]_{5}
      \ar@{->}@(r,r)[dd]^{j}\\&\\&
@@ -2333,10 +2851,10 @@ after `beginning/ending of a group' characters.
 %<en>\subsection{Behavior in \LuaTeX-ja}
 %<ja>\subsection{\LuaTeX-ja の挙動}
 %<*en>
-States in the input processoe of \LuaTeX\ is the same as that of \TeX,
+States in the input processor of \LuaTeX\ is the same as that of \TeX,
 and they can't be customized by any callbacks. Hence, we can only use
 \verb+process_input_buffer+ and \verb+token_filter+ callbacks for to
-suppress a space by a linebreak which is after Japanese characters.
+suppress a space by a line break which is after Japanese characters.
 
 However, \verb+token_filter+ callback cannot be used either, since a
 character in category code 5~(end-of-line) is converted into an space
@@ -2434,11 +2952,8 @@ u
 %<ja>\section{JFM グルーの挿入,\Param{kanjiskip} と \Param{xkanjiskip}}
 %<en>\subsection{Overview}
 %<ja>\subsection{概要}
-%<*en>
-NOT COMPLETED
-%</en>
 
-%<*ja>
+
 \LuaTeX-ja における和文処理グルーの挿入方法は,\pTeX のそれとは全く異なる.
 \pTeX では次のような仕様であった:
 \begin{itemize}
@@ -2453,22 +2968,19 @@ NOT COMPLETED
 3種類を一度に挿入することになっている.これは,\LuaTeX において欧文の合字・
 カーニング処理がノードベースになったことに対応する変更である.
 
-\LuaTeX-jaにおける\textbf{JAglue}挿入処理では,下の図\ref{fig-clu}のよう
\81«ã\80\8cå¡\8aã\80\8dã\82\92å\8d\98ä½\8dã\81«ã\81\97ã\81¦è¡\8cã\82\8fã\82\8cã\82\8bï¼\8e大é\9b\91æ\8a\8aã\81«ã\81\84ã\81\86ã\81¨ï¼\8cã\80\8cå¡\8a」は文字とそれに付随す
+\LuaTeX-jaにおける\textbf{JAglue}挿入処理では,次節で定義する
\80\8cã\82¯ã\83©ã\82¹ã\82¿ã\80\8dã\82\92å\8d\98ä½\8dã\81«ã\81\97ã\81¦è¡\8cã\82\8fã\82\8cã\82\8bï¼\8e大é\9b\91æ\8a\8aã\81«ã\81\84ã\81\86ã\81¨ï¼\8cã\80\8cã\82¯ã\83©ã\82¹ã\82¿」は文字とそれに付随す
 るノード達(アクセント位置補正用のkernや,イタリック補正)をまとめたもの
-であり,2つの塊の間には,ペナルティ,\verb+\vadjust+,whatsitなど,行組版
-には関係しないものがある.そのため,……
-%</ja>
+であり,2つのクラスタの間には,ペナルティ,\verb+\vadjust+,whatsitなど,行組版
+には関係しないものがある.
 
-% \begin{figure}[!tb]
-% \unitlength=10mm
-% \end{figure}
 
-%<en>\subsection{Definition of a `cluster'}
-%<ja>\subsection{「クラスタ」の定義}
+%<en>\subsection{Step 0: definition of a `cluster'}
+%<ja>\subsection{Step 0: 「クラスタ」の定義}
 
 \begin{defn}
-A \emph{cluster} is a list of nodes in one of the following forms, with the \textit{id} of it:
+A \emph{cluster} is a list of consecutive nodes in one of the following forms,
+with the \textit{id} of it:
 \begin{enumerate}
 \item Nodes whose value of\ \verb+\ltj@icflag+ is in $[3,15)$.  These
       nodes come from a hbox which is already packaged, by unpackaging
@@ -2477,42 +2989,52 @@ A \emph{cluster} is a list of nodes in one of the following forms, with the \tex
 \item A inline math formula, including two \textit{math\_node}s at the boundary of it:
 HOGE
       The \textit{id} is \textit{id\_math}.
-\item A \textit{glyph\_node} with nodes which relate with it: 
-HOGE
+\item A \textit{glyph\_node}~$p$ with nodes which relate with it:
+\begin{enumerate}
+\item A kern for the italic correction of~$p$. 
+\item An accent attached to $p$ by \verb+\accent+. 
+\end{enumerate}
+\[
+\overbrace{%
+ \Node{kern}{$\mathit{subtype}=2$}\longrightarrow
+\left\{\begin{array}{c}
+\Node{glyph}{accent}\\\noalign{\medskip}
+\Node{hbox}{accent (shifted vert.)}
+\end{array}\right\}\longrightarrow
+\Node{kern}{$\mathit{subtype}=2$}}^{\text{(a)}}
+\longrightarrow
+\Node{glyph}{$p$}\longrightarrow 
+\overbrace{%
+\Node{kern}{italic corr.}}^{\text{(b)}}
+\]
+
 The \textit{id} is \textit{id\_jglyph} or
 \textit{id\_glyph}, according to whether the \textit{glyph\_node}
 represents a Japanese character or not.
-\item An box-like node, that is, an hbox, an vbox and an rule (\verb+\vrule+). 
+\item An box-like node, that is, an hbox, an vbox and an rule (\verb+\vrule+).
 The \textit{id} is \textit{id\_hlist} if the node is an
       hbox which is not shifted vertically, or \textit{id\_box\_like}
       otherwise.
 \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.
-%Just a node which will \dots, \textit{i.e.}, a node which is \emph{not} one of the following:
-%\textit{ins\_node}, \textit{mark\_node}, \textit{adjust\_node}, \textit{whatsit\_node}
-%and \textit{penalty\_node}.
 \end{enumerate}
 We denote a cluster by \textit{Np}, \textit{Nq} and \textit{Nr}.
 \end{defn}
 
-Internally, a cluster is represented by a table $\textit{Np}$ with the following fields.
+以降は日本語.
 
+一部のクラスタの\textit{id}の意味は次の通り:
 \begin{description}
-\def\makelabel#1{\textbf{\textit{#1}}}
-\item[first, last] The first/last node of the cluster.
-\item[id] The \textit{id} in above definition.
-\item[nuc]
-
-% jachar
-\item[auto\_kspc, auto\_xspc]
-\item[xspc\_before, xspc\_after]
-
-% alchar, jachar
-\item[pre, post]
-\item[char]
-\item[class]
-\item[lend]
-\item[met, var]
+\item[\textit{id\_glyph}] 欧文文字(`ffi' のようなリガチャ由来の可能性あり).
+\item[\textit{id\_jglyph}] 和文文字.
+\item[\textit{id\_math}] インライン数式.「文字コード$-1$の欧文文字」として内部では扱われる.
+\item[\textit{id\_hlist}] 縦方向にシフトされていない hbox.
+\item[\textit{id\_pbox}] 「既に処理された」ノードのリスト.
+\item[\textit{id\_box\_like}] \textit{id\_hlist}とならないbox
+(縦方向にシフトされたhboxや,vbox)か,rule.
+\item[\textit{id\_disc}] discretionary break (\verb+\discretionary{pre}{post}{nobreak}+).
 \end{description}
+
+
 \end{document}