X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=doc%2Fluatexja.dtx;h=92cce1ac9e51c63e5e97a6045280298a69f96091;hb=458a6a7fc6657d4b7d3cb239d6370e337abde864;hp=341082f67326dbdd713c38433209c3d3b105343c;hpb=b5ae2980b79b069dd439c80b784c10e1b4f86d2f;p=luatex-ja%2Fluatexja.git diff --git a/doc/luatexja.dtx b/doc/luatexja.dtx index 341082f..92cce1a 100644 --- a/doc/luatexja.dtx +++ b/doc/luatexja.dtx @@ -16,7 +16,31 @@ \makeatletter %%%%%%%% \directlua{if jit then jit.on() end} + +\usepackage{amsmath,array,tikz,pict2e,multienum,float} +\usepackage{booktabs,multicol,luatexja-ruby} +\usepackage[all]{xy} +\usepackage{lltjext,alltt} + +%%%%%%%% fonts +\usepackage{luatexja-otf} +\directlua{luatexja.otf.enable_ivs()} +\usepackage[match]{luatexja-fontspec} +\usepackage[kozuka-pr6n]{luatexja-preset} +\usepackage{unicode-math} +\setmainfont[Ligatures=TeX]{Linux Libertine O} +\setmonofont[Scale=MatchLowercase, ItalicFont=lmmono10-italic.otf, + BoldFont=lmmonolt10-bold.otf, BoldItalicFont=lmmonolt10-boldoblique.otf +]{lmmono10-regular.otf} +\setmonojfont{KozGoPr6N-Regular.otf} +\setmathfont[Scale=MatchLowercase]{xits-math.otf} +\setsansfont[Scale=MatchLowercase,Ligatures=TeX]{Linux Biolinum O} +%<*ja> +\def\emph#1{\textbf{\textgt{#1}}} +\def\headfont{\normalfont\bfseries\gtfamily}\normalsize +% %<*en> +\frenchspacing \usepackage[margin=25mm,lmargin=30mm,rmargin=30mm,footskip=6mm]{geometry} \usepackage{luatexja-adjust}\ltjdisableadjust \parskip=\smallskipamount @@ -31,11 +55,6 @@ \advance\leftmargini-1\zw\advance\leftmarginii-1\zw % -\usepackage{amsmath,array,tikz,pict2e,multienum,float} -\usepackage{booktabs,multicol,luatexja-ruby} -\usepackage[all]{xy} -\usepackage{lltjext,alltt} - %%%%%%%% listings %%%%%%%% IVS @@ -104,26 +123,6 @@ %\newtheorem{defn}{Definition} %\newtheorem{defn}{定義} -%%%%%%%% fonts -\usepackage{luatexja-otf} -%\usepackage{lmodern} -\directlua{luatexja.otf.enable_ivs()} -\usepackage[match]{luatexja-fontspec} -\usepackage[kozuka-pr6n]{luatexja-preset} -\setmonojfont{KozGoPr6N-Regular.otf} -%<*ja> -\def\emph#1{\textbf{\textgt{#1}}} -\def\headfont{\normalfont\bfseries\gtfamily} -\usepackage{amssymb} -% -%<*en> -\usepackage{unicode-math} -\setmainfont[Ligatures=TeX]{TeX Gyre Termes} -\setsansfont[Scale=0.95,Ligatures=TeX]{TeX Gyre Heros} -\setmathfont{xits-math.otf} -\frenchspacing -% - %%%%%%%% logo \usepackage{metalogo} \DeclareRobustCommand\eTeX{\ensuremath{\varepsilon}-\kern-.125em\TeX} @@ -133,7 +132,7 @@ \DeclareRobustCommand\upTeX{up\kern-.15em\TeX} \DeclareRobustCommand\pLaTeX{p\kern-.05em\LaTeX} \DeclareRobustCommand\pLaTeXe{p\kern-.05em\LaTeXe} -\DeclareRobustCommand\epTeX{\ensuremath{\varepsilon}-\kern-.125em\pTeX} +\DeclareRobustCommand\epTeX{\ensuremath{\varepsilon}-\pTeX} %%%%%%%% other macros \newlist{cslist}{description}{1} @@ -157,7 +156,7 @@ \vskip\belowcaptionskip} \def\_{\leavevmode \kern .06em\vbox {\hrule \@width .333em}} -\def\cs#1{\texttt{\upshape\textbackslash #1}} +\def\cs#1{\texttt{\upshape\textbackslash\ltjsetparameter{autoxspacing=false}#1}} %%%%%%%% \makeatother @@ -326,7 +325,7 @@ For more detailed information, see Part~\ref{part-imp} or other sections of this \end{verbatim} %<*en> Note that \pTeX\ adds new two useful units, namely \texttt{zw}~and~\texttt{zh}. -As shown above, they are changed by \cs{zw}~and\cs{zh} respectively, in \LuaTeX-ja. +As shown above, they are changed by \cs{zw}~and~\cs{zh} respectively, in \LuaTeX-ja. % %<*ja> 特に注意してほしいのは,\pTeX で追加された \texttt{zw} と \texttt{zh} という単位を @@ -365,9 +364,9 @@ The insertion process of glues/kerns between two Japanese \begin{itemize} %<*en> -\item As \LuaTeX's internal ligature handling is ``node-based'' +\item As \LuaTeX's internal ligature handling is \emph{node-based} (\textit{e.g.}, \verb+of{}fice+ doesn't prevent ligatures), the - insertion process of \textbf{JAglue} is now ``node-based''. + insertion process of \textbf{JAglue} is now \emph{node-based}. % %<*ja> \item \LuaTeX の内部での合字の扱いは「ノード」を単位として行われるようになっている(例えば, @@ -429,7 +428,7 @@ itself. ... なお,\LuaTeX 本体も,$\Omega$流の組方向をサポートしているが,それとは全くの別物であること に注意してほしい. \LuaTeX のコールバックや実装により,特に異なった組方向のボックスを扱う場合には -\cs{wd}, \cs{ht}, \cs{dp}等の仕様が異なるので注意.詳細は第\ref{sec-direction}節を参照. +\cs{wd}, \cs{ht}, \cs{dp}等の仕様が異なるので注意.詳細は第\ref{sec-direction}章を参照. % %<*en> @@ -565,23 +564,23 @@ and \emph{Japanese fonts} for fonts used in \textbf{JAchar}. %\subsection{インストール} %The following packages are needed for the \LuaTeX-ja\ package. -%\LuaTeX-jaパッケージには,次のパッケージ類が必要である. +%*ja>\LuaTeX-jaパッケージの動作には次のパッケージ類が必要である. \begin{itemize} -\item \LuaTeX\ 0.80 (or later) +\item \LuaTeX\ beta-0.80.0 (or later) \item \Pkg{luaotfload} v2.5 (or later) \item \Pkg{adobemapping} (Adobe cmap and pdfmapping files) \item \Pkg{everysel} (if you want to use \LuaTeX-ja with \LaTeXe) -%\item \emph{IPAex fonts}(\url{http://ipafont.ipa.go.jp/}) +%\item \emph{IPAex fonts} (\url{http://ipafont.ipa.go.jp/}) %\item \emph{IPAexフォント(\url{http://ipafont.ipa.go.jp/})} \end{itemize} +%In summary, this version of \LuaTeX-ja no longer supports \TeX~Live~2014 (or older version). +%<*ja> +要約すると,本バージョンの\LuaTeX-jaは\TeX~Live~2014以前では動作しない\footnote{% + もっとも,自分で\LuaTeX のバイナリをSubversionリポジトリからビルドしていれば話は別である. +}. +% %<*en> -\emph{This version of \LuaTeX-ja no longer supports \TeX~Live~2013 (or older version). -If you want to use this version with \TeX~Live~2014, you have to build a development -version of \LuaTeX\ from its source.} - -\medskip - Now \LuaTeX-ja is available from CTAN (in the \texttt{macros/luatex/generic/luatexja} directory), and the following distributions: @@ -593,11 +592,6 @@ the following distributions: IPAex fonts are also available in these distributions. % %<*ja> -\emph{本バージョンの\LuaTeX-jaは\TeX~Live~2013以前では動作しない.\TeX~Live~2014で -用いたい場合は,自力で\LuaTeX 開発版をソースからビルドする必要がある.} - -\medskip - 現在,\LuaTeX-jaはCTAN (\texttt{macros/luatex/generic/luatexja})に収録されている他, 以下のディストリビューションにも収録されている: \begin{itemize} @@ -694,9 +688,11 @@ $ lualatex ltjltxdoc.ins $ luatex ltj-kinsoku_make.tex \end{lstlisting} %<*en> -Note that \texttt{*.\{dtx,ins\}} and \texttt{ltj-kinsoku\_make.tex} are not needed in regular use. +\emph{Do not forget The last line (processing \texttt{ltj-kinsoku\_make.tex})}. +\texttt{*.\{dtx,ins\}} and \texttt{ltj-kinsoku\_make.tex} used here are not needed in regular use. % %<*ja> +\emph{最後の \texttt{ltj-kinsoku\_make.tex} の実行を忘れないように注意}. ここで使用した \texttt{*.\{dtx,ins\}} と \texttt{ltj-kinsoku\_make.tex} は 通常の使用にあたっては必要ない. % @@ -723,7 +719,7 @@ Note that \texttt{*.\{dtx,ins\}} and \texttt{ltj-kinsoku\_make.tex} are not need \item If \texttt{mktexlsr} is needed to update the file name database, make it so. % %<*ja> -\item 必要があれば,\texttt{mktexlsr}を実行する. +\item 必要があれば,\texttt{mktexlsr} を実行する. % \end{enumerate} @@ -758,7 +754,7 @@ IPA mj明朝などの大きいフォントを用いた場合には\LuaTeX より % \item% %<*en> -\textbf{Note for MiK\TeX\ users}\quad +\textbf{Outdated note for MiK\TeX\ users}\quad \LuaTeX-ja requires that several CMap files% \footnote{\texttt{UniJIS2004-UTF32-\{H,V\}} and \texttt{Adobe-Japan1-UCS2}.} must be found from \LuaTeX. @@ -771,7 +767,7 @@ so you will encounter an error like the following: \LuaTeX-jaが動作するためには,\emph{導入・更新後の初回起動時に} \texttt{UniJIS2004-UTF32-\{H,V\}}, \texttt{Adobe-Japan1-UCS2}という3つのCMapが \LuaTeX によって見つけられることが必要である. -しかしMiK\TeX ではそのようになっていないので,次のエラーが発生するだろう: +しかしやや古いMiK\TeX ではそのようになっていないので,次のエラーが発生するだろう: % \begin{lstlisting} ! LuaTeX error ...iles (x86)/MiKTeX 2.9/tex/luatex/luatexja/ltj-rmlgbm.lua @@ -813,7 +809,7 @@ run \LuaTeX-ja in this directory, and finally delete the temporary directory. \begin{tabular}{cccccc} \toprule \textbf{direction}& -\textbf{classification}&\textbf{font name}&\bf `10\,pt'&\bf`7\,pt'&\bf`5\,pt'\\\midrule +\textbf{classification}&\textbf{font name}&\bf ``10\,pt''&\bf``7\,pt''&\bf``5\,pt''\\\midrule \smash{\raisebox{-1ex}{\emph{yoko} (horizontal)}}& \emph{mincho}&IPAex Mincho&\cs{tenmin}&\cs{sevenmin}&\cs{fivemin}\\ &\emph{gothic}&IPAex Gothic&\cs{tengt} &\cs{sevengt} &\cs{fivegt}\\ @@ -830,7 +826,7 @@ run \LuaTeX-ja in this directory, and finally delete the temporary directory. \begin{center}\small \begin{tabular}{cccccc} \toprule -\emph{組方向}&\emph{字体}&\emph{フォント名}&\bf `10\,pt'&\bf`7\,pt'&\bf`5\,pt'\\\midrule +\emph{組方向}&\emph{字体}&\emph{フォント名}&\bf ``10\,pt''&\bf``7\,pt''&\bf``5\,pt''\\\midrule \smash{\raisebox{-1ex}{横組}}& 明朝体&IPAex明朝&\cs{tenmin}&\cs{sevenmin}&\cs{fivemin}\\ &ゴシック体&IPAexゴシック&\cs{tengt} &\cs{sevengt} &\cs{fivegt}\\ @@ -1095,8 +1091,8 @@ For \LaTeXe, \LuaTeX-ja adopted most of the font selection system of \pLaTeXe\ ( attributes of Japanese fonts. % %<*ja> -\item 和文フォントの属性を変更するには,\cs{fontfamily}, \cs{fontseries}, \cs{fontshape}, そして - \cs{selectfont} を用いる. +\item 和文フォントの属性を変更するには,\cs{fontfamily}, \cs{fontseries}, \cs{fontshape}, + そしてそれらを反映させるために \cs{selectfont} を用いればよい. % %<*en> @@ -1243,17 +1239,17 @@ this chapter. For the method, please see Subsection~\ref{ssec-math}. \label{ssec-fontspec} %<*en> To coexist with the \Pkg{fontspec} package, it is needed to load -\Pkg{luatexja-fontspec} package in the preamble, as follows: +the \Pkg{luatexja-fontspec} package in the preamble, as follows: \begin{quote} \ttfamily \textbackslash usepackage[]\{luatexja-fontspec\} \end{quote} This \Pkg{luatexja-fontspec} package automatically loads \Pkg{luatexja} and \Pkg{fontspec} -package, if needed. +packages, if needed. % %<*ja> \Pkg{fontspec}パッケージと同様の機能を和文フォントに対しても用いる場合, -\Pkg{luatexja-fontspec}パッケージを読み込む: +\Pkg{luatexja-fontspec}パッケージを読み込めばよい. \begin{quote} \ttfamily \textbackslash usepackage[]\{luatexja-fontspec\} \end{quote} @@ -1262,7 +1258,7 @@ package, if needed. % %<*en> -In \Pkg{luatexja-fontspec} package, the following seven~commands are defined as +In the \Pkg{luatexja-fontspec} package, the following seven~commands are defined as counterparts of original commands in the \Pkg{fontspec} package: % %<*ja> @@ -1329,6 +1325,8 @@ widths. Also note that kerning information in a font is not used (that is, \texttt{kern} feature is set off) by default in these seven (or~eight) commands. This is because of the compatibility with previous versions of \LuaTeX-ja (see \ref{para-kern}). + +Below is an example of \cs{jfontspec}. % %<*ja> \Pkg{luatexja-fontspec} パッケージのオプションは以下の通りである: @@ -1349,13 +1347,13 @@ This is because of the compatibility with previous versions of \LuaTeX-ja また,これらの和文用のコマンドではフォント内のペアカーニング情報は標準では使用されない, 言い換えれば \texttt{kern} featureは標準では無効化となっている. これは以前のバージョンの\LuaTeX-jaとの互換性のためである(\ref{para-kern}節を参照). + +以下に\cs{jfontspec}の使用例を示す. % \begin{LTXexample}[width=0.4\textwidth] -\fontspec[Numbers=OldStyle]{LMSans10-Regular} \jfontspec[CJKShape=NLC]{KozMinPr6N-Regular} -JIS~X~0213:2004→辻 - +JIS~X~0213:2004→辻\par \jfontspec[CJKShape=JIS1990]{KozMinPr6N-Regular} JIS~X~0208:1990→辻 \end{LTXexample} @@ -1365,20 +1363,35 @@ JIS~X~0208:1990→辻 \label{ssec-preset} %<*en> -To use standard Japanese font settings easily, one can load \Pkg{luatexja-preset} +To use standard Japanese font settings easily, one can load the \Pkg{luatexja-preset} package with several options. This package provides functions in a part of -\Pkg{japanese-otf} package and a part of \Pkg{PXchfon} package by Takayuki Yato, -and loads \Pkg{luatexja-fontspec}, hence \Pkg{fontspec} internally. - -If you need to pass some options to \Pkg{fontspec}, load \Pkg{fontspec} manually -before \Pkg{luatexja-preset}: +\Pkg{japanese-otf} package and a part of \Pkg{PXchfon} package by Takayuki Yato. % %<*ja> よく使われている和文フォント設定を一行で指定できるようにしたのが \Pkg{luatexja-preset}パッケージである.このパッケージは, \Pkg{otf}パッケージの一部機能と八登崇之氏による\Pkg{PXchfon}パッケージの一部機能とを -合わせたような格好をしており,内部で\Pkg{luatexja-fontspec},従って -\Pkg{fontspec}を読み込んでいる. +合わせたような格好をしている. +% + +%\paragraph{General options} +%\paragraph{一般的なオプション} +\begin{cslist}[before*=] + +\item[fontspec] +%<*en> +With this option, Japanese fonts are selected using functionality of +the \Pkg{luatexja-fontspec} package. This means that the \Pkg{fontspec} package is + automatically loaded by this package. +\emph{This option is enabled by default.} + +If you need to pass some options to \Pkg{fontspec}, load \Pkg{fontspec} manually +before \Pkg{luatexja-preset}: +% +%<*ja> +\Pkg{luatexja-fontspec}パッケージの機能を用いて和文フォントを選択する. +これは,\Pkg{fontspec}パッケージが自動で読み込まれることを意味する. +\emph{このオプションは標準で有効になっている.} もし\Pkg{fontspec}パッケージに何らかのオプションを渡す必要がある \footnote{例えば,数式フォントまで置換されてしまい,\cs{mathit}によってギリシャ文字の @@ -1390,9 +1403,35 @@ before \Pkg{luatexja-preset}: \usepackage[...]{luatexja-preset} \end{lstlisting} -%\paragraph{General options} -%\paragraph{一般的なオプション} -\begin{cslist}[before*=] +\item[nfssonly] +%<*en> +With this option,selecting Japanese fonts won't be performed using the functionality of + the \Pkg{fontspec} package, but only standard NFSS2. + +This option will be disabled when \Pkg{luatexja-fontspec} package is loaded. +Note that the \Pkg{fontspec} can coexist with the option as the following: +\begin{lstlisting} +\usepackage{fontspec} +\usepackage[hiragino-pron,nfssonly]{luatexja-preset} +\end{lstlisting} +Note that the functionality of the \Pkg{luatexja-fontspec} package, such as + \cs{setmainjfont}, cannot be used in the example above. +% +%<*ja> +\LaTeX 標準のフォント選択機構(NFSS2)を用いて +\texttt{ltjpm}(明朝),\texttt{ltjpg}(ゴシック),それに後に述べる \texttt{deluxe} オプ + ションが指定された場合には \texttt{ltjpmg}(丸ゴシック)という +3つの和文フォントファミリを定義し,これらを用いる. + +欧文フォントの指定で\Pkg{fontspec}パッケージを読み込んでいる場合でも +\begin{lstlisting} +\usepackage{fontspec} +\usepackage[hiragino-pron,nfssonly]{luatexja-preset} +\end{lstlisting} +のようにこのオプションを指定することは可能である.一方, +パッケージ読み込み時に既に\Pkg{luatexja-fontspec}パッケージが読み込まれて + いる場合は \texttt{nfssonly} オプションは無視される. +% \item[nodeluxe] %<*en> @@ -1402,7 +1441,7 @@ This means that \verb+\mcfamily\bfseries+, \verb+\gtfamily\bfseries+ and \emph{This option is enabled by default.} % %<*ja> -\LaTeXe 環境下での標準設定のように,明朝体・ゴシック体を各1ウェイトで使用する. +\LaTeXe 環境下の標準設定のように,明朝体・ゴシック体を各1ウェイトで使用する. より具体的に言うと,この設定の下では \ \verb+\mcfamily\bfseries+, \verb+\gtfamily\bfseries+, \verb+\gtfamily\mdseries+はみな同じフォントとなる. @@ -1416,23 +1455,32 @@ Use \textit{mincho} with two weights (medium~and~bold), because \textit{rounded gothic} is called \textit{maru gothic} (丸ゴシック) in Japanese.}. The heavy weight of \textit{gothic} can be used by ``changing the family'' \cs{gtebfamily}, or \verb+\textgteb{...}+. -This is because \Pkg{fontspec} package can handle only medium (\cs{mdseries}) and +This is because the \Pkg{fontspec} package can handle only medium (\cs{mdseries}) and bold (\cs{bfseries}). % %<*ja> 明朝体2ウェイト・ゴシック体3ウェイトと, 丸ゴシック体 (\cs{mgfamily}, \verb+\textmg{...}+) を使用可能とする. -ゴシック体は細字・太字・極太の3ウェイトがあるが, -極太ゴシック体はファミリの切り替え (\cs{gtebfamily}, \verb+\textgteb{...}+) % -で実現している.\Pkg{fontspec}では通常 (\cs{mdseries}) と太字 (\cs{bfseries}) しか扱えないために -このような中途半端な実装になっている. +ゴシック体は中字・太字・極太の3ウェイトがあるが, +極太ゴシック体を使う場合, +\begin{itemize} + \item \cs{gtebfamily}, \verb+\textgteb{...}+ + \item \cs{ebseries} (周囲がゴシック体のとき,\texttt{nfssonly} オプション指定時のみ) +\end{itemize} +のいずれかを用いる.標準で \cs{ebseries} が準備されていないのは,バージョンが古い +\Pkg{fontspec}では中字(\cs{mdseries})と太字(\cs{bfseries})しか扱えなかった名残である. % \item[expert] %<*en> Use horizontal/vertical kana alternates, and define a command \cs{rubyfamily} to use kana characters designed for ruby. % -%横組・縦組専用仮名を用いる.また,\cs{rubyfamily} でルビ用仮名が使用可能となる. +%<*ja> +横組・縦組専用仮名を用いる.また,\cs{rubyfamily} でルビ用仮名が使用可能となる\footnote{% + \cs{rubyfamily}とはいいつつ,実際にはフォントファミリを切り替えるのではない(通常では + font featureの追加,\texttt{nfssonly} 指定時にはシェイプを \texttt{rb} に切り替え). +}. +% \item[bold] %Substitute bold series of \textit{gothic} for bold series of \textit{mincho}. %「明朝の太字」をゴシック体の太字によって代替する. @@ -1468,10 +1516,14 @@ We didn't taken account of when both \texttt{90jis} and \texttt{jis2004} are sp %<*en> Besides \texttt{morisawa-pro}~and~\texttt{morisawa-pr6n} presets, fonts are specified by font name, not by file name. +In following tables, starred fonts (e.g.~KozGo\dots-Regular) are used for medium series of \textit{gothic}, +\emph{if and only if \texttt{deluxe} option is specified}. % %<*ja> \texttt{morisawa-pro}, \texttt{morisawa-pr6n}以外はフォントの指定は (ファイル名でなく)フォント名で行われる. +以下の表において,*\,つきのフォント(e,g,~KozGo\dots-Regular)は,\emph{\texttt{deluxe}オプション指定時に} +ゴシック体中字として用いられるものを示している. % \begin{cslist}[style=standard] \item[kozuka-pro] Kozuka Pro (Adobe-Japan1-4) fonts. @@ -1514,16 +1566,7 @@ There is not rounded gothic family in Kozuka fonts. \end{tabular} \end{center} -%<*en> -In above table, starred fonts (KozGo\dots-Regular) are used for medium series of \textit{gothic}, -\emph{if and only if \texttt{deluxe} option is specified}. -% -%<*ja> -上の表において,*つきのフォント(KozGo\dots-Regular)は,\emph{\texttt{deluxe}オプション指定時に} -ゴシック体細字として用いられる. -% - -%\medskip +%\newpage \item[hiragino-pro] Hiragino Pro (Adobe-Japan1-5) fonts. % \\*[-\dimexpr\medskipamount+\baselineskip\relax] @@ -1561,12 +1604,12 @@ Std/StdNフォントであり,その他はAdobe-Japan1-5対応である. \midrule %\textit{rounded gothic} %\gt 丸ゴシック -&&Hiragino~Maru~Gothic~ProN~W4&Hiragino~Maru~Gothic~ProN~W4\\ +&&Hiragino~Maru~Gothic~Pro~W4&Hiragino~Maru~Gothic~ProN~W4\\ \bottomrule \end{tabular} \end{center} -%\newpage +%\medskip \item[morisawa-pro] Morisawa Pro (Adobe-Japan1-4) fonts. % \\*[-\dimexpr\medskipamount+\baselineskip\relax] @@ -1626,18 +1669,46 @@ Std/StdNフォントであり,その他はAdobe-Japan1-5対応である. \end{tabular} \end{center} + \item[moga-mobo] MogaMincho, MogaGothic, and MoboGothic. +%These fonts can be downloaded from\\\hfill \url{http://yozvox.web.fc2.com/}. +%これらのフォントは \url{http://yozvox.web.fc2.com/} からダウンロードできる. + +\begin{center}\small +\begin{tabular}{clll} +\toprule +\bf family&\bf series&\bf default, \texttt{90jis}~option&\bf \texttt{jis2004} option\\ +\midrule + &medium&Moga90Mincho&MogaMincho\\ +%\smash{\raisebox{1.5ex}{\textit{mincho}}}% +%\smash{\raisebox{1.5ex}{\gt 明朝}}% + &bold&Moga90Mincho Bold&MogaMincho Bold\\ +\midrule + &&Moga90Gothic&MogaGothic\\ + &\smash{\raisebox{1.5ex}{medium}} + &Moga90Gothic&MogaGothic\\ +\cmidrule(l){2-4} +%\textit{gothic}% +%\gt ゴシック + &bold&Moga90Gothic Bold&MogaGothic Bold\\ + &heavy&Moga90Gothic Bold&MogaGothic Bold\\ +\midrule +%\textit{rounded gothic} +%\gt 丸ゴシック +&&Mobo90Gothic&MoboGothic\\ +\bottomrule +\end{tabular} +\end{center} + + \end{cslist} %\paragraph{Presets for single weight} %\paragraph{単ウェイト用プリセット一覧} %<*en> Next, we describe settings for using only single weight. -In four settings below, we use same fonts for medium and bold (and heavy) weights. -(Hence \verb+\mcfamily\bfseries+ and \verb+\mcfamily\mdseries+ yields same Japanese fonts, -even if \texttt{deluxe} option is also specified). % %<*ja> -次に,単ウェイト用の設定を述べる.この4設定では「細字」「太字」の区別はない. -また,丸ゴシック体はゴシック体と同じフォントを用いる. +次に,単ウェイト用の設定を述べる.この4設定では +明朝体太字・丸ゴシック体はゴシック体と同じフォントが用いられる. % \par\nobreak\medskip {\centering\small @@ -1696,11 +1767,11 @@ We can use HG~fonts bundled with Microsoft~Office for realizing multiple weights \multicolumn{3}{c}{HG Maru Gothic PRO}\\ % %<*ja> -\gtfamily 明朝体細字 +\gtfamily 明朝体中字 &IPA明朝&IPAex明朝&MS明朝\\\midrule \gtfamily 明朝体太字& \multicolumn{3}{c}{HG明朝E}\\\midrule -\gtfamily ゴシック体細字\\ +\gtfamily ゴシック体中字\\  単ウェイト時 &IPAゴシック&IPAexゴシック&MSゴシック\\  {\tt jis2004}指定時 @@ -1728,7 +1799,6 @@ are internally specified by: \end{description} % %<*ja> -\newpage なお,HG明朝E・HGゴシックE・HG創英角ゴシックUB・HG丸ゴシック体PROの4つについては,内部で \begin{description} \item[標準] フォント名(\texttt{HGMinchoE} など) @@ -1746,16 +1816,15 @@ are internally specified by: Under \pLaTeX, \Pkg{japanese-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 -supports some of functions in \Pkg{japanese-otf} package. -If you want to use these functions, load \Pkg{luatexja-otf} package. +supports some of functions in the \Pkg{japanese-otf} package, +as an external package \Pkg{luatexja-otf}. % %<*ja> \subsection{\cs{CID}, \cs{UTF}と\Pkg{otf}パッケージのマクロ} \pLaTeX では,JIS~X~0208にないAdobe-Japan1-6の文字を出力するために, 齋藤修三郎氏による\Pkg{otf}パッケージが用いられていた.このパッケージは 広く用いられているため,\LuaTeX-jaにおいても\Pkg{otf}パッケージの機能の -一部をサポートしている.これらの機能を用いるためには\Pkg{luatexja-otf}パッケージ -を読み込めばよい. +一部を(\Pkg{luatexja-otf}という別のパッケージとして)実装した. % \begin{LTXexample} @@ -1772,7 +1841,7 @@ If you want to use these functions, load \Pkg{luatexja-otf} package. %<*ja> \Pkg{otf}パッケージでは,それぞれ次のようなオプションが存在した: \begin{cslist} -\item[deluxe] 明朝体・ゴシック体各2ウェイトと,丸ゴシック体を扱えるようになる. +\item[deluxe] 明朝体・ゴシック体各3ウェイトと,丸ゴシック体を扱えるようになる. \item[expert] 仮名が横組・縦組専用のものに切り替わり,ルビ用仮名も \ \cs{rubyfamily}\ によって扱えるようになる. \item[bold] ゴシック体を標準で太いウェイトのものに設定する. @@ -1841,11 +1910,11 @@ Ryumin-Light, GothicBBB-Mediumという名前の非埋込フォントを用い % -%\section{Changing Parameters} +%\section{Changing Internal Parameters} %\section{パラメータの変更} %<*en> -There are many parameters in \LuaTeX-ja. And due to the behavior of \LuaTeX, +There are many internal 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 \cs{ltjsetparameter} and @@ -1960,12 +2029,12 @@ these eight ranges belongs to the character range~217. \begin{description} %<*en> -\item[Range~8${}^{\text{J}}$] The intersection of the upper half of ISO~8859-1 +\item[Range~8${}^{\kern.1em\text{J}}$] The intersection of the upper half of ISO~8859-1 (Latin-1 Supplement) and JIS~X~0208 (a basic character set for Japanese). This character range consists of the following characters: % %<*ja> -\item[範囲8${}^{\text{J}}$] ISO~8859-1の上位領域(ラテン1補助)と +\item[範囲8${}^{\kern.1em\text{J}}$] ISO~8859-1の上位領域(ラテン1補助)と JIS~X~0208の共通部分.この文字範囲は 以下の文字で構成される: % @@ -2005,11 +2074,11 @@ This range consists of the following Unicode ranges, \emph{except characters in \end{itemize} \end{multicols} %<*en> -\item[Range~2${}^{\text{J}}$] Greek and Cyrillic letters. JIS~X~0208 (hence most of Japanese +\item[Range~2${}^{\text{\kern.1emJ}}$] Greek and Cyrillic letters. JIS~X~0208 (hence most of Japanese fonts) has some of these characters. % %<*ja> -\item[範囲2${}^{\text{J}}$] ギリシャ文字とキリル文字.JIS~X~0208(したがってほとんどの +\item[範囲2${}^{\text{\kern.1emJ}}$] ギリシャ文字とキリル文字.JIS~X~0208(したがってほとんどの 和文フォント)はこれらの文字を持つ. % \begin{multicols}{2} @@ -2021,11 +2090,11 @@ This range consists of the following Unicode ranges, \emph{except characters in \end{itemize} \end{multicols} %<*en> -\item[Range~3${}^{\text{J}}$] Punctuations and Miscellaneous symbols. The block list is +\item[Range~3${}^{\text{\kern.1emJ}}$] Punctuations and Miscellaneous symbols. The block list is indicated in Table~\ref{table-rng3}. % %<*ja> -\item[範囲3${}^{\text{J}}$] 句読点と記号類.ブロックのリストは表\ref{table-rng3}% +\item[範囲3${}^{\text{\kern.1emJ}}$] 句読点と記号類.ブロックのリストは表\ref{table-rng3}% に示してある. % \begin{table}[!tb] @@ -2075,8 +2144,8 @@ This range consists of the following Unicode ranges, \emph{except characters in \end{lstlisting} %\item[Range~5${}^{\text{A}}$] Surrogates and Supplementary Private Use Areas. %\item[範囲5${}^{\text{A}}$] 代用符号と補助私用領域. -%\item[Range~6${}^{\text{J}}$] Characters used in Japanese. The block list is indicated in Table~\ref{table-rng6}. -%\item[範囲6${}^{\text{J}}$] 日本語で用いられる文字.ブロックのリストは表\ref{table-rng6}に示す. +%\item[Range~6${}^{\text{\kern.1emJ}}$] Characters used in Japanese. The block list is indicated in Table~\ref{table-rng6}. +%\item[範囲6${}^{\text{\kern.1emJ}}$] 日本語で用いられる文字.ブロックのリストは表\ref{table-rng6}に示す. \begin{table}[!tb] %\caption{Unicode blocks in predefined character range~6.}\medskip %\caption{文字範囲6に指定されているUnicodeブロック.} @@ -2104,11 +2173,11 @@ This range consists of the following Unicode ranges, \emph{except characters in \end{tabular} \end{table} %<*en> -\item[Range~7${}^{\text{J}}$] Characters used in CJK languages, but not included in Adobe-Japan1-6. +\item[Range~7${}^{\text{\kern.1emJ}}$] Characters used in CJK languages, but not included in Adobe-Japan1-6. The block list is indicated in Table~\ref{table-rng7}. % %<*ja> -\item[範囲7${}^{\text{J}}$] CJK言語で用いられる文字のうち,Adobe-Japan1-6に +\item[範囲7${}^{\text{\kern.1emJ}}$] CJK言語で用いられる文字のうち,Adobe-Japan1-6に 含まれていないもの. ブロックのリストは表\ref{table-rng7}に示す. % @@ -2144,11 +2213,11 @@ The block list is indicated in Table~\ref{table-rng7}. \begin{itemize} %<*en> \item Glues/kerns specified in JFM. If \cs{inhibitglue} is issued - around a Japanese character, this glue will not be inserted at the + around a \textbf{JAchar}, this glue will not be inserted at the place. % %<*ja> -\item JFMで指定されたグルー/カーン.もし \cs{inhibitglue} が和文文字の周りで +\item JFMで指定されたグルー/カーン.もし \cs{inhibitglue} が\textbf{JAchar}の周りで 発行されていれば,このグルーは挿入されない. % %<*en> @@ -2664,7 +2733,7 @@ for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.} %&\bf row&\bf col.&\bf \pTeX&\bf \upTeX&\bf\LuaTeX-ja\\ %&\bf 区&\bf 点&\bf \pTeX&\bf \upTeX&\fontseries{b}\selectfont\LuaTeX-ja\\ \midrule -\D 3000&1&1&N&N&Y\\ +%\D 3000&1&1&N&N&Y\\ \D 30FB&1&6&N&Y&N\\ \D 309B&1&11&N&Y&N\\ \D 309C&1&12&N&Y&N\\ @@ -2672,16 +2741,18 @@ for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.} \D FF3E&1&16&N&N&Y\\ \D FFE3&1&17&N&N&Y\\ \D FF3F&1&18&N&N&Y\\ -\D 30FD&1&19&N&Y&Y\\ -\D 30FE&1&20&N&Y&Y\\ -\D 309D&1&21&N&Y&Y\\ -\D 309E&1&22&N&Y&Y\\ +%\D 30FD&1&19&N&Y&Y\\ +%\D 30FE&1&20&N&Y&Y\\ +%\D 309D&1&21&N&Y&Y\\ +%\D 309E&1&22&N&Y&Y\\ \D 3003&1&23&N&N&Y\\ \D 4EDD&1&24&N&Y&Y\\ \D 3005&1&25&N&N&Y\\ \D 3006&1&26&N&N&Y\\ \D 3007&1&27&N&N&Y\\ \D 30FC&1&28&N&Y&Y\\ +\D FF0F&1&31&N&N&Y\\ +\D FF3C&1&32&N&N&Y\\ \bottomrule \end{tabular}\qquad \begin{tabular}{cccccc} @@ -2689,8 +2760,6 @@ for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.} %&\bf row&\bf col.&\bf \pTeX&\bf \upTeX&\bf\LuaTeX-ja\\ %&\bf 区&\bf 点&\bf \pTeX&\bf \upTeX&\fontseries{b}\selectfont\LuaTeX-ja\\ \midrule -\D FF0F&1&31&N&N&Y\\ -\D FF3C&1&32&N&N&Y\\ \D FF5C&1&35&N&N&Y\\ \D FF0B&1&60&N&N&Y\\ \D FF1D&1&65&N&N&Y\\ @@ -2708,7 +2777,6 @@ for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.} %\multicolumn{3}{c}{$\vphantom{\D 3000}$\hbox{}Cyrillic letters (row 7)}&N&N&Y\\ %\multicolumn{3}{c}{$\vphantom{\D 3000}$\hbox{}ギリシャ文字(6区)}&Y&N&Y\\ %\multicolumn{3}{c}{$\vphantom{\D 3000}$\hbox{}キリル文字(7区)}&N&N&Y\\ -$\vphantom{\D 3000}$\\ \bottomrule \end{tabular}\hss}\par \end{table} @@ -2735,12 +2803,10 @@ For the detail, see \url{https://github.com/h-kitagawa/kct}. 異なっているところだけを載せると,表\ref{table-kcat-diff}のようになる. 「・」「゛」「゜」「゠」を除けば,\LuaTeX-jaでは\upTeX より多くの文字が 制御綴に使用可能になっている. -\textbf{特に重要なのは,全角空白(\texttt{U+3000})が -\LuaTeX-jaでは制御綴中に使用可能であることである.} JIS~X~0213の範囲に広げると,差異はさらに大きくなる. 詳細については例えば \url{https://github.com/h-kitagawa/kct} 中の\ -\texttt{kct-uni-out.pdf} などを参照すること. +\texttt{kct-out.pdf} などを参照すること. % @@ -2783,7 +2849,7 @@ implemented vertical writing by rotating \texttt{TLT}-box by 90~degrees. %<*ja> \begin{tabular}{>{\bfseries}lcccc} \toprule -&横組&縦組 &\cs{dtou}「dtou方向」&「utod方向」\\ +&横組&縦組 &「dtou方向」&「utod方向」\\ \midrule 命令&\cs{yoko}&\cs{tate}&\cs{dtou}&\cs{utod}\\ 字送り方向&水平右向き(→)&垂直下向き(↓)&垂直上向き(↑)&垂直下向き(↓)\\ @@ -3269,7 +3335,7 @@ Returned value&\texttt{4}&\texttt{3}&\texttt{1}&\texttt{11}&\texttt{0}\\ \end{center} \begin{LTXexample}[width=0.3\textwidth] -\leavevmode\def\DIR{\ltjgetparameter{ direction}} +\leavevmode\def\DIR{\ltjgetparameter{direction}} \hbox{\yoko\DIR}, \hbox{\tate\DIR}, \hbox{\dtou\DIR}, \hbox{\utod\DIR}, \hbox{\tate$\hbox{tate math: \DIR}$} @@ -3284,7 +3350,7 @@ Returned value&\texttt{4}&\texttt{3}&\texttt{1}&\texttt{11}&\texttt{0}\\ \ifnum\ltjgetparameter{boxdir}{200}=4 \end{lstlisting} のように行うことができる. -\cs{iftdir} は少々面倒であるが +\cs{iftdir} は少々面倒であるが,8で割った余りが3であるか否かを判断すれば良いから \begin{lstlisting} \ifnum\numexpr \ltjgetparameter{direction}-(\ltjgetparameter{direction}/8)*8=3 @@ -4370,7 +4436,7 @@ The following is the list of imaginary characters: \item['jcharbdd'] %A boundary between \textbf{JAchar} and anything else (such as \textbf{ALchar}, kern, glue,\,\ldots). -%和文文字と「その他のもの」(欧文文字,glue,kern等)との境界. +%\textbf{JAchar}と「その他のもの」(欧文文字,glue,kern等)との境界. \item[$-1$] %The left/right boundary of an inline math formula. @@ -4590,7 +4656,7 @@ For $i\in\omega$, \texttt{char\_type[$i$]} is information of characters whose cl \item \texttt{align} is a number which is determined from \texttt{align}~field in the JFM: \[ \begin{cases} - 0&\text{\texttt{'left'} and the default value}\\0.5&\text{\tt 'middle'}\\1&\text{\tt 'right'} + 0&\text{\texttt{'left'} (default)}\\0.5&\text{\tt 'middle'}\\1&\text{\tt 'right'} \end{cases} \] \item For $j\in \omega$, \texttt{[$j$]} stores a kern or a glue which will be inserted @@ -4801,8 +4867,7 @@ of \LuaTeX, see Section~\ref{sec-para}. \cs{ltjsetparameter} and \cs{ltjglobalsetparameter} are commands for assigning parameters. These take one argument which is a \texttt{=} list. -The difference between -\cs{ltjsetparameter} and \cs{ltjglobalsetparameter} is only the +The difference between these two commands is the scope of assignment; \cs{ltjsetparameter} does a local assignment and \cs{ltjglobalsetparameter} does a global one. @@ -4811,9 +4876,7 @@ They also obey the value of \cs{globaldefs}, like other assignments. %<*ja> \cs{ltjsetparameter} と \cs{ltjglobalsetparameter} はパラメータを 指定するための命令で,\texttt{=}のリストを -引数としてとる. -\cs{ltjsetparameter} と \cs{ltjglobalsetparameter} の違いはスコープの -違いのみで, +引数としてとる.両者の違いはスコープであり, \cs{ltjsetparameter} はローカルな設定を行うのに対し, \cs{ltjglobalsetparameter} はグローバルな設定を行う. また,他のパラメータ指定と同様に \cs{globaldefs} の値にも従う. @@ -4942,7 +5005,7 @@ to prevent a line ends with this character. \item[\DParam{jaxspmode}\,=\{,\}$^\ast$]\ %<*en> -Setting whether inserting \Param{xkanjiskip} is allowed before/after a \textbf{JAchar} whose character code is . +Set whether inserting \Param{xkanjiskip} is allowed before/after a \textbf{JAchar} whose character code is . The followings are allowed for : % %<*ja> @@ -4970,7 +5033,7 @@ This parameter is similar to the \cs{inhibitxspcode} primitive of \pTeX, but not \item[\DParam{alxspmode}\,=\{,\}$^\ast$] [\cs{xspcode}]\ %<*en> -Setting whether inserting \Param{xkanjiskip} is allowed before/after a +Set whether inserting \Param{xkanjiskip} is allowed before/after a \textbf{ALchar} whose character code is . The followings are allowed for : % @@ -5007,6 +5070,13 @@ Note that parameters \Param{jaxspmode} and \Param{alxspmode} share a common tabl しかし,自然長が \cs{maxdimen} の場合は,例外的に和文フォントのJFM側で指定されている 値を採用(こちらはフォントサイズに比例)することになっている. % +%<*en> +The default glue which inserted between two \textbf{JAchar}s. +Changing current Japanese font does not alter this parameter, as \pTeX. + +If the natural width of this parameter is \cs{maxdimen}, \LuaTeX-ja uses +the value which is specified in the JFM for current Japanese font (See Subsection~\ref{ssec-jfm-str}). +% \item[\DParam{xkanjiskip}\,=$^\ast$] [\cs{xkanjiskip}]\ @@ -5015,6 +5085,14 @@ Note that parameters \Param{jaxspmode} and \Param{alxspmode} share a common tabl \Param{kanjiskip}と同じように,通常ではフォントサイズに比例して変わることはないが, 自然長が \cs{maxdimen} の場合が例外である. % +%<*en> +The default glue which inserted between a \textbf{JAchar} and an + \textbf{ALchar}. +Changing current font does not alter this parameter, as \pTeX. + +As \Param{kanjiskip}, if the natural width of this parameter is \cs{maxdimen}, \LuaTeX-ja uses +the value which is specified in the JFM for current Japanese font (See Subsection~\ref{ssec-jfm-str}). +% \item[\DParam{differentjfm}\,=$^\dagger$]\ @@ -5939,14 +6017,14 @@ will not be embedded in the output PDF file. See Subsection~\ref{ssec-psft}. % \begin{figure}[!tb] -\begin{LTXexample} +\begin{LTXexample}[width=0.25\textwidth] \jfontspec[ - YokoFeatures={Color=007F00}, - TateFeatures={Color=00007F}, + YokoFeatures={Color=007F00}, TateFeatures={Color=00007F}, TateFont=KozGoPr6N-Regular ]{KozMinPr6N-Regular} -\hbox{\yoko 横組のテスト} -\hbox{\tate 縦組のテスト} +\hbox{\yoko 横組のテスト}\hbox{\tate 縦組のテスト} +\addjfontfeatures{Color=FF0000} +\hbox{\yoko 横組}\hbox{\tate 縦組} \end{LTXexample} %\caption{\texttt{TateFeatures} 等の使用例} %\caption{An example of \texttt{TateFeatures} etc.} @@ -5955,16 +6033,26 @@ will not be embedded in the output PDF file. See Subsection~\ref{ssec-psft}. \item[TateFeatures=\{\}\textrm{, }TateFont=] -% ... +%<*en> +The \texttt{TateFeatures} key specifies font features which are only turned~on in +vertical writing, such as \texttt{Style=VerticalKana}~(\texttt{vkna} feature). +Similarly, the \texttt{TateFont} key specifies the Japanese font which will be used only + in vertical writing. +A demonstrarion is shown in Figure~\ref{fig:yokotate-fontspec}. +% %<*ja> 縦組において使用されるフォントや,縦組においてのみ適用されるfeature達を 指定する.使用例は図\ref{fig:yokotate-fontspec}参照. % \item[YokoFeatures=\{\}] -% ... +%<*en> +The \texttt{YokoFeatures} key specifies font features which are only turned~on in +horizontal writing,. +A demonstrarion is shown in Figure~\ref{fig:yokotate-fontspec}. +% %<*ja> -横組においてのみ適用されるfeature達を +同様に,横組においてのみ適用されるfeature達を 指定する.使用例は図\ref{fig:yokotate-fontspec}参照. % @@ -6052,6 +6140,12 @@ BoldFeatures = { On the other hand, \texttt{YokoFeatures}, \texttt{TateFeatures} and \texttt{TateFont} keys can be specified in each list in the \texttt{AltFont} key. Also, one can specify \texttt{AltFont} inside \texttt{YokoFeatures},~\texttt{TateFeatures}. + +Note that features which are specified in \texttt{YokoFeatures}~and~\texttt{TateFeatures} +are always interpreted \emph{after} other ``direction-independent'' features. +This explains why \cs{addjfontfeatures} at~line~6 in~Figure~\ref{fig:yokotate-fontspec} +has no effect, because a color specification is already done in +\texttt{YokoFeatures}~and~\texttt{TateFeatures} keys. % %<*ja> \paragraph{\texttt{AltFont}, \texttt{YokoFeatures}, \texttt{TateFeatures} 等の制限} @@ -6080,6 +6174,12 @@ BoldFeatures = { \ \texttt{YokoFeatures},~\texttt{TateFeatures} 及び \texttt{TateFont} キーを 指定することは可能であり.また\ \texttt{YokoFeatures},~\texttt{TateFeatures} キーの 中身に \texttt{AltFont} を指定することができる. + +また,図\ref{fig:yokotate-fontspec}後半部では6行目の色の指定が効かず, +2行目で指定した\ \texttt{YokoFeatures},~\texttt{TateFeatures}\ による色の指定が有効になっ +たままである.これは\emph{\ \texttt{YokoFeatures},~\texttt{TateFeatures}\ によるfeature指定は +組方向に依存しないfeature指定より後に解釈される}からである. + % @@ -6114,16 +6214,24 @@ but please remind remarks below. % %<*ja> 文字コードが(16進で)の文字を出力する. -このコマンドは \verb+\char"+と似ているが,下の記述に注意すること.%" +このコマンドは \verb+\char"+と似ているが,下の注意を参照すること.%" % \end{cslist} %<*ja> -このパッケージは,\texttt{ajmacros.sty}(\Pkg{otf}パッケージ付属のマクロ集,井上浩一氏作)から -漢字コードをUTF8にしたり,plain \LuaTeX でも利用可能にするという -修正を加えた \texttt{luatexja-ajmacros.sty} も自動的に読み込む. -そのため,\texttt{ajmacros.sty} マクロ集にある \verb+\aj半角+ などのマクロもそのまま使用可能である. +このパッケージは,マクロ集 \texttt{luatexja-ajmacros.sty}\footnote{\Pkg{otf}パッケージ付属の井上浩一氏によるマクロ集 +\texttt{ajmacros.sty} に対して +漢字コードをUTF-8にしたり,plain \LuaTeX でも利用可能にするという +修正を加えたものである.}\ も自動的に読み込む. +\texttt{luatexja-ajmacros.sty} は, +そのため,\Pkg{luatexja-otf} を読みこめば \texttt{ajmacros.sty} マクロ集にある \cs{aj半角} などのマクロもそのまま使うことができる. % +%<*en> +This package automatically loads \texttt{luatexja-ajmacros.sty}, which is slightly +modified version of \texttt{ajmacros.sty}\footnote{Useful macros by iNOUE Koich!, for the +\Pkg{japanese-otf} package.}. +Hence one can use macros which sre defined in \texttt{ajmacros.sty}, such as~\cs{aj半角}. +% %\paragraph{Remarks} %\paragraph{注意} @@ -6553,7 +6661,7 @@ This commands typeset in LR-mode, in direction. If is positive, the width of the box becomes this . In this case, will be aligned \dots -\item[picture\textrm{environment}] +\item[picture\textrm{\ environment}] \item[\cs{rensuji}{[]}\{\}\textrm{, }\cs{rensujiskip}] @@ -6665,10 +6773,11 @@ The font index of current Japanese font for vertical direction. \attr{ltj@charclass} %<*en> -The character class of Japanese \textit{glyph\_node}. +The character class of a \textbf{JAchar}. This attribute is only set on a + \textit{glyph\_node} which contains a \textbf{JAchar}. % %<*ja> -和文文字の\textit{glyph\_node}の文字クラス. +\textbf{JAchar}の文字クラス.\textbf{JAchar}が格納された\textit{glyph\_node}でのみ使われる. % \attr{ltj@yablshift} @@ -7152,7 +7261,7 @@ as in \Pkg{luatexja-adjust}. %<*en> \paragraph{Setting parameters} -Figure~\ref{fig:setpar-def} shows the ``most outer'' definition of +Figure~\ref{fig:setpar-def} shows the \emph{most outer} definition of two commands, \cs{ltjsetparameter} and \cs{ltjglobalsetparameter}. Most important part is the last \cs{setkeys}, @@ -7432,7 +7541,7 @@ process it}, if and only if the following three conditions are satisfied: \paragraph{Remark} The following example shows the major difference from the behavior of \pTeX. \begin{LTXexample} -\fontspec[Ligatures=TeX]{TeX Gyre Termes} +\fontspec[Ligatures=TeX]{Linux Libertine O} \ltjsetparameter{autoxspacing=false} \ltjsetparameter{jacharrange={-6}}xあ y\ltjsetparameter{jacharrange={+6}}zい @@ -7492,7 +7601,7 @@ emits a space. \texttt{lstlisting}系環境などの日本語対応マクロを書かなくてすませるためのものである. しかしながら,\pTeX と完全に同じ挙動が実現できたわけではない. -次のように,和文文字の範囲を変更したちょうどその行においては挙動が異なる: +次のように,\textbf{JAchar}の範囲を変更したちょうどその行においては挙動が異なる: \begin{LTXexample} \fontspec[Ligatures=TeX]{TeX Gyre Termes} \ltjsetparameter{autoxspacing=false} @@ -7500,7 +7609,7 @@ emits a space. y\ltjsetparameter{jacharrange={+6}}zい u \end{LTXexample} -上ソース中の「あ」は欧文文字扱いであり. +上ソース中の「あ」は\textbf{ALchar}(欧文扱い)であり. ここで使用している欧文フォント\TeX\ Gyre Termesは「あ」を含まない. よって,出力に「あ」は現れないことは不思議ではない. それでも,\pTeX とまったく同じ挙動を示すならば,出力は @@ -7508,14 +7617,14 @@ u 上のように異なる挙動となっているが,それは以下の理由による: \begin{itemize} \item 3行目を \texttt{process\_input\_buffer} で処理する時点では, - 「あ」は和文文字扱いである.よって3行目は和文文字で終わることになり, + 「あ」は\textbf{JAchar}(和文扱い)である.よって3行目は\textbf{JAchar}で終わることになり, コメント文字 \texttt{U+FFFFF} が追加される. よって,直後の改行文字は無視されることになり,空白は入らない. \item 4行目を \texttt{process\_input\_buffer} で処理する時点では, - 「い」は欧文文字扱いである.よって4行目は欧文文字で終わることになり, + 「い」は\textbf{ALchar}である.よって4行目は\textbf{ALchar}で終わることになり, 直後の改行文字は空白に置き換わる. \end{itemize} -このため,トラブルを避けるために,和文文字の範囲を\cs{ltjsetparameter}で編集した場合, +このため,トラブルを避けるために,\textbf{JAchar}の範囲を\cs{ltjsetparameter}で編集した場合, その行はそこで改行するようにした方がいいだろう. % @@ -7680,11 +7789,11 @@ $\mathit{Np}.\mathit{id}$の意味を述べるとともに, 説明用に準備した概念であって,実際のLuaコード中にそのように書かれているわけではないことに注意. \begin{description} -\item[\textit{id\_jglyph}] 和文文字.\\ -$\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$は,その和文文字を表している +\item[\textit{id\_jglyph}] \textbf{JAchar}(和文文字).\\ +$\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$は,その\textbf{JAchar}を表している \textit{glyph\_node}そのものである. -\item[\textit{id\_glyph}] 和文文字を表していない\textit{glyph\_node}~$p$.\\ -多くの場合,$p$は欧文文字を格納しているが,「ffi」などの合字によって作られた +\item[\textit{id\_glyph}] \textbf{JAchar}(和文文字)以外のものを表す\textit{glyph\_node}~$p$.\\ +多くの場合,$p$は\textbf{ALchar}(欧文文字)を格納しているが,「ffi」などの合字によって作られた \textit{glyph\_node}である可能性もある. 前者の場合,$\mathit{Np}.\mathit{head}$,~$\mathit{Np}.\mathit{tail} = p$である. 一方,後者の場合, @@ -7736,15 +7845,15 @@ $\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$の算出は, 空白等の実際の挿入を行うことは前に書いたが,ここでの説明では,問題にしているクラスタ\textit{Np}は「後ろ側」のクラスタである とする.「前側」のクラスタについては,以下の説明で\textit{head}が\textit{last}に置き換わることに注意すること. \begin{description} -\item[和文A] リスト中に直接出現している和文文字. +\item[和文A] リスト中に直接出現している\textbf{JAchar}. \textit{id}が\textit{id\_jglyph}であるか,\\ \textit{id}が\textit{id\_pbox}であって$\mathit{Np}.\mathit{head}$が\textbf{JAchar}であるとき. -\item[和文B] リスト中のhboxの中身の先頭として出現した和文文字.和文Aとの違いは,これの前に +\item[和文B] リスト中のhboxの中身の先頭として出現した\textbf{JAchar}.和文Aとの違いは,これの前に JFMグルーの挿入が行われない(\Param{xkanjiskip},~\Param{kanjiskip}は入り得る)ことである.\\ \textit{id}が\textit{id\_hlist}か\textit{id\_disc}であって$\mathit{Np}.\mathit{head}$が\textbf{JAchar}であるとき. -\item[欧文] リスト中に直接/hboxの中身として出現している欧文文字.次の3つの場合が該当: +\item[欧文] リスト中に直接/hboxの中身として出現している「\textbf{JAchar}以外の文字」.次の3つの場合が該当: \begin{itemize} \item \textit{id}が\textit{id\_glyph}である. \item \textit{id}が\textit{id\_math}である. @@ -7792,7 +7901,7 @@ $g$は「文字コード \texttt{'boxbdd'} の文字」と\textit{Np}の間に 一方.前者(段落)の場合は,リストの末尾は常に \cs{penalty10000} と, \cs{parfillskip} 由来のグルーが存在する.%よって,最後のクラスタ\textit{Np}は %この \cs{parfillskip} 由来のグルーとなり,実質的な中身の最後はその1つ前のクラスタ\textit{Nq}となる. -段落の最後の「通常の和文文字${}+{}$句点」が独立した行となるのを防ぐために, +段落の最後の「通常の\textbf{JAchar}${}+{}$句点」が独立した行となるのを防ぐために, \Param{jcharwidowpenalty}の値の分だけ適切な場所のペナルティを増やす. ペナルティ量を増やす場所は,\textit{head}が\textbf{JAchar}であり, @@ -7827,7 +7936,7 @@ $g$は「文字コード \texttt{'boxbdd'} の文字」と\textit{Np}の間に この場合が全ての場合の基本となる. \paragraph{「右空白」の算出} -まず,「右空白」にあたる量を算出する.通常はこれが,隣り合った2つの和文文字間に入る空白量となる. +まず,「右空白」にあたる量を算出する.通常はこれが,隣り合った2つの\textbf{JAchar}間に入る空白量となる. \begin{description} \item[JFM由来{[M]}] JFMの文字クラス指定によって入る空白を以下によって求める.この段階で空白量が未定義(未指定)だった場合, デフォルト値\Param{kanjiskip}を採用することとなるので,次へ. @@ -7906,14 +8015,14 @@ $q$と$r$の間は(実フォントが同じなのに)\texttt{jfmvar} キー \item[\Param{kanjiskip}~{[K]}] 上の[M]において空白が定まらなかった場合, 以下で定めた量「右空白」として採用する. この段階においては,\cs{inhibitglue} は効力を持たないため, -結果として,2つの和文文字間には常に何らかのグルー/カーンが挿入されることとなる. +結果として,2つの\textbf{JAchar}間には常に何らかのグルー/カーンが挿入されることとなる. \begin{enumerate} \item 両クラスタ(厳密には$\mathit{Nq}.\mathit{tail}$,$\mathit{Np}.\mathit{head}$)の中身の文字コードに対する \Param{autospacing}パラメタが両方ともfalseだった場合は,長さ0のglueとする. \item ユーザ側から見た\Param{kanjiskip}パラメタの自然長が$\cs{maxdimen}=(2^{30}-1)\,{\rm sp}$で なければ,\Param{kanjiskip}パラメタの値を持つglueを採用する. \item 2.でない場合は,\textit{Nq}, \textit{Np}で使われているJFMに指定されている\Param{kanjiskip}の値を用いる. -どちらか片方のクラスタだけが和文文字(\textsf{和文A}・\textsf{和文B})のときは,そちらのクラスタで使われている +どちらか片方のクラスタだけが\textbf{JAchar}(\textsf{和文A}・\textsf{和文B})のときは,そちらのクラスタで使われている JFM由来の値だけを用いる.もし両者で使われているJFMが異なった場合は,上の[M]~3.と同様の方法を用いて調整する. \end{enumerate} \end{description} @@ -8035,7 +8144,7 @@ If this attempt fails, \LuaTeX-ja use the method ``\textsf{\Param{kanjiskip}~[K] \item 禁則用ペナルティも,以前述べた\textsf{P-normal~[PN]}と同じである. \end{itemize} \begin{description} -\item[Boundary-B~{[\OB]}] 和文文字と「和文でないもの」との間に入る空白を以下によって求め, +\item[Boundary-B~{[\OB]}] \textbf{JAchar}と「\textbf{JAchar}でないもの」との間に入る空白を以下によって求め, 未定義でなければそれを「右空白」として採用する. \textsf{JFM-origin~[M]}の変種と考えて良い. これによって定まる空白の典型例は,和文の閉じ括弧と欧文文字の間に入る半角アキである. @@ -8075,7 +8184,7 @@ If this attempt fails, \LuaTeX-ja use the method ``\textsf{\Param{kanjiskip}~[K] \item 禁則用ペナルティは,以前述べた\textsf{P-normal~[PN]}と同じである. \end{itemize} \begin{description} -\item[Boundary-A~{[\OA]}] 「和文でないもの」と和文文字との間に入る空白を以下によって求め, +\item[Boundary-A~{[\OA]}] 「\textbf{JAchar}でないもの」と\textbf{JAchar}との間に入る空白を以下によって求め, 未定義でなければそれを「右空白」として採用する. \textsf{JFM-origin~[M]}の変種と考えて良い. これによって定まる空白の典型例は,欧文文字と和文の開き括弧との間に入る半角アキである. @@ -8160,7 +8269,7 @@ $\mathit{Nq}.\mathit{tail}$は無意味なので, \paragraph{和文Aと和文Bの違い} 先に述べたように,\textsf{和文B}はhboxの中身の先頭(or 末尾)として出現している -和文文字である.リスト内に直接ノードとして現れている和文文字(\textsf{和文A})との違いは, +\textbf{JAchar}である.リスト内に直接ノードとして現れている\textbf{JAchar}(\textsf{和文A})との違いは, \begin{itemize} \item \textsf{和文B}に対しては,JFMの文字クラス指定から定まる空白 \textsf{JFM-origin~[M]},\textsf{Boundary-A~[\OA]},\textsf{Boundary-B~[\OB]})の挿入は行われない. @@ -8252,7 +8361,7 @@ $h = \max(\texttt{height} + \texttt{yoffset}, 0)$, $d=\texttt{depth}$. \end{itemize} という状況で組んだ場合を例にとって説明しよう. -\LuaTeX・\Pkg{luaotfload}によるカーニング・ハイフネーションが終わった段階では, +\LuaTeX・\Pkg{luaotfload}によるカーニング・ハイフネーションが終わった段階では,…… @@ -8719,7 +8828,7 @@ JFM中にある文字クラス$n$の定義の \item \Param{kanjiskip} \end{enumerate} \begin{enumerate} - \item 行末の和文文字を移動したことで$\textit{total}=0$となれば, + \item 行末の\textbf{JAchar}を移動したことで$\textit{total}=0$となれば, 調整の必要はなく,行が格納されているhboxの \texttt{glue\_set}, \texttt{glue\_sign}, \texttt{glue\_order}を再計算すればよい. 以降,$\textit{total}\neq 0$と仮定する. @@ -8879,7 +8988,7 @@ CMapが必要である. \item[ltj-cid-auto-adobe-japan1.lua] The font table of a CID-keyed non-embedded Japanese font. This is loaded in every run. -It is created from two CMaps, \texttt{UniJIS2004-UTF32-H} and +It is created from three CMaps, \texttt{UniJIS2004-UTF32-\{H,V\}} and \texttt{Adobe-Japan1-UCS2}, and this is why these two CMaps are needed in the first run of \LuaTeX-ja. @@ -8909,10 +9018,10 @@ The following is the structure of the that table. \bf \texttt{cid} key&\bf name of the cache & \multicolumn{2}{c}{\bf used CMaps}\\ \midrule -Adobe-Japan1-*<j-cid-auto-adobe-japan1.lua&UniJIS2004-UTF32-H&Adobe-Japan1-UCS2\\ -Adobe-Korea1-*<j-cid-auto-adobe-korea1.lua&UniKS-UTF32-H&Adobe-Korea1-UCS2\\ -Adobe-GB1-*<j-cid-auto-adobe-gb1.lua&UniGB-UTF32-H&Adobe-GB1-UCS2\\ -Adobe-CNS1-*<j-cid-auto-adobe-cns1.lua&UniCNS-UTF32-H&Adobe-CNS1-UCS2\\ +Adobe-Japan1-*<j-cid-auto-adobe-japan1.lua&UniJIS2004-UTF32-*&Adobe-Japan1-UCS2\\ +Adobe-Korea1-*<j-cid-auto-adobe-korea1.lua&UniKS-UTF32-*&Adobe-Korea1-UCS2\\ +Adobe-GB1-*<j-cid-auto-adobe-gb1.lua&UniGB-UTF32-*&Adobe-GB1-UCS2\\ +Adobe-CNS1-*<j-cid-auto-adobe-cns1.lua&UniCNS-UTF32-*&Adobe-CNS1-UCS2\\ \bottomrule \end{tabular} \end{table} @@ -9095,7 +9204,7 @@ direction whatsitはあくまでも組方向処理のための補助的なノー \[ \xymatrix{ {}\Node{glyph}{`平'}\ar[r]&{}\Node{glyph}{`成'}\ar[r]& - {}\HNode{hlist}{10.00003}{3.02779}{0.0}\ar[r]\ar[d]^{\text{中身}}&{}\Node{glyph}{`年'}\\ + {}\HNode{hbox}{10.00003}{3.02779}{0.0}\ar[r]\ar[d]^{\text{中身}}&{}\Node{glyph}{`年'}\\ &&{}\Node{whatsit}{\cs{tate}}\ar[r]&{}\Node{glyph}{`2'}\ar[r]&{}\Node{glyph}{`6'} } \] @@ -9109,10 +9218,10 @@ direction whatsitはあくまでも組方向処理のための補助的なノー &{}\textcolor{blue}{\Node{penalty}{0}} \ar`r[d] `[l] `[ddll] `[dl] [dl] \\ - &&{}\textcolor{red}{\HNode{hlist}{3.02779}{10.00003}{0.0}}\ar[r]\ar[d]^{\text{中身}} + &&{}\textcolor{red}{\HNode{\textit{dir\_box} (\cs{yoko})}{3.02779}{10.00003}{0.0}}\ar[r]\ar[d]^{\text{中身}} &{}\textcolor{blue}{\Node{penalty}{0}}\ar[r] &{}\Node{glyph}{`年'}\\ - &&{}\HNode{\textit{dir\_box} (\cs{yoko})}{10.00003}{3.02779}{0.0}\ar[d]^{\text{中身}}\\ + &&{}\HNode{hbox}{10.00003}{3.02779}{0.0}\ar[d]^{\text{中身}}\\ &&{}\Node{whatsit}{\cs{tate}}\ar[r]&{}\Node{glyph}{`2'}\ar[r]&{}\Node{glyph}{`6'} } \] @@ -9226,7 +9335,7 @@ direction~whatsit内部のノードリストに,\textit{dir\_box}として格 {}\Node{whatsit}{\cs{dtou}}\ar[r]& {}\Node{glyph}{`a'}\ar[r]& {}\textcolor{red}{\HNode{\textit{dir\_box} (\cs{dtou})}{20.0}{9.0}{0.0}}\ar[d]_{\text{中身}}\\ - &&{}\HNode{hlist}{9.0}{5.0}{2.0}\ar[d]_{\text{中身}}\\ + &&{}\HNode{hbox}{9.0}{5.0}{2.0}\ar[d]_{\text{中身}}\\ &&{}\Node{whatsit}{\cs{yoko}}\ar[r]&{}\Node{rule}{} } \]