X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=doc%2Fluatexja.dtx;h=eb28f0944a47394439db8091fe37f4808762e0a5;hb=6be5ef46e64dee9f411b486bb8d6c470ca78b327;hp=935594869f187c7fbb3367e8fc31d88a1e1ad131;hpb=2388b858f1f2cb1c58cb2fcd79b165fb7f513183;p=luatex-ja%2Fluatexja.git diff --git a/doc/luatexja.dtx b/doc/luatexja.dtx index 9355948..eb28f09 100644 --- a/doc/luatexja.dtx +++ b/doc/luatexja.dtx @@ -1,22 +1,109 @@ -%#! lualatex -shell-escape manual.ins +%<*!showexpl> +%#! lualatex -shell-escape + +% \documentclass[a4paper,titlepage]{article} +% \documentclass[a4paper,titlepage]{ltjsarticle} +% \documentclass[a4paper,titlepage]{ltjsarticle} + +\makeatletter +\let\ltjpkglist\empty +\newif\if@real@append@list +\def\@append@newentry#1#2{{% + \@real@append@listtrue \def\@tempa{#2}% + \let\@pkglist\@append@newentry@pkglist#1% + \if@real@append@list + \let\@pkglist=\relax\xdef#1{#1\@pkglist{#2}}% + \fi}} +\def\@append@newentry@pkglist#1{% + \def\@tempb{#1}% + \ifx\@tempa\@tempb\@real@append@listfalse\fi} +\def\@addtofilelist#1{\@append@newentry\ltjpkglist{#1}} +\let\@listfiles\empty +\makeatother %<*en> -\documentclass[a4paper,titlepage]{article} \usepackage[margin=25mm,footskip=5mm]{geometry} +\usepackage{mathptmx} % %<*ja> -\documentclass[a4paper,titlepage]{ltjsarticle} -\usepackage[margin=25mm, footskip=5mm]{geometry} +\usepackage[textwidth=45\zw, lines=45, footskip=5mm]{geometry} \advance\leftmargini-1\zw\advance\leftmarginii-1\zw % +%<*zh> +\usepackage[margin=25mm, footskip=5mm]{geometry} +\advance\leftmargini-1\zw\advance\leftmarginii-1\zw +\def\postpartname{编} +\DeclareYokoKanjiEncoding{ZH}{}{} +\DeclareKanjiEncodingDefaults{}{} +\DeclareErrorKanjiFont{ZH}{song}{m}{n}{10} +\DeclareKanjiSubstitution{ZH}{song}{m}{n} +\newcommand\songdefault{song} +\newcommand\heidefault{hei} +\newcommand\minchodefault{mincho} +\renewcommand\kanjiencodingdefault{ZH} +\renewcommand\kanjifamilydefault{\songdefault} +\renewcommand\kanjiseriesdefault{\mddefault} +\renewcommand\kanjishapedefault{\updefault} +\DeclareKanjiFamily{ZH}{song}{} +\DeclareFontShape{ZH}{song}{m}{n}{<->name:AdobeSongStd-Light:jfm=jis}{} +\DeclareFontShape{ZH}{song}{m}{it}{<->ssub*song/m/n}{} +\DeclareFontShape{ZH}{song}{bx}{n}{<->ssub*hei/m/n}{} +\DeclareKanjiFamily{ZH}{hei}{} +\DeclareFontShape{ZH}{hei}{m}{n}{<->name:SimHei:jfm=jis}{} +\DeclareFontShape{ZH}{hei}{bx}{n}{<->ssub*hei/m/n}{} +\DeclareKanjiFamily{ZH}{mincho}{} +\DeclareFontShape{ZH}{mincho}{m}{n}{<->psft:KozMinPr6N-Regular:cid=Adobe-Japan1-6;jfm=jis}{} +\fontencoding{ZH}\selectfont +\DeclareTextFontCommand{\textsong}{\songfamily} +\DeclareTextFontCommand{\texthei}{\heifamily} +\DeclareTextFontCommand{\textmincho}{\minchofamily} +\DeclareOldFontCommand{\song}{\normalfont\songfamily}{} +\DeclareOldFontCommand{\hei}{\normalfont\heifamily}{} +\DeclareOldFontCommand{\mincho}{\normalfont\minchofamily}{} +\DeclareSymbolFont{songti}{ZH}{song}{m}{n} +\jfam\symsongti +\SetSymbolFont{songti}{bold}{ZH}{hei}{m}{n} +\DeclareSymbolFontAlphabet{\mathsong}{songti} +\DeclareMathAlphabet{\mathhei}{ZH}{hei}{m}{n} +\makeatletter +\DeclareRobustCommand\songfamily{\not@math@alphabet\songfamily\mathsong\kanjifamily\songdefault\selectfont} +\DeclareRobustCommand\heifamily{\not@math@alphabet\heifamily\mathhei\kanjifamily\heidefault\selectfont} +\DeclareRobustCommand\minchofamily{\not@math@alphabet\minchofamily\mathhei\kanjifamily\minchodefault\selectfont} +\DeclareRobustCommand\rmfamily{\not@math@alphabet\rmfamily\mathrm\romanfamily\rmdefault\kanjifamily\songdefault\selectfont} +\DeclareRobustCommand\sffamily{\not@math@alphabet\sffamily\mathsf\romanfamily\sfdefault\kanjifamily\heidefault\selectfont} +\makeatother +% \usepackage{amsmath,amssymb,xcolor,pict2e,multienum,amsthm,float,makecell} -\usepackage{booktabs,listings,showexpl,multicol} +\usepackage{booktabs,listings,showexpl,multicol,metalogo} \usepackage{luatexja-otf} \usepackage{luatexja-fontspec} -\usepackage[unicode=true]{hyperref} +\usepackage{hyperref} +\hypersetup{% + unicode, + colorlinks, + allbordercolors=1 1 1, + allcolors=blue, +%<*en> + pdfauthor={The LuaTeX-ja project team}, + pdftitle={The LuaTeX-ja package} +% +%<*ja> + pdfauthor={LuaTeX-jaプロジェクトチーム}, + pdftitle={LuaTeX-jaパッケージ} +% +%<*zh> + pdfauthor={LuaTeX-ja项目团队}, + pdftitle={LuaTeX-ja宏包} +% +} \usepackage[all]{xy} -\SelectTips{cm}{} +% \SelectTips{cm}{} +%<*en> +\setmainfont[Ligatures=TeX]{TeX Gyre Termes} +\setsansfont[Ligatures=TeX]{TeX Gyre Heros} +\frenchspacing +% \def\labelenumii{(\arabic{enumii})} \DeclareRobustCommand\eTeX{\ensuremath{\varepsilon}-\kern-.125em\TeX} @@ -31,6 +118,7 @@ \theoremstyle{definition} %\newtheorem{defn}{Definition} %\newtheorem{defn}{定義} +%\newtheorem{defn}{定义} \newenvironment{cslist}{% \leftskip2em\parindent=0pt\def\makelabel##1{{\tt\char92##1}} @@ -65,9 +153,12 @@ \title{\LuaTeX-jaパッケージ} \author{\LuaTeX-jaプロジェクトチーム} % - +%<*zh> +\title{\LuaTeX-ja宏包} +\author{\LuaTeX-ja项目团队} +% \lstset{ - basicstyle=\ttfamily\small, pos=o, breaklines=true, + basicstyle=\ttfamily\small, pos=r, breaklines=true, numbers=none, rframe={}, basewidth=0.5em } @@ -91,13 +182,19 @@ grammatical (and contextual) errors.} Also, several parts %<*ja> \textbf{\large 本ドキュメントはまだまだ未完成です.} % +%<*zh> +\textbf{\large 本文档尚未完成。} +% \clearpage %\part{User's manual} %\part{ユーザーズマニュアル} +%\part{用户手册} %\section{Introduction} %\section{はじめに} +%\section{引言} + %<*en> The \LuaTeX-ja package is a macro package for typesetting high-quality @@ -107,9 +204,14 @@ Japanese documents when using \LuaTeX. \LuaTeX-jaパッケージは,次世代標準\TeX である\LuaTeX の上で,\pTeX と同等 /それ以上の品質の日本語組版を実現させようとするマクロパッケージである. % +%<*zh> +\LuaTeX-ja宏包是应用于下一代标准\TeX 引擎亦即\LuaTeX 引擎上的高质量日语文档排版宏包。 +% %\subsection{Backgrounds} %\subsection{背景} +%\section{背景} + %<*en> Traditionally, ASCII \pTeX, an extension of \TeX, and its derivatives @@ -126,10 +228,17 @@ ASCII \pTeX やそれの拡張物が用いられることが一般的であっ のエンジン拡張であり,(少々仕様上不便な点はあるものの)商業印刷の分野に も用いられるほどの高品質な日本語組版を可能としている.だが,それは弱点に もなってしまった:\pTeX という(組版的に)満足なものがあったため,海外で -行われている数々の\TeX の拡張──例えば\eTeX や\pdfTeX ──や,TrueType, +行われている数々の\TeX の拡張――例えば\eTeX や\pdfTeX ――や,TrueType, OpenType, Unicodeといった計算機で日本語を扱う際の状況の変化に追従すること を怠ってしまったのだ. % +%<*zh> +一般情况下,\TeX 下的日语文档输出,是ASCII \pTeX(\TeX 的一个扩展)及其衍生 +软件来完成的。\pTeX 作为\TeX 的一个扩展引擎,在生成高质量的日语文档时,规避 +了繁杂的宏编写。但是在和同时期的引擎相比之下,\pTeX 的处境未免有些尴尬:\pTeX +已经远远落后于\eTeX 和pdf\TeX,此外也没有跟上计算机上对日文处理的演进(比如, +UTF-8编码,TrueType字体,OpenType字体)。 +% %<*en> Recently extensions of \pTeX, namely \upTeX\ (Unicode-implementation @@ -142,10 +251,14 @@ 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は未だにあるのが現状であ る. % +%<*zh> +最近开发的\pTeX 扩展,即\upTeX(Unicode下的\pTeX 实现)和\epTeX(\pTeX 和 +\eTeX 的融合版本),虽然在部分情况上弥补了上述的差距,但是差距依然存在。 +% %<*en> However, the appearance of \LuaTeX\ changed the whole situation. With @@ -163,9 +276,15 @@ scripts for appropriate callbacks. \TeX マクロによって日本語組版を\LuaTeX の上で実現させようという目的で開発 が始まったパッケージである. % +%<*zh> +不过,\LuaTeX 的出现改变了整个状况。用户可以通过使用Lua语言的“callback”来 +调整\LuaTeX 的内部处理机制。所以,没有必要去通过修改引擎的源代码来支持日文 +排版,相反,我们需要做的仅仅是编写其当处理callback的Lua脚本。 +% %\subsection{Major Changes from \pTeX} %\subsection{\pTeX からの主な変更点} +%\subsection{与\pTeX 的差异所在} %<*en> The \LuaTeX-ja package is under much influence of \pTeX\ engine. The initial @@ -177,10 +296,14 @@ specifications/behaviors of \pTeX\ were not adopted}. \LuaTeX-jaは,\pTeX に多大な影響を受けている.初期の開発目標は,\pTeX の機 能をLuaコードにより実装することであった.しかし,開発が進むにつれ,\pTeX の完全な移植は不可能であり,また\pTeX における実装がいささか不可解になっ -ているような状況も発見された.そのため,\textbf{\LuaTeX-ja は,もはや +ているような状況も発見された.そのため,\textbf{\LuaTeX-jaは,もはや \pTeX の完全な移植は目標とはしない.\pTeX における不自然な仕様・挙動があ れば,そこは積極的に改める.} % +%<*zh> +\LuaTeX-ja宏包在设计上,受\pTeX 影响很大。最初开发的主要议题是实现\pTeX 的特性。 +不过,{\bf\LuaTeX-ja不是简简单单的移植\pTeX,很多不自然的特征和现象都被移出了。} +% %<*en> The followings are major changes from \pTeX: @@ -188,6 +311,9 @@ The followings are major changes from \pTeX: %<*ja> 以下は \pTeX からの主な変更点である. % +%<*zh> +下面列举出了一些和\pTeX 的差异: +% \begin{itemize} %<*en> @@ -196,9 +322,16 @@ The followings are major changes from \pTeX: `variation'. % %<*ja> -\item 和文フォントは(小塚明朝,IPA明朝などの)実際のフォント,和文フォントメトリック(JFM と呼ぶ),そ - して `variation' と呼ばれる文字列の組である. +\item 和文フォントは(小塚明朝,IPA明朝などの)実際のフォント,和文フォン + トメトリック(JFMと呼ぶ\footnote{混乱を防ぐため,p\TeX の意味での + JFM (\texttt{min10.tfm}) などは本ドキュメントでは\textbf{和文用 + TFM}とよぶことにする.}),そして`variation'と呼ばれる文字列の組で + ある. % +%<*zh> +\item 一个日文字体是由三部分构成的元组:实际的字体(如小塚明 + 朝,IPA明朝),日文字体测度(\textbf{JFM})和变体字串。 +% %<*en> \item In \pTeX, a line break after Japanese character is ignored (and @@ -212,6 +345,10 @@ The followings are major changes from \pTeX: 直後の改行は無視される(スペースが入らない)ようになっていた.しかし, \LuaTeX-ja では \LuaTeX の仕様のためにこの機能は完全には実装されていない. % +%<*zh> +\item \pTeX 中,日文字符之后的断行并不允许(也不产生空格),其他在源码中的断行 + 是可以随处允许的。不过,因为\LuaTeX 的特殊关系,\LuaTeX-ja并没有这个功能。 +% %<*en> \item The insertion process of glues/kerns between two Japanese @@ -221,8 +358,11 @@ The followings are major changes from \pTeX: % %<*ja> \item 2つの和文文字の間,和文文字と欧文文字の間に入るグルー/カーン - (\textbf{JAglue} と呼ぶ)の挿入処理が0から書き直されている. + (\textbf{JAglue}と呼ぶ)の挿入処理が0から書き直されている. % +%<*zh> +\item 插在日文字符和其他字符言之间的胶/出格(我们将此称为\textbf{JAglue})是重新实现的。 +% \begin{itemize} %<*en> @@ -232,9 +372,13 @@ The followings are major changes from \pTeX: % %<*ja> \item \LuaTeX の内部での文字の扱いが「ノードベース」になっているように(例えば, - \verb+of{}fice+ で合字は抑制されない),\textbf{JAglue} の挿入処理も + \verb+of{}fice+ で合字は抑制されない),\textbf{JAglue}の挿入処理も 「ノードベース」である. % +%<*zh> +\item 在\LuaTeX 中,内部的字符处理是“基于node的”(例如:\verb!of{}fice!不会避免合字), + \textbf{JAglue}的插入处理,现在也是“基于node的”。 +% %<*en> \item Furthermore, nodes between two characters which have no effects in @@ -245,6 +389,10 @@ The followings are major changes from \pTeX: \item さらに,2つの文字の間にある行末では効果を持たないノード(例えば \verb+\special+ ノード)や, イタリック補正に伴い挿入されるカーンは挿入処理中では無視される. % +%<*zh> +\item 此外,两个字符之间的node在断行时不起作用的(例如,\verb!\special!node),还有 + 意大利体校正带来的出格在插入处理中也是被忽略的。 +% %<*en> \item \emph{Caution: due to above two points, many methods which did for the @@ -252,9 +400,13 @@ The followings are major changes from \pTeX: effective anymore.} In concrete terms, the following two methods are not effective anymore: % %<*ja> -\item \textbf{注意:上の2つの変更により,従来 \textbf{JAglue} の挿入処理を分断するのに +\item \textbf{注意:上の2つの変更により,従来\textbf{JAglue}の挿入処理を分断するのに 使われていたいくつかの方法は用いることができない.具体的には,次の方法はもはや無効である:} % +%<*zh> +\item \textbf{警告:鉴于以上两点,在\pTeX 中分割\textbf{JAglue}处理的多种方法不再生效。} + 明确地说,下列两种方法不再生效: +% \begin{verbatim}   ちょ{}っと  ちょ\/っと \end{verbatim} @@ -264,6 +416,9 @@ The followings are major changes from \pTeX: %<*ja> もし同じことをやりたければ,空の水平ボックスを間に挟めばよい: % +%<*zh> + 如果想得到此种结果,请使用空盒子替代: +% \begin{verbatim}   ちょ\hbox{}っと \end{verbatim} @@ -277,15 +432,27 @@ The followings are major changes from \pTeX: \item 処理中では,2つの和文フォントは,「実際の」フォントのみが異なる場合に同一視 される. % +%<*zh> +\item 处理过程中,两个在“真实”字体上具区别的日文字体可以被识别出来。 +% \end{itemize} +%<*ja> +\item \LuaTeX-jaでは,\pTeX と同様に漢字・仮名を制御綴内に用いることができ, +\verb+\西暦+ などが正しく動作するようにしている. +但し,制御綴中に使える和文文字が\pTeX・\upTeX と全く同じではないことに注意すること. +% + %<*en> \item At the present, vertical typesetting (\emph{tategaki}), is not supported in \LuaTeX-ja. % %<*ja> -\item 現時点では,縦書きは \LuaTeX-ja ではサポートされていない. +\item 現時点では,縦書きは\LuaTeX-jaではサポートされていない. % +%<*zh> +\item 当下,\LuaTeX-ja并不支持直行排版。 +% \end{itemize} @@ -293,11 +460,16 @@ The followings are major changes from \pTeX: For detailed information, see Part~\ref{part-imp}. % %<*ja> -詳細については第 \ref{part-imp} 部を参照. +詳細については第\ref{part-imp}部を参照. % +%<*zh> +详细的描述,请参见第\ref{part-imp}编。 +% %\subsection{Notations} %\subsection{用語と記法} +%\subsection{一些约定} + %<*en> In this document, the following terms and notations are used: @@ -305,6 +477,9 @@ In this document, the following terms and notations are used: %<*ja> 本ドキュメントでは,以下の用語と記法を用いる: % +%<*zh> +在本文档中,有下面一些约定: +% \begin{itemize} %<*en> @@ -313,6 +488,9 @@ In this document, the following terms and notations are used: %<*ja> \item 文字は2種類に分けられる: % +%<*zh> +\item 字符被分为两种类型: +% \begin{itemize} %<*en> \item \textbf{JAchar}: standing for Japanese characters such as @@ -323,6 +501,9 @@ In this document, the following terms and notations are used: \item \textbf{JAchar}: ひらがな,カタカナ,漢字,和文用の約物といった和文文字の ことを指す. % +%<*zh> +\item \textbf{JAchar}:表示日文字符,如平假名,片假名,汉字,日文标点。 +% %<*en> \item \textbf{ALchar}: standing for all other characters like alphabets. @@ -330,15 +511,21 @@ In this document, the following terms and notations are used: %<*ja> \item \textbf{ALchar}: アルファベットを始めとする,その他全ての文字を指す. % +%<*zh> +\item \textbf{ALchar}:代表其他字母字符。 +% \end{itemize} %<*en> We say `alphabetic fonts' for fonts used in \textbf{ALchar}, and `Japanese fonts' for fonts used in \textbf{JAchar}. % %<*ja> -そして,\textbf{ALchar} の出力に用いられるフォントを「欧文フォント」と呼び, -\textbf{JAchar} の出力に用いられるフォントを「和文フォント」と呼ぶ. +そして,\textbf{ALchar}の出力に用いられるフォントを「欧文フォント」と呼び, +\textbf{JAchar}の出力に用いられるフォントを「和文フォント」と呼ぶ. % +%<*zh> +我们将用于\textbf{ALchar}的字体称为“字母字体”,用于\textbf{JAchar}的字体称为“日文字体”。 +% %<*en> \item A word in a sans-serif font (like \Param{prebreakpenalty}) @@ -350,15 +537,22 @@ We say `alphabetic fonts' for fonts used in \textbf{ALchar}, and `Japanese fonts パラメータを表し,これらは \verb+\ltjsetparameter+ コマンドのキーとして 用いられる. % +%<*zh> +\item 用无衬线字体表示的词(如:\Param{prebreakpenalty})表示 + 日文排版中的内部便利iang,并用做\verb!\ltjsetparameter!命令一个键。 +% %<*en> \item A word in typewriter font with underline (like \Pkg{fontspec}) means a package or a class of \LaTeX. % %<*ja> -\item 下線付きのタイプライタ体で書かれた語(例:\Pkg{fontspec})は \LaTeX の +\item 下線付きのタイプライタ体で書かれた語(例:\Pkg{fontspec})は\LaTeX の パッケージやクラスを表す. % +%<*zh> +\item 用下划线表示的词(如:\Pkg{fontspec})表示\LaTeX 的宏包或者文档类。 +% %<*en> \item The word `primitive' is used not only for primitives in \LuaTeX, @@ -369,6 +563,9 @@ We say `alphabetic fonts' for fonts used in \textbf{ALchar}, and `Japanese fonts \item 「プリミティブ」という語を,\LuaTeX のプリミティブだけではなく \LuaTeX-ja のコアモジュールで定義されたコントロールシーケンスに対しても用いる. % +%<*zh> +\item “primitive”,该词在本文档中不仅表示\LuaTeX 的基本控制命令,也包括\LuaTeX-ja的相关的基本控制命令 +% %<*en> \item In this document, natural numbers start from~0. @@ -376,40 +573,60 @@ We say `alphabetic fonts' for fonts used in \textbf{ALchar}, and `Japanese fonts %<*ja> \item 本ドキュメントでは,自然数は0から始まる. % +%<*zh> +\item 所有的自然数从0开始 +% \end{itemize} %\subsection{About the project} %\subsection{プロジェクトについて} +%\subsection{关于本项目} %<*en> \paragraph{Project Wiki} Project Wiki is under construction. % %<*ja> -\paragraph{プロジェクト Wiki} プロジェクト Wiki は構築中である. +\paragraph{プロジェクトWiki} プロジェクトWikiは構築中である. % +%<*zh> +\paragraph{项目wiki} 本项目wiki正在编写中。 +% %<*en> \begin{itemize} \item \url{http://sourceforge.jp/projects/luatex-ja/wiki/FrontPage%28en%29} (English) \item \url{http://sourceforge.jp/projects/luatex-ja/wiki/FrontPage} (Japanese) +\item \url{http://sourceforge.jp/projects/luatex-ja/wiki/FrontPage%28zh%29} (Chinese) \end{itemize} % %<*ja> \begin{itemize} \item \url{http://sourceforge.jp/projects/luatex-ja/wiki/FrontPage}(日本語) \item \url{http://sourceforge.jp/projects/luatex-ja/wiki/FrontPage%28en%29}(英語) +\item \url{http://sourceforge.jp/projects/luatex-ja/wiki/FrontPage%28zh%29}(中国語) \end{itemize} % - +%<*zh> +\begin{itemize} +\item \url{http://sourceforge.jp/projects/luatex-ja/wiki/FrontPage}(日语) +\item \url{http://sourceforge.jp/projects/luatex-ja/wiki/FrontPage%28en%29}(英语) +\item \url{http://sourceforge.jp/projects/luatex-ja/wiki/FrontPage%28zh%29}(汉语) +\end{itemize} +% %<*en> This project is hosted by SourceForge.JP. % %<*ja> -本プロジェクトは SourceForge.JP のサービスを用いて運営されている. +本プロジェクトはSourceForge.JPのサービスを用いて運営されている. % +%<*zh> +本项目由SourceForge.JP托管。 +% %\paragraph{Members}\ %\paragraph{開発メンバー}\ +%\paragraph{开发者}\ + %<*en> \begin{multienumerate} \def\labelenumi{$\bullet$} @@ -426,22 +643,34 @@ This project is hosted by SourceForge.JP. \mitemxxx{本田 知亮}{齋藤 修三郎}{馬 起園} \end{multienumerate} % - +%<*zh> +\begin{multienumerate} +\def\labelenumi{$\bullet$} +\mitemxxx{北川 弘典}{前田 一贵}{八登 崇之} +\mitemxxx{黒木 裕介}{阿部 纪行}{山本 宗宏} +\mitemxxx{本田 知亮}{斋藤 修三郎}{马 起园} +\end{multienumerate} +% % \paragraph{Acknowledgments} -- 挿入するならここ \clearpage %\section{Getting Started} %\section{使い方} +%\section{使用} %\subsection{Installation} %\subsection{インストール} +%\subsection{安装} %<*en> To install the \LuaTeX-ja\ package, you will need: % %<*ja> -\LuaTeX-ja パッケージのインストールには,次のものが必要である. +\LuaTeX-jaパッケージのインストールには,次のものが必要である. % +%<*zh> +安装\LuaTeX-ja之前,需要如下: +% \begin{itemize} %<*en> \item \LuaTeX\ (version 0.65.0-beta or later) and its supporting packages.\\ @@ -449,30 +678,36 @@ If you are using \TeX~Live~2011 or current W32\TeX, you don't have to worry. % %<*ja> \item \LuaTeX(バージョン 0.65.0-beta 以降)とその支援パッケージ. - \TeX~Live~2011 や W32\TeX の最新版ならば問題ない. + \TeX~Live~2011やW32\TeX の最新版ならば問題ない. % +%<*zh> +\item \LuaTeX(版本号为大于0.65)和相关支持宏包。\\ +如果用户使用的是\TeX Live2011以及最新版本的W32\TeX,可不考虑此项。 +% %<*en> \item The source archive of \LuaTeX-ja, of course\texttt{:)} % %<*ja> -\item \LuaTeX-ja のソースアーカイブ(もちろん \texttt{:)}). -% -%<*en> -\item The \Pkg{filehook} package. -% -%<*ja> -\item \Pkg{filehook} パッケージ. +\item \LuaTeX-jaのソースアーカイブ(もちろん\texttt{:)}). % +%<*zh> +\item \LuaTeX-ja的源码(当然喽\texttt{:)})。 +% %<*en> \item The \Pkg{xunicode} package, which version is \emph{just v0.981 (2011/09/09)}.\\ If you have the \Pkg{fontspec} package, this \Pkg{xunicode} package must be exist. But be careful about the version; other versions may not work correctly with \LuaTeX-ja. % %<*ja> -\item \Pkg{xunicode} パッケージ (\textbf{2011/09/09,~v0.981}).\\ -\Pkg{fontspec} パッケージが導入されていればこのパッケージも導入されているはずであるが, -この v0.981 以外のバージョンでは\LuaTeX-ja 上で正しく動作しない危険性がある. +\item \Pkg{xunicode}パッケージ(\textbf{2011/09/09,~v0.981}).\\ +\Pkg{fontspec}パッケージが導入されていればこのパッケージも導入されているはずであるが, +このv0.981以外のバージョンでは\LuaTeX-ja上で正しく動作しない危険性がある. % +%<*zh> +\Pkg{xunicode}宏包,当前版本必须为\textit{v0.981(2011/09/09)}。\\ +如果你使用\Pkg{fontspec}宏包,\Pkg{xunicode}就必须存在。但是请注意该包的 +版本,其他版本可能不会正常工作。 +% \end{itemize} %<*en> @@ -481,74 +716,136 @@ The installation methods are as follows: %<*ja> インストール方法は以下のようになる: % +%<*zh> +安装方法如下: +% \begin{enumerate} %<*en> -\item Download the source archive. +\item Download the source archive, by one of the following method. + At the present, \LuaTeX-ja has no \emph{stable} release. - At the present, \LuaTeX-ja has no official release, so you have to retrieve - the archive from the repository. - You can retrieve the Git repository via +\begin{itemize} +\item Copy the Git repository: +\begin{verbatim} +$ git clone git://git.sourceforge.jp/gitroot/luatex-ja/luatexja.git +\end{verbatim} +\item Download the \texttt{tar.gz} archive of HEAD in the \texttt{master} branch from +\begin{flushleft} +\url{http://git.sourceforge.jp/view?p=luatex-ja/luatexja.git;a=snapshot;h=HEAD;sf=tgz}. +\end{flushleft} +\item Now \LuaTeX-ja is available from the following archive and distributions: + \begin{itemize} + \item CTAN (in the \texttt{macros/luatex/generic/luatexja} directory) + \item MiK\TeX\ (in \texttt{luatexja.tar.lzma}) + \item \TeX\ Live (in \texttt{texmf-dist/tex/luatex/luatexja}) + \item W32\TeX\ (in \texttt{luatexja.tar.xz}) + \end{itemize} + These are based on the \texttt{master} branch. +\end{itemize} + +Note that the \texttt{master} branch, and hence the archive in CTAN, are not updated frequently; +the forefront of development is not the \texttt{master} branch. % %<*ja> -\item ソースアーカイブをダウンロードする. +\item ソースアーカイブを以下のいずれかの方法で取得する.現在公開されているのはあくまでも + 開発版であって,安定版でないことに注意. - 現時点では,\LuaTeX-ja の公式リリースはまだない.そのため,Git リポジトリを - 次のようにすることで取得する必要がある: -% +\begin{itemize} +\item Gitリポジトリの内容をコピーする: \begin{verbatim} $ git clone git://git.sourceforge.jp/gitroot/luatex-ja/luatexja.git \end{verbatim} -%<*en> - or download the archive of HEAD in the \texttt{master} branch from -% -%<*ja> - もしくは,\texttt{master} ブランチの HEAD のアーカイブを以下からダウンロードしてもよい: -% +\item \texttt{master}ブランチのスナップショット(\texttt{tar.gz}形式)をダウンロードする. \begin{flushleft} \url{http://git.sourceforge.jp/view?p=luatex-ja/luatexja.git;a=snapshot;h=HEAD;sf=tgz}. \end{flushleft} +\item 今や,\LuaTeX-jaは以下のアーカイブ,およびディストリビューションにも収録されている: + \begin{itemize} + \item CTAN (\texttt{macros/luatex/generic/luatexja}) + \item MiK\TeX\ (\texttt{luatexja.tar.lzma}) + \item \TeX\ Live (\texttt{texmf-dist/tex/luatex/luatexja}) + \item W32\TeX\ (\texttt{luatexja.tar.xz}) + \end{itemize} + これらは\texttt{master}ブランチの内容を元にしている. +\end{itemize} -%<*en> -Note that the forefront of development may not be the \texttt{master} branch. -% -%<*ja> -\texttt{master} ブランチはたまにしか更新されない. -最新の開発中のコードは \texttt{master} ブランチには含まれていない場合がかなり多いので注意. +\texttt{master}ブランチ(従って,CTAN内のアーカイブも)はたまにしか更新されないことに注意. +主な開発は\texttt{master}の外で行われ,比較的まとまってきたらそれを\texttt{master}に +反映させることにしている. % +%<*zh> +\item 按照如下方法下载源码归档。现在,\LuaTeX-ja没有稳定版本。 + +\begin{itemize} +\item 复制Git仓库: +\begin{verbatim} +$ git clone git://git.sourceforge.jp/gitroot/luatex-ja/luatexja.git +\end{verbatim} +\item 下载\texttt{master} HEAD版本的\texttt{tar.gz}归档: +\begin{flushleft} +\url{http://git.sourceforge.jp/view?p=luatex-ja/luatexja.git;a=snapshot;h=HEAD;sf=tgz}. +\end{flushleft} +\item 现在\LuaTeX-ja可以在下列仓库和发行版中获取:: + \begin{itemize} + \item CTAN ( \texttt{macros/luatex/generic/luatexja}) + \item MiK\TeX\ (\texttt{luatexja.tar.lzma}) + \item \TeX\ Live (\texttt{texmf-dist/tex/luatex/luatexja}) + \item W32\TeX\ (\texttt{luatexja.tar.xz}) + \end{itemize} + 这些版本都基于\texttt{master}分支。 +\end{itemize} + +注意\texttt{master}分支和CTAN仓库中的版本,升级并不频繁。 +前段开发并未在\texttt{master}分支。 +% %<*en> \item Extract the archive. You will see \texttt{src/} and several other sub-directories. +But only the contents in \texttt{src/} are needed to work \LuaTeX-ja. % %<*ja> -\item 後者の方法でアーカイブを取得したならば,それを展開する. - \texttt{src/} をはじめとしたいくつかのディレクトリができるが, - 動作には \texttt{src/} 以下の内容だけで十分. +\item 「Gitリポジトリをコピー」以外の方法でアーカイブを取得したならば,それを展開する. + \texttt{src/}をはじめとしたいくつかのディレクトリができるが, + 動作には\texttt{src/}以下の内容だけで十分. % +%<*zh> +\item 解压归档。你会看到\texttt{src/}和其他相关文件夹。 +但是只有\texttt{src/}文件夹下的相关文件是\LuaTeX-ja运行所必须的。 +% %<*en> -\item Copy all the contents of \texttt{src/} (except \texttt{src/no\_runtime/}) into one of your \texttt{TEXMF} tree.\\ - \texttt{TEXMF/tex/luatex/luatexja/} is an example location. - Files in \texttt{src/no\_runtime/} are not required for the regular use, - so you may simply remove \texttt{src/no\_runtime/}. +\item Copy all the contents of \texttt{src/} into one of your \texttt{TEXMF} tree. + \texttt{TEXMF/tex/luatex/luatexja/} is an example location. + If you cloned entire Git repository, making a symbolic link of \texttt{src/} + instead copying is also good. % %<*ja> -\item \texttt{src/} の中身で,(\texttt{src/no\_runtime/}以外の)全てを自分の \texttt{TEXMF} ツリーにコピーする.\\ - 場所の例としては,例えば \texttt{TEXMF/tex/luatex/luatexja/} がある. - \texttt{src/no\_runtime/} 中のファイルは通常の使用には必要ないので,単に削除して構わない. - シンボリックリンクが利用できる環境で,かつレポジトリを直接取得したのであれば,コピーではなく - リンクを貼るのが適切だろう. +\item \texttt{src/}の中身を自分の\texttt{TEXMF}ツリーにコピーする. + 場所の例としては,例えば\texttt{TEXMF/tex/luatex/luatexja/}がある. + シンボリックリンクが利用できる環境で,かつリポジトリを直接取得したのであれば, + (更新を容易にするために)コピーではなくリンクを貼ることを勧める. % +%<*zh> +\item 复制\texttt{src/}文件夹下内容至\texttt{TEXMF}数下。 +\texttt{TEXMF/tex/luatex/luatexja/}为例。 +如果你复制了整个Git仓库,为\texttt{src/}制作软链接来替代复制也是可以的。 +% %<*en> \item If \texttt{mktexlsr} is needed to update the file name database, make it so. % %<*ja> -\item 必要があれば,\texttt{mktexlsr} を実行する. +\item 必要があれば,\texttt{mktexlsr}を実行する. % +%<*zh> +\item 如有必要,执行\texttt{mktexlsr}。 +% \end{enumerate} %\subsection{Cautions} %\subsection{注意点} +%\subsection{注意} + \begin{itemize} %<*en> @@ -556,21 +853,28 @@ Note that the forefront of development may not be the \texttt{master} branch. encodings, such as EUC-JP or Shift-JIS, are not supported. % %<*ja> -\item 原稿のソースファイルの文字コードは UTF-8 固定である. - 従来日本語の文字コードとして用いられてきた EUC-JP や Shift-JIS は使用できない. +\item 原稿のソースファイルの文字コードはUTF-8固定である. + 従来日本語の文字コードとして用いられてきたEUC-JPやShift-JISは使用できない. % +%<*zh> +\item 源文档编码必须是UTF-8。其他的编码,如EUC-JP和Shift-JIS都不被支持。 +% \end{itemize} %\subsection{Using in plain \TeX} %\subsection{plain \TeX で使う} +%\subsection{plain \TeX 下使用} \label{ssec-plain} %<*en> To use \LuaTeX-ja in plain \TeX, simply put the following at the beginning of the document: % %<*ja> -\LuaTeX-ja を plain \TeX で使うためには,単に次の行をソースファイルの冒頭に追加すればよい: +\LuaTeX-jaを plain \TeX で使うためには,単に次の行をソースファイルの冒頭に追加すればよい: % +%<*zh> +在plain \TeX 下使用\LuaTeX-ja相当简易,在文档开头放置一行: +% \begin{verbatim} \input luatexja.sty \end{verbatim} @@ -578,8 +882,11 @@ To use \LuaTeX-ja in plain \TeX, simply put the following at the beginning of th This does minimal settings (like \texttt{ptex.tex}) for typesetting Japanese documents: % %<*ja> -これで(\texttt{ptex.tex} のように)日本語組版のための最低限の設定がなされる: +これで(\texttt{ptex.tex}のように)日本語組版のための最低限の設定がなされる: % +%<*zh> +这里做出了做小的日文文档排版设定(如\texttt{ptex.tex}): +% \begin{itemize} %<*en> @@ -606,18 +913,20 @@ This does minimal settings (like \texttt{ptex.tex}) for typesetting Japanese doc \end{tabular} \end{center} % +%<*zh> +\item 提前加载了六种日文字体,如下: +\begin{center} +\begin{tabular}{ccccc} +\toprule +\textbf{字体}&\textbf{字体名}&\bf `10\,pt'&\bf`7\,pt'&\bf`5\,pt'\\\midrule +明朝体&Ryumin-Light &\verb+\tenmin+&\verb+\sevenmin+&\verb+\fivemin+\\ +哥特体&GothicBBB-Medium&\verb+\tengt+ &\verb+\sevengt+ &\verb+\fivegt+\\ +\bottomrule +\end{tabular} +\end{center} +% \begin{itemize} %<*en> -\item The `Q(級)' is a unit used in Japanese phototypesetting, and - $1\,\textrm{Q}=0.25\,\textrm{mm}$. This length is stored in a - dimension \verb+\jQ+. -% -%<*ja> -\item `Q(級)' は日本の写植で用いられる単位で,$1\,\textrm{Q}=0.25\,\textrm{mm}$ - である.この長さは \verb+\jQ+ に保持されている. -% - -%<*en> \item It is widely accepted that the font `Ryumin-Light' and `GothicBBB-Medium' aren't embedded into PDF files, and PDF reader substitute them by some external Japanese fonts (\textit{e.g.}, @@ -625,12 +934,17 @@ This does minimal settings (like \texttt{ptex.tex}) for typesetting Japanese doc the default setting. % %<*ja> -\item `Ryumin-Light' と `GothicBBB-Medium' は PDF ファイルに埋め込まずに - 名前参照のみで用いることが広く受け入れられており,この場合 PDF リーダーが - 適切な外部フォントで代用する(例えば,Adobe Reader では Ryumin-Light は +\item `Ryumin-Light'と`GothicBBB-Medium'はPDFファイルに埋め込まずに + 名前参照のみで用いることが広く受け入れられており,この場合PDFリーダーが + 適切な外部フォントで代用する(例えば,Adobe ReaderではRyumin-Lightは 小塚明朝で代替される).そこで,これらを引き続きデフォルトのフォントと して採用する. % +%<*zh> +\item 广为接受的“Ryumin-Light”和“GothicBBB-Medium”字体不嵌入PDF文件, +而PDF阅读器则会使用外部日文字体替代(例如,在Adobe Reader中使用 +Kozuka Mincho字体替代Ryumin-Light)。我们使用默认设定。 +% %<*en> \item A character in an alphabetic font is generally smaller than a @@ -641,9 +955,13 @@ This does minimal settings (like \texttt{ptex.tex}) for typesetting Japanese doc %<*ja> \item 欧文フォントの文字は和文フォントの文字よりも,同じ文字サイズでも 一般に小さくデザインされている.そこで,標準ではこれらの和文フォントの実際のサイズは指定された値よりも - 小さくなるように設定されており,具体的には指定の 0.962216 倍にスケールされる. - この 0.962216 という数値も,p\TeX におけるスケーリングを踏襲した値である. + 小さくなるように設定されており,具体的には指定の0.962216倍にスケールされる. + この0.962216という数値も,\pTeX におけるスケーリングを踏襲した値である. % +%<*zh> +\item 一般情况下,相同大小日文字体比西文字体要大一下。所以实际的日文字体尺寸需哟小于西文字 +体,即使用一个缩放率:0.962216。 +% \end{itemize} %<*en> @@ -651,9 +969,12 @@ This does minimal settings (like \texttt{ptex.tex}) for typesetting Japanese doc an \textbf{ALchar} (the parameter \Param{xkanjiskip}) is set to % %<*ja> -\item \textbf{JAchar} と \textbf{ALchar} の間に入るグルー (\Param{xkanjiskip}) の +\item \textbf{JAchar}と\textbf{ALchar}の間に入るグルー(\Param{xkanjiskip})の 量は次のように設定されている: % +%<*zh> +\item 在\textbf{JAchar}和\textbf{ALchar}之间插入的胶(\textsf{xkanjiskip}参数)大小为: +% \[ (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}}. @@ -662,6 +983,7 @@ This does minimal settings (like \texttt{ptex.tex}) for typesetting Japanese doc %\subsection{Using in \LaTeX} %\subsection{\LaTeX で使う} +%\subsection{\LaTeX 下使用} \label{ssec-ltx} \paragraph{\LaTeXe} @@ -672,8 +994,11 @@ for Japanese, you only have to load \texttt{luatexja.sty}: % %<*ja> \LaTeXe を用いる場合も基本的には同じである.日本語組版のための最低限の環境を -設定するためには,\texttt{luatexja.sty} を読み込むだけでよい: +設定するためには,\texttt{luatexja.sty}を読み込むだけでよい: % +%<*zh> +在\LaTeXe 下使用基本相同。设定日文的最小环境,你只需加载\texttt{luatexja.sty}: +% \begin{verbatim} \usepackage{luatexja} \end{verbatim} @@ -682,9 +1007,12 @@ It also does minimal settings (counterparts in \pLaTeX\ are \texttt{ plfonts.dtx} and \texttt{pldefs.ltx}): % %<*ja> -これで \pLaTeX の \texttt{plfonts.dtx} と \texttt{pldefs.ltx} に相当する最低限の設定が +これで\pLaTeX の\texttt{plfonts.dtx}と\texttt{pldefs.ltx}に相当する最低限の設定が なされる: % +%<*zh> +这些做了最小的设定(作用相当于\pLaTeX 中的\texttt{plfonts.dtx}和\texttt{pldefs.ltx}): +% \begin{itemize} %<*en> @@ -692,10 +1020,14 @@ plfonts.dtx} and \texttt{pldefs.ltx}): When vertical typesetting is supported by \LuaTeX-ja in the future, \texttt{JT3} will be used for vertical fonts. % %<*ja> -\item \texttt{JY3} は和文フォント用のフォントエンコーディングである(横書き用).\\ -将来的に,\LuaTeX-ja で縦書きがサポートされる際には,\texttt{JT3} を縦書き用として +\item \texttt{JY3}は和文フォント用のフォントエンコーディングである(横書き用).\\ +将来的に,\LuaTeX-jaで縦書きがサポートされる際には,\texttt{JT3}を縦書き用として 用いる予定である. % +%<*zh> +\item \texttt{JY3}是日文字体编码(在水平方向)。\\ +在将来\LuaTeX-ja要支持直行排版的时候,\texttt{JT3}会用于直行字体。 +% %<*en> \item Two font families \texttt{mc} and \texttt{gt} are defined: @@ -713,7 +1045,7 @@ This is a convention in \pLaTeX. This is a trace that there were only 2~fonts (t and GothicBBB-Medium) in early years of DTP. % %<*ja> -\item 2つのフォントファミリ \texttt{mc} と \texttt{gt} が定義されている: +\item 2つのフォントファミリ\texttt{mc}と\texttt{gt}が定義されている: \begin{center} \begin{tabular}{ccccc} \toprule @@ -723,18 +1055,36 @@ and GothicBBB-Medium) in early years of DTP. \bottomrule \end{tabular} \end{center} -どちらのファミリにおいても,その bold シリーズはゴシック体の medium シリーズで -あることに注意.これは初期の DTP において和文フォントが2つ(それがちょうど\ -Ryumin-Light, GothicBBB-Medium だった)しか利用できなかった時の名残であり,\pLaTeX{} +どちらのファミリにおいても,そのboldシリーズはゴシック体のmediumシリーズで +あることに注意.これは初期のDTPにおいて和文フォントが2つ(それがちょうど\ +Ryumin-Light, GothicBBB-Mediumだった)しか利用できなかった時の名残であり,\pLaTeX{} での標準設定とも同じである. % +%<*zh> +\item 定义了两个字体族:\texttt{mc}!和\texttt{gt}:\\ +\begin{center} + \begin{tabular}{ccccc} + \hline + \textbf{字体}&\textbf{字体族}&\verb!\mdseries!&\verb!\bfseries!&缩放率\\ + \hline + \textit{mincho}&\verb!mc!&Ryumin-Light&GothicBBB-Medium&0.962216\\ + \textit{gothic}&\verb!gt!&GothicBBB-Medium&GothicBBB-Medium&0.962216\\ + \hline + \end{tabular} +\end{center} +注意的是两个字体族的粗体系列同为中等系列的\textbf{哥特}族。这\pLaTeX 中的规定。在近些年 +中的DTP实务中有仅使用2个字体的趋向(是为Ryumin-Light和GothicBBB-Medium)。 +% %<*en> \item Japanese characters in math mode are typeset by the font family \texttt{mc}. % %<*ja> -\item 数式モード中の和文文字は \texttt{mc} ファミリで出力される. +\item 数式モード中の和文文字は\texttt{mc}ファミリで出力される. % +%<*zh> +\item 在数学模式下,日文字符使用\verb!mc!字体族来排印。 +% \end{itemize} %<*en> @@ -747,41 +1097,22 @@ Okumura), namely, \Pkg{ltjclasses} and \Pkg{ltjsclasses}. % %<*ja> しかしながら,上記の設定は日本語の文書にとって十分とは言えない. -日本語文書を組版するためには,\texttt{article.cls}, \texttt{book.cls} といった +日本語文書を組版するためには,\texttt{article.cls}, \texttt{book.cls}といった 欧文用のクラスファイルではなく,和文用のクラスファイルを用いた方がよい. -現時点では,\Pkg{jclasses} (\pLaTeX の標準クラス)と \Pkg{jsclasses} +現時点では,\Pkg{jclasses}(\pLaTeX の標準クラス)と\Pkg{jsclasses} (奥村晴彦氏によるクラスファイル)に対応するものとして,\Pkg{ltjclasses}, -\Pkg{ltjsclasses} がそれぞれ用意されている. +\Pkg{ltjsclasses}がそれぞれ用意されている. % - -%<*en> -\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 -supports some of functions in \Pkg{otf} package. -If you want to use these functions, load \Pkg{luatexja-otf} package. -% -%<*ja> -\paragraph{\texttt{\char92 CID, \texttt{\char92 UTF}} と OTF パッケージのマクロ} -\pLaTeX では,JIS~X~0208 にない Adobe-Japan1-6 の文字を出力するために, -齋藤修三郎氏による \Pkg{otf} パッケージが用いられていた.このパッケージは -広く用いられているため,\LuaTeX-ja においても \Pkg{otf} パッケージの機能の -一部をサポートしている.これらの機能を用いるためには \Pkg{luatexja-otf} パッケージ -を読み込めばよい. -% - -\begin{LTXexample} -森\UTF{9DD7}外と内田百\UTF{9592}とが\UTF{9AD9}島屋に行く。 - -\CID{7652}飾区の\CID{13706}野家, -葛飾区の吉野家 -\end{LTXexample} -%lltjp-listings.sty要修正?:↑「森」の直後で改行. - +%<*zh> +不过,上述设定并不能满足排版基于日文的文档。为了排印基于日文的文 +档,你最好不要使用\texttt{article.cls},\texttt{book.cls}等文档类文件。 +现在,我们有相当于\Pkg{jclasses}(\pLaTeX 标准文档类)和\Pkg{jsclasses} +(奥村晴彦)的文档类,即\Pkg{ltjclasses}和\Pkg{ltjsclasses}。 +% %\subsection{Changing Fonts} %\subsection{フォントの変更} +%\subsection{字体更改} \label{ssub-chgfnt} %<*en> @@ -794,6 +1125,11 @@ sources like the following: \pTeX では,特に何もしないでも数式中に和文文字を記述することができた.そのため, 以下のようなソースが見られた: % +%<*zh> +\paragraph{注记:数学模式下的日文字符} +\pTeX 支持在数学模式下的日文字符,如以下源码: +% + \begin{LTXexample} $f_{高温}$~($f_{\text{high temperature}}$). \[ y=(x-1)^2+2\quad よって\quad y>0 \] @@ -805,33 +1141,45 @@ Japanese characters in math mode are allowed if and only if these are used as id In this point of view, % %<*ja> -\LuaTeX-ja プロジェクトでは,数式モード中での和文文字はそれらが識別子として用いられる +\LuaTeX-jaプロジェクトでは,数式モード中での和文文字はそれらが識別子として用いられる ときのみ許されると考えている. この観点から, % +%<*zh> +我们(\LuaTeX-ja项目成员)认为在数学模式下使用日文字符,只有在这些字符充当标识符时才是正确的。在这点下: +% \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. % %<*ja> -\item 上記数式のうち 1, 2 行目は正しくない.なぜならば `高温' が意味のあるラベルと - して,`よって' が接続詞として用いられているからである. +\item 上記数式のうち1, 2行目は正しくない.なぜならば`高温'が意味のあるラベルと + して,`よって'が接続詞として用いられているからである. % +%<*zh> +\item 第1行和第2行是不正确的,因为“高温”的作用为文本标签,“よって”用作为连词。 +% %<*en> \item However, the line~3 is correct, since `素' is used as an identifier. % %<*ja> -\item しかしながら,3行目は `素' が識別子として用いられているので正しい. +\item しかしながら,3行目は`素'が識別子として用いられているので正しい. % +%<*zh> +\item 不过,第3行是正确的,因为“素”是作为标识符的。 +% \end{itemize} %<*en> Hence, in our opinion, the above input should be corrected as: % %<*ja> -したがって,\LuaTeX-ja プロジェクトの意見としては,上記の入力は次のように直されるべき +したがって,\LuaTeX-jaプロジェクトの意見としては,上記の入力は次のように直されるべき である: % +%<*zh> +那么,根据我们的观点,上述输入应当校正为: +% \begin{LTXexample} $f_{\text{高温}}$~% ($f_{\text{high temperature}}$). @@ -846,10 +1194,14 @@ hence we don't describe how to change Japanese fonts in math mode in this chapter. For the method, please see Subsection~\ref{ssec-math}. % %<*ja> -また \LuaTeX-ja プロジェクトでは,和文文字が識別子として用いられることはほとんどない +また\LuaTeX-jaプロジェクトでは,和文文字が識別子として用いられることはほとんどない と考えており,したがってこの節では数式モード中の和文フォントを変更する方法については -記述しない.この方法については \ref{ssec-math} 節を参照のこと. +記述しない.この方法については\ref{ssec-math}節を参照のこと. % +%<*zh> +我们也认为使用日文字符作为标识符的情况极为少见,所以我们不在此章节描述如何在数学模式下改变日文字体。 +关于此方法,请参见\ref{ssec-math}。 +% %<*en> \paragraph{plain \TeX} @@ -859,8 +1211,12 @@ To change Japanese fonts in plain \TeX, you must use the primitive %<*ja> \paragraph{plain \TeX} plain \TeX で和文フォントを変更するためには,\verb+\jfont+ プリミティブを用いなけれ -ばならない.\ref{ssec-jfont} 節を参照. +ばならない.\ref{ssec-jfont}節を参照. % +%<*zh> +\paragraph{plain \TeX} +在plain \TeX 下改变日文字体,你必须使用基本语句\verb!\jfont!。请参见\ref{ssec-jfont}。 +% %<*en> \paragraph{NFSS2} @@ -868,9 +1224,13 @@ For \LaTeXe, \LuaTeX-ja adopted most of the font selection system of \pLaTeXe\ ( % %<*ja> \paragraph{NFSS2} -\LaTeXe については,\LuaTeX-ja ではフォント選択システムを \pLaTeXe\ (\texttt{plfonts.dtx}) +\LaTeXe については,\LuaTeX-jaではフォント選択システムを\pLaTeXe\ (\texttt{plfonts.dtx}) の大部分をそのまま採用している. % +%<*zh> +\paragraph{NFSS2} +对于\LaTeXe,\LuaTeX-ja采用了\pLaTeXe 中(即\texttt{plfonts.dtx})大部分字体选择系统。 +% \begin{itemize} %<*en> \item Two control sequences \verb+\mcdefault+ and \verb+\gtdefault+ are @@ -881,8 +1241,12 @@ For \LaTeXe, \LuaTeX-ja adopted most of the font selection system of \pLaTeXe\ ( %<*ja> \item 2つのコントロールシーケンス \verb+\mcdefault+ と \verb+\gtdefault+ がそれぞ れ明朝体とゴシック体のデフォルトのフォントファミリを指定するために用いられる. - 初期値:\verb+\mcdefault+ は \texttt{mc},\verb+\gtdefault+ は \texttt{gt}. + 初期値:\verb+\mcdefault+ は\texttt{mc},\verb+\gtdefault+ は\texttt{gt}. % +%<*zh> +\item \verb!\mcdefault!和\verb!\gtdefault!控制语句用来分别控制默认的\textit{mincho}和\textit{gothic}字体族。 + 默认值:\texttt{mc}用于\verb!\mcdefault!,\texttt{gt}用于\verb!\gtdefault!。 +% %<*en> \item Commands \verb+\fontfamily+, \verb+\fontseries+, \verb+\fontshape+ and \verb+\selectfont+ can be used to change @@ -892,6 +1256,9 @@ For \LaTeXe, \LuaTeX-ja adopted most of the font selection system of \pLaTeXe\ ( \item \verb+\fontfamily+, \verb+\fontseries+, \verb+\fontshape+, そして \verb+\selectfont+ が和文フォントの属性を変更するために使用できる. % +%<*zh> +\item 命令\verb!\fontfamily!,\verb!\fontseries!,\verb!\fontshape!个\verb!\selectfont!用来改变日文字体属性。 +% %<*en> \begin{center} @@ -927,6 +1294,23 @@ auto select&\verb+\fontencoding+&\verb+\fontfamily+&---&---&\verb+\usefont+\\ \end{tabular} \end{center} % +%<*zh> +\begin{center} +\begin{tabular}{cccccc} +\toprule +&\textbf{编码}&\textbf{族}&\textbf{系列}&\textbf{形状}&\textbf{选择}\\\midrule +西文字体 +&\verb+\romanencoding+&\verb+\romanfamily+&\verb+\romanseries+&\verb+\romanshape+ +&\verb+\useroman+\\ +日文字体 +&\verb+\kanjiencoding+&\verb+\kanjifamily+&\verb+\kanjiseries+&\verb+\kanjishape+ +&\verb+\usekanji+\\ +两者&---&--&\verb+\fontseries+&\verb+\fontshape+&---\\ +自动选择&\verb+\fontencoding+&\verb+\fontfamily+&---&---&\verb+\usefont+\\ +\bottomrule +\end{tabular} +\end{center} +% %<*en> \verb+\fontencoding{}+ changes the encoding of alphabetic fonts @@ -946,6 +1330,13 @@ auto select&\verb+\fontencoding+&\verb+\fontfamily+&---&---&\verb+\usefont+\\ 側,\textbf{あるいは両方}のフォントファミリを変更する.詳細は \ref{ssub-nfsspat}節を参照すること. % +%<*zh> + \verb!\fontencoding{}!依赖于参数以改变西文字体或者日文字体。 + 例如,\verb!\fontencoding{JY3}!改变当前日文字体至\texttt{JY3}, + \verb!\fontencoding{T1}!改变西文字体至\texttt{T1}。 + \verb!\fontfamily!也会改变日文字体或西文字体的族,抑或二者。 + 细节详见\ref{ssub-nfsspat}。 +% %<*en> \item For defining a Japanese font family, use @@ -958,6 +1349,10 @@ auto select&\verb+\fontencoding+&\verb+\fontfamily+&---&---&\verb+\usefont+\\ 代わりに \verb+\DeclareKanjiFamily+ を用いる.しかし,現在の 実装では \verb+\DeclareFontFamily+ を用いても問題は生じない. % +%<*zh> +\item 对于定义日文字体族,使用\verb!\DeclareKanjiFamily!代替\verb!\DeclareFontFamily!。 + 不过,在现在的实现中,使用\verb!\DeclareFontFamily!不会引起任何问题。 +% \end{itemize} \subsection{fontspec} @@ -969,19 +1364,26 @@ package automatically loads \Pkg{luatexja} and \Pkg{fontspec} package, if needed. % %<*ja> -\Pkg{fontspec} パッケージと同様の機能を和文フォントに対しても用いるためには, -\Pkg{luatexja-fontspec} パッケージをプリアンブルで読み込む必要がある.このパッケージ -は必要ならば自動で \Pkg{luatexja} パッケージと \Pkg{fontspec} パッケージを読み込む. +\Pkg{fontspec}パッケージと同様の機能を和文フォントに対しても用いるためには, +\Pkg{luatexja-fontspec}パッケージをプリアンブルで読み込む必要がある.このパッケージ +は必要ならば自動で\Pkg{luatexja}パッケージと\Pkg{fontspec}パッケージを読み込む. % +%<*zh> +为与\Pkg{fontspec}宏包共存,需要在导言区中使用\Pkg{luatexja-fontspec}宏包。 +这个附加宏包会自动加载\Pkg{luatexja}和\Pkg{fontspec}。 +% %<*en> In \Pkg{luatexja-fontspec} package, the following 7~commands are defined as counterparts of original commands in the \Pkg{fontspec} package: % %<*ja> -\Pkg{luatexja-fontspec} パッケージでは,以下の7つのコマンドを \Pkg{fontspec} +\Pkg{luatexja-fontspec}パッケージでは,以下の7つのコマンドを\Pkg{fontspec} パッケージの元のコマンドに対応するものとして定義している: % +%<*zh> +在\Pkg{luatexja-fontspec}中,定义了如下七条命令,这些命令和\Pkg{fontspec}的相关命令对比如下: +% %<*en> \begin{center} \begin{tabular}{ccccc} @@ -1016,6 +1418,19 @@ alphabetic fonts \end{tabular} \end{center} % +%<*zh> +\begin{center} +\begin{tabular}{ccccc} +\toprule +日文字体&\verb+\jfontspec+&\verb+\setmainjfont+&\verb+\setsansjfont+&\verb+\newjfontfamily+\\ +西文字体&\verb+\fontspec+&\verb+\setmainfont+&\verb+\setsansfont+&\verb+\newfontfamily+\\ +\midrule +日文字体&\verb+\newjfontface+&\verb+\defaultjfontfeatures+&\verb+\addjfontfeatures+&\\ +西文字体&\verb+\newfontface+&\verb+\defaultfontfeatures+&\verb+\addfontfeatures+&\\ +\bottomrule +\end{tabular} +\end{center} +% \begin{LTXexample} \fontspec[Numbers=OldStyle]{TeX Gyre Termes} @@ -1036,12 +1451,70 @@ these 7~commands, since this feature and \textbf{JAglue} will clash (see %<*ja> 和文フォントについては全ての和文文字のグリフがほぼ等幅であるのが普通であるため, \verb+\setmonojfont+ コマンドは存在しないことに注意.また,これらの和文用の7つのコマ -ンドでは Kerning feature はデフォルトでは off となっている.これはこの -feature が \textbf{JAglue} と衝突するためである(\ref{para-kern} 節を参照). +ンドではKerning featureはデフォルトではoffとなっている.これはこの +featureが\textbf{JAglue}と衝突するためである(\ref{para-kern}節を参照). +% +%<*zh> +请注意并没有\verb!\setmonofont!命令,因为流行的日文字体几乎全部是等宽的。 +另注意,出格特性在这7个命令中默认关闭,因为此特性会与\textbf{JAglue}冲突(参见\ref{para-kern})。 +% + +%<*en> +\subsection{\texttt{\char92 CID}, \texttt{\char92 UTF} and macros in \Pkg{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 +supports some of functions in \Pkg{otf} package. +If you want to use these functions, load \Pkg{luatexja-otf} package. +% +%<*ja> +\subsection{\texttt{\char92 CID}, \texttt{\char92 UTF}と\Pkg{otf}パッケージのマクロ} +\pLaTeX では,JIS~X~0208にないAdobe-Japan1-6の文字を出力するために, +齋藤修三郎氏による\Pkg{otf}パッケージが用いられていた.このパッケージは +広く用いられているため,\LuaTeX-jaにおいても\Pkg{otf}パッケージの機能の +一部をサポートしている.これらの機能を用いるためには\Pkg{luatexja-otf}パッケージ +を読み込めばよい. +% +%<*zh> +\subsection{\Pkg{otf}包中的\texttt{\char92CID},\texttt{\char92UTF}及其他宏} +\pLaTeX 下,\underline{\texttt{otf}}宏包(斋藤修三郎开发)是用来排印存在 +于Adobe-Japan1-6但不存在于JIS X 0208中的字符。 +该包已经广泛使用,\LuaTeX-ja支持部分\Pkg{otf}包中的部分功能。 +如果你想使用这些功能,加载\Pkg{luatexja-otf}宏包。 +\bgroup +\fontencoding{JY3}\selectfont +% + +\begin{LTXexample} +森\UTF{9DD7}外と内田百\UTF{9592}とが\UTF{9AD9}島屋に行く。 + +\CID{7652}飾区の\CID{13706}野家, +葛飾区の吉野家 +\end{LTXexample} +%<*zh> +\egroup +% + +%<*ja> +\Pkg{otf}パッケージでは,それぞれ次のようなオプションが存在した: +\begin{description} +\item[\texttt{deluxe}] 明朝体・ゴシック体各2ウェイトと,丸ゴシック体を扱えるようになる. +\item[\texttt{expert}] 仮名が横組・縦組専用のものに切り替わり,ルビ用仮名も扱えるようになる. +\item[\texttt{bold}] ゴシック体を標準で太いウェイトのものに設定する. +\end{description} +これらは,\Pkg{otf}パッケージが文書中で使用する +和文用TFMを自前の物に置き換えていることで可能になっている. + +一方,\Pkg{luatexja-otf}パッケージでは,文書中で使用する和文用JFMを置き換えることはしない. +そのため,上に述べた3つのオプションと同等のことを実現するには,\ref{ssub-chgfnt}節 (NFSS2) や +\ref{ssec-fontspec}節 (\Pkg{fontspec}) によって\textbf{事前に}設定しておかなければならない. + +TODO: 設定方法と例を載せる.フォントの関係上(複数の)別ファイルでよい? % %\section{Changing Parameters} %\section{パラメータの変更} +%\section{变量更改} %<*en> There are many parameters in \LuaTeX-ja. And due to the behavior of \LuaTeX, @@ -1051,14 +1524,20 @@ parameters, you have to use commands \verb+\ltjsetparameter+ and \verb+\ltjgetparameter+. % %<*ja> -\LuaTeX-ja には多くのパラメータが存在する.そして \LuaTeX の仕様のために, -その多くは \TeX のレジスタにではなく,\LuaTeX-ja 独自の方法で保持されている. +\LuaTeX-jaには多くのパラメータが存在する.そして\LuaTeX の仕様のために, +その多くは\TeX のレジスタにではなく,\LuaTeX-ja独自の方法で保持されている. そのため,これらのパラメータを設定・取得するためには \verb+\ltjsetparameter+ と \verb+\ltjgetparameter+ を 用いる必要がある. % +%<*zh> +\LuaTeX-ja包含大量的参数,以控制排版细节。 +设定这些参数需要使用命令:\verb!\ltjsetparameter!和\verb!\ltjgetparameter!命令。 +% %\subsection{Editing the range of \textbf{JAchar}s} -%\subsection{\textbf{JAchar} の範囲の設定} +%\subsection{\textbf{JAchar}の範囲の設定} +%\subsection{\textbf{JAchar}范围设定} + %<*en> To edit the range of \textbf{JAchar}s, you have to assign a non-zero @@ -1068,11 +1547,16 @@ next line assigns whole characters in Supplementary Ideographic Plane and the character `漢' to the range number~100. % %<*ja> -\textbf{JAchar} の範囲を設定するためには,まず各文字に0より大きく217より小さい index を +\textbf{JAchar}の範囲を設定するためには,まず各文字に0より大きく217より小さいindexを 割り当てる必要がある.これには \verb+\ltjdefcharrange+ プリミティブを用いる. -例えば,次のように書くことで追加漢字面 (SIP) にある全ての文字と `漢' が +例えば,次のように書くことで追加漢字面(SIP)にある全ての文字と`漢'が 「100番の文字範囲」に属するように設定される. % +%<*zh> +在设定\textbf{JAchar}之前,需要分配一个小于217的自然数。 +这个可以由\verb!\ltjdefcharrange!基本语句来完成。例如, +下面就分配了整个表意文字补充平面和汉字“漢”为100。 +% \begin{lstlisting} \ltjdefcharrange{100}{"10000-"1FFFF,`漢} \end{lstlisting} @@ -1084,6 +1568,9 @@ not do this in the middle of a document. この文字範囲の割り当ては常にグローバルであり,したがって文書の途中で この操作をするべきではない. % +%<*zh> +范围数的分配是全局的,故你不可在文档中使用。 +% %<*en> If some character has been belonged to some non-zero numbered range, @@ -1094,9 +1581,14 @@ removed from the range~4. % %<*ja> もし指定されたある文字がある非零番号の範囲に属していたならば,これは新しい設定で -上書きされる.例えば,SIP は全て \LuaTeX-ja のデフォルトでは4番の文字範囲に -属しているが,上記の指定を行えば SIP は100番に属すようになり,4番からは除かれる. +上書きされる.例えば,SIPは全て\LuaTeX-jaのデフォルトでは4番の文字範囲に +属しているが,上記の指定を行えばSIPは100番に属すようになり,4番からは除かれる. % +%<*zh> +如果某些字符被改变为新的非零数范围,将会被新设定重写。 +例如,整个SIP在\LuaTeX-ja默认设定中属于范围4,如果你使用如上设定, +SIP将会被设定为范围100,且从范围4种移除。 +% %<*en> After assigning numbers to ranges, the \textsf{jacharrange} parameter can @@ -1105,10 +1597,14 @@ be used to customize which character range will be treated as ranges of setting of \LuaTeX-ja): % %<*ja> -文字範囲に番号を割り当てた後は,\textsf{jacharrange} パラメータが \textbf{JAchar} と -して扱われる文字の範囲を設定するために用いられる.例えば,以下は \LuaTeX-ja の +文字範囲に番号を割り当てた後は,\textsf{jacharrange}パラメータが\textbf{JAchar}と +して扱われる文字の範囲を設定するために用いられる.例えば,以下は\LuaTeX-jaの 初期設定である: % +%<*zh> +分配了范围数之后,\textsf{jacharrange}参数将用于设定字符范围为\textbf{JAchar}, +如下(为\LuaTeX-ja默认设定): +% \begin{verbatim} \ltjsetparameter{jacharrange={-1, +2, +3, -4, -5, +6, +7, +8}} \end{verbatim} @@ -1119,10 +1615,15 @@ 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}'. % %<*ja> -\textsf{jacharrange} パラメータには整数のリストを与える. -リスト中の負の整数 $-n$ は「文字範囲 $n$ に属する文字は \textbf{ALchar} として -扱われる」ことを意味し,正の整数 $+n$ は \textbf{JAchar} として扱うことを意味する. +\textsf{jacharrange}パラメータには整数のリストを与える. +リスト中の負の整数$-n$は「文字範囲$n$に属する文字は\textbf{ALchar}として +扱われる」ことを意味し,正の整数$+n$は\textbf{JAchar}として扱うことを意味する. % +%<*zh> +\textsf{jacharrange}参数的变量未整数数组。 +负数$-n$在数组中表示“字符范围$n$中的字符被视作\textbf{ALchar}”, +正数$+n$则表示“字符范围$n$被视作\textbf{JAchar}”。 +% %<*en> \paragraph{Default Setting} @@ -1131,29 +1632,42 @@ determined from the following data: % %<*ja> \paragraph{初期設定} -\LuaTeX-ja では8つの文字範囲を設定している.これらは以下のデータに基づいて決定して +\LuaTeX-jaでは8つの文字範囲を設定している.これらは以下のデータに基づいて決定して いる. % +%<*zh> +\paragraph{默认设定} +\LuaTeX-ja默认设定了8个字符范围。如下设定: +% \begin{itemize} %<*en> \item Blocks in Unicode~6.0. % %<*ja> -\item Unicode~6.0 のブロック. +\item Unicode~6.0のブロック. % +%<*zh> +\item Unicode~6.0区块 +% %<*en> \item The \texttt{Adobe-Japan1-UCS2} mapping between a CID Adobe-Japan1-6 and Unicode. % %<*ja> -\item \texttt{Adobe-Japan1-UCS2} による Adobe-Japan1-6 の CID と Unicode の間の +\item \texttt{Adobe-Japan1-UCS2}によるAdobe-Japan1-6のCIDとUnicodeの間の マッピング. % +%<*zh> +\item 在CID Adobe-Japan1-6和Unicode之间的映射\texttt{Adobe-Japan1-UCS2}。 +% %<*en> \item The \texttt{PXbase} bundle for \upTeX\ by Takayuki Yato. % %<*ja> -\item 八登崇之氏による \upTeX 用の \texttt{PXbase} バンドル. +\item 八登崇之氏による\upTeX 用の\texttt{PXbase}バンドル. % +%<*zh> +\item 八登崇之的\texttt{PXbase}宏包(\upTeX 下使用)。 +% \end{itemize} %<*en> @@ -1163,10 +1677,14 @@ number shows whether characters in the range is treated as \texttt{prefercjk} settings defined in \texttt{PXbase} bundle. % %<*ja> -以下ではこれら8つの文字範囲について記述する.番号のあとのアルファベット `J' と `A' -はデフォルトで \textbf{JAchar} か \textbf{ALchar} かを表している.これらの設定は -\texttt{PXbase} バンドルで定義されている \texttt{prefercjk} と類似のものである. +以下ではこれら8つの文字範囲について記述する.番号のあとのアルファベット`J'と`A' +はデフォルトで\textbf{JAchar}か\textbf{ALchar}かを表している.これらの設定は +\texttt{PXbase}バンドルで定義されている\texttt{prefercjk}と類似のものである. % +%<*zh> +现在我们描述8个字符范围。在数字后的“J”和“A”表明代表\textbf{JAchar}或者未跟随默认设定。 +这些设定类似于\texttt{PXbase}中的\texttt{prefercjk}设定。 +% \begin{description} %<*en> \item[Range~8${}^{\text{J}}$] Symbols in the intersection of the upper half of ISO~8859-1 @@ -1174,10 +1692,13 @@ number shows whether characters in the range is treated as consists of the following characters: % %<*ja> -\item[範囲 8${}^{\text{J}}$] ISO~8859-1 の上位領域(ラテン1補助)と - JIS~X~0208 の共通部分にある記号.この文字範囲は +\item[範囲8${}^{\text{J}}$] ISO~8859-1の上位領域(ラテン1補助)と + JIS~X~0208の共通部分にある記号.この文字範囲は 以下の文字で構成される: % +%<*zh> +\item[范围8${}^\text{J}$] ISO 8859-1(Latin-1补充)的上半部和JIS X 0208(日文基本字符集)的重叠部分,包含下列字符: +% \begin{multicols}{2} \begin{itemize} \def\ch#1#2{\item \char"#1\ (\texttt{U+00#1}, #2)}%" @@ -1201,6 +1722,16 @@ number shows whether characters in the range is treated as \ch{D7}{乗算記号} \ch{F7}{除算記号} % +%<*zh> +\ch{A7}{分节符} +\ch{A8}{分音符} +\ch{B0}{温度符号} +\ch{B1}{加减符号} +\ch{B4}{置位尖音} +\ch{B6}{段落符号} +\ch{D7}{乘号} +\ch{F7}{除号} +% \end{itemize} \end{multicols} @@ -1209,10 +1740,14 @@ number shows whether characters in the range is treated as This range consist of the following Unicode ranges, \emph{except characters in the range~8 above}: % %<*ja> -\item[範囲 1${}^{\text{A}}$] ラテン文字.一部はAdobe-Japan1-6 にも含まれている. - この範囲は以下の Unicode のブロックから構成されている. - \textbf{ただし,範囲 8 は除く.} +\item[範囲1${}^{\text{A}}$] ラテン文字.一部はAdobe-Japan1-6にも含まれている. + この範囲は以下のUnicodeのブロックから構成されている. + \textbf{ただし,範囲8は除く.} % +%<*zh> +\item[范围1${}^\text{A}$] 包含于Adobe-Japan1-6中的拉丁字符,此范围包含下列 + Unicode区域,但\textbf{不包括上述提到过的范围8}: +% \begin{multicols}{2} \begin{itemize} %<*en> @@ -1233,6 +1768,15 @@ This range consist of the following Unicode ranges, \emph{except characters in t \item \texttt{U+0300}--\texttt{U+036F}: ダイアクリティカルマーク(合成可能) \item \texttt{U+1E00}--\texttt{U+1EFF}: ラテン文字拡張追加 % +%<*zh> +\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}: 国际音标扩充 +\item \texttt{U+02B0}--\texttt{U+02FF}: 进格修饰符元 +\item \texttt{U+0300}--\texttt{U+036F}: 组合音标附加符号 +\item \texttt{U+1E00}--\texttt{U+1EFF}: 拉丁字母扩充附加 +% \par\ \end{itemize} \end{multicols} @@ -1241,9 +1785,12 @@ This range consist of the following Unicode ranges, \emph{except characters in t fonts) has some of these characters. % %<*ja> -\item[範囲 2${}^{\text{J}}$] ギリシャ文字とキリル文字.JIS~X~0208(したがって多くの +\item[範囲2${}^{\text{J}}$] ギリシャ文字とキリル文字.JIS~X~0208(したがって多くの 和文フォント)はこれらの文字を持つ. % +%<*zh> +\item[范围2${}^\text{J}$] 希腊文和西里尔字母,使用JIS X 0208的大部分日文字体包含这些字符: +% \begin{multicols}{2} \begin{itemize} %<*en> @@ -1256,6 +1803,11 @@ This range consist of the following Unicode ranges, \emph{except characters in t \item \texttt{U+0400}--\texttt{U+04FF}: キリル文字 \item \texttt{U+1F00}--\texttt{U+1FFF}: キリル文字補助 % +%<*zh> +\item \texttt{U+0370}--\texttt{U+03FF}: 希腊字母 +\item \texttt{U+0400}--\texttt{U+04FF}: 西里尔字母 +\item \texttt{U+1F00}--\texttt{U+1FFF}: 希腊文扩充 +% \\\ \end{itemize} \end{multicols} @@ -1264,16 +1816,22 @@ This range consist of the following Unicode ranges, \emph{except characters in t indicated in Table~\ref{table-rng3}. % %<*ja> -\item[範囲 3${}^{\text{J}}$] 句読点と記号類.ブロックのリストは表~\ref{table-rng3} +\item[範囲3${}^{\text{J}}$] 句読点と記号類.ブロックのリストは表\ref{table-rng3}% に示してある. % +%<*zh> +\item[范围3${}^\text{J}$] 标点以及杂项符号,参见表\ref{table-rng3}。 +% \begin{table}[!tb] %<*en> \caption{Unicode blocks in predefined character range~3.} % %<*ja> -\caption{文字範囲 3 に指定されている Unicode ブロック.} +\caption{文字範囲3に指定されているUnicodeブロック.} % +%<*zh> +\caption{字符范围3定义的Unicode范围} +% \label{table-rng3} \catcode`\"=13\def"#1#2#3#4{\texttt{U+#1#2#3#4}}%" \begin{center}\small @@ -1320,6 +1878,27 @@ This range consist of the following Unicode ranges, \emph{except characters in t "2B00--"2BFF&その他の記号及び矢印\\ "E000--"F8FF&私用領域(外字領域)& % +%<*zh> +"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&私用区域& +% \end{tabular} \end{center} \end{table} @@ -1330,11 +1909,15 @@ This range consist of the following Unicode ranges, \emph{except characters in t we put the definition of this range itself: % %<*ja> -\item[範囲 4${}^{\text{A}}$] 通常和文フォントには含まれていない文字. - この範囲は他の範囲にないほとんど全ての Unicode ブロック +\item[範囲4${}^{\text{A}}$] 通常和文フォントには含まれていない文字. + この範囲は他の範囲にないほとんど全てのUnicodeブロック で構成されている.したがって,ブロックのリストを示す 代わりに,範囲の定義そのものを示す: % +%<*zh> +\item[范围4${}^\text{A}$] 通常情况下不包含于日文字体的部分。本范围包含有其他 +范围尚未涵盖部分。故,我们直接给出定义: +% \begin{lstlisting} \ltjdefcharrange{4}{% "500-"10FF, "1200-"1DFF, "2440-"245F, "27C0-"28FF, "2A00-"2AFF, @@ -1345,22 +1928,31 @@ This range consist of the following Unicode ranges, \emph{except characters in t \item[Range~5${}^{\text{A}}$] Surrogates and Supplementary Private Use Areas. % %<*ja> -\item[範囲 5${}^{\text{A}}$] 代用符号と補助私用領域. +\item[範囲5${}^{\text{A}}$] 代用符号と補助私用領域. % +%<*zh> +\item[范围5${}^\text{A}$] 代替以及补充私有使用区域。 +% %<*en> \item[Range~6${}^{\text{J}}$] Characters used in Japanese. The block list is indicated in Table~\ref{table-rng6}. % %<*ja> -\item[範囲 6${}^{\text{J}}$] 日本語で用いられる文字.ブロックのリストは - 表~\ref{table-rng6} に示す. +\item[範囲6${}^{\text{J}}$] 日本語で用いられる文字.ブロックのリストは + 表\ref{table-rng6}に示す. % +%<*zh> +\item[范围6${}^\text{J}$] 日文字符。 +% \begin{table}[!tb] %<*en> \caption{Unicode blocks in predefined character range~6.} % %<*ja> -\caption{文字範囲 6 に指定されている Unicode ブロック.} +\caption{文字範囲6に指定されているUnicodeブロック.} % +%<*zh> +\caption{字符范围6定义的Unicode范围} +% \label{table-rng6} \catcode`\"=13\def"#1#2#3#4{\texttt{U+#1#2#3#4}}%" \begin{center}\small @@ -1401,6 +1993,24 @@ This range consist of the following Unicode ranges, \emph{except characters in t "FE50--"FE6F&小字形& "{20}000--"{2F}FFF&(追加漢字面) % +%<*zh> +"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&(补充字符) +% \end{tabular} \end{center} \end{table} @@ -1409,17 +2019,23 @@ This range consist of the following Unicode ranges, \emph{except characters in t The block list is indicated in Table~\ref{table-rng7}. % %<*ja> -\item[範囲 7${}^{\text{J}}$] CJK 言語で用いられる文字のうち,Adobe-Japan1-6 に +\item[範囲7${}^{\text{J}}$] CJK言語で用いられる文字のうち,Adobe-Japan1-6に 含まれていないもの. - ブロックのリストは表~\ref{table-rng7} に示す. + ブロックのリストは表\ref{table-rng7}に示す. % +%<*zh> +\item[范围7${}^\text{J}$] 不包含于Adobe-Japan1-6的CJK字符,参见表\ref{table-rng7}。 +% \begin{table}[!tb] %<*en> \caption{Unicode blocks in predefined character range~7.} % %<*ja> -\caption{文字範囲 7 に指定されている Unicode ブロック.} +\caption{文字範囲7に指定されているUnicodeブロック.} % +%<*zh> +\caption{字符范围7定义的Unicode范围} +% \label{table-rng7} \catcode`\"=13\def"#1#2#3#4{\texttt{U+#1#2#3#4}}%" \begin{center}\small @@ -1452,6 +2068,20 @@ The block list is indicated in Table~\ref{table-rng7}. "AC00--"D7AF&ハングル音節文字& "D7B0--"D7FF&ハングル字母拡張B % +%<*zh> +"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 +% \end{tabular} \end{center} \end{table} @@ -1459,15 +2089,19 @@ The block list is indicated in Table~\ref{table-rng7}. %\subsection{\Param{kanjiskip} and \Param{xkanjiskip}} -%\subsection{\Param{kanjiskip} と \Param{xkanjiskip}} +%\subsection{\Param{kanjiskip}と\Param{xkanjiskip}} +%\subsection{\Param{kanjiskip}和\Param{xkanjiskip}} \label{subs-kskip} %<*en> \textbf{JAglue} is divided into the following three categories: % %<*ja> -\textbf{JAglue} は以下の3つのカテゴリに分類される: +\textbf{JAglue}は以下の3つのカテゴリに分類される: % +%<*zh> +\textbf{JAglue}分为以下三个范畴: +% \begin{itemize} %<*en> \item Glues/kerns specified in JFM. If \verb+\inhibitglue+ is issued @@ -1475,31 +2109,43 @@ The block list is indicated in Table~\ref{table-rng7}. place. % %<*ja> -\item JFM で指定されたグルー/カーン.もし \verb+\inhibitglue+ が和文文字の周りで +\item JFMで指定されたグルー/カーン.もし \verb+\inhibitglue+ が和文文字の周りで 発行されていれば,このグルーは挿入されない. % +%<*zh> +\item JFM设定的胶或出格值。如果在一个日文字符附近使用\verb!\inhibitglue!,则胶便不会插入。 +% %<*en> \item The default glue which inserted between two \textbf{JAchar}s (\Param{% kanjiskip}). % %<*ja> -\item デフォルトで2つの \textbf{JAchar} の間に挿入されるグルー(\Param{kanjiskip}). +\item デフォルトで2つの\textbf{JAchar}の間に挿入されるグルー(\Param{kanjiskip}). % +%<*zh> +\item 两个\textbf{JAchar}之间默认插入的胶(\Param{kanjiskip})。 +% %<*en> \item The default glue which inserted between a \textbf{JAchar} and an \textbf{ALchar} (\Param{xkanjiskip}). % %<*ja> -\item デフォルトで \textbf{JAchar} と \textbf{ALchar} の間に挿入されるグルー(\Param{xkanjiskip}). +\item デフォルトで\textbf{JAchar}と\textbf{ALchar}の間に挿入されるグルー(\Param{xkanjiskip}). % +%<*zh> +\item \textbf{JAchar}和\textbf{ALchar}之间默认插入的胶(\Param{xkanjiskip})。 +% \end{itemize} %<*en> The value (a skip) of \Param{kanjiskip} or \Param{xkanjiskip} can be changed as the following. % %<*ja> -\Param{kanjiskip} や \Param{xkanjiskip} の値は以下のようにして変更可能である. +\Param{kanjiskip}や\Param{xkanjiskip}の値は以下のようにして変更可能である. % +%<*zh> +\Param{kanjiskip}和\Param{xkanjiskip}的设定如下所示: +% \begin{lstlisting} \ltjsetparameter{kanjiskip={0pt plus 0.4pt minus 0.4pt}, xkanjiskip={0.25\zw plus 1pt minus 1pt}} @@ -1512,14 +2158,19 @@ To use these data from JFM, set the value of \Param{kanjiskip} or \Param{xkanjiskip} to \verb+\maxdimen+. % %<*ja> -JFM は「望ましい \Param{kanjiskip} の値」や「望ましい \Param{xkanjiskip} の値」を +JFMは「望ましい\Param{kanjiskip}の値」や「望ましい\Param{xkanjiskip}の値」を 持っていることがある. -これらのデータを使うためには,\Param{kanjiskip} や \Param{xkanjiskip} の +これらのデータを使うためには,\Param{kanjiskip}や\Param{xkanjiskip}の 値を \verb+\maxdimen+ の値に設定すればよい. % +%<*zh> +当JFM包含“\Param{kanjiskip}理想宽度”和/或“\Param{xkanjiskip}理想宽度”数据时, +上述设定产生作用。如果想用JFM中的数据,请设定\Param{kanjiskip}或\textsf{xkanjiskip}为\verb!\maxdimen!。 +% %\subsection{Insertion Setting of \Param{xkanjiskip}} %\subsection{\Param{xkanjiskip} の設定の挿入} +%\subsection{\Param{xkanjiskip}插入设定} %<*en> It is not desirable that \Param{xkanjiskip} is inserted into every @@ -1531,14 +2182,20 @@ before/after a character, by changing \Param{jaxspmode} for \textbf{JAchar}s and \Param{alxspmode} parameters \textbf{ALchar}s respectively. % %<*ja> -\Param{xkanjiskip} がすべての \textbf{JAchar} と \textbf{ALchar} の境界に -挿入されるのは望ましいことではない.例えば,\Param{xkanjiskip} は開き括弧の -後には挿入されるべきではない(`(あ' と `(\hskip\ltjgetparameter{xkanjiskip}あ' を +\Param{xkanjiskip}がすべての\textbf{JAchar}と\textbf{ALchar}の境界に +挿入されるのは望ましいことではない.例えば,\Param{xkanjiskip}は開き括弧の +後には挿入されるべきではない(`(あ'と`(\hskip\ltjgetparameter{xkanjiskip}あ'を 比べてみよ). -\LuaTeX-ja では \Param{xkanjiskip} をある文字の前/後に挿入するかどうかを, -\textbf{JAchar} に対しては \Param{jaxspmode} を,\textbf{ALchar} に対しては -\Param{alxspmode} をそれぞれ変えることで制御することができる. -% +\LuaTeX-jaでは\Param{xkanjiskip}をある文字の前/後に挿入するかどうかを, +\textbf{JAchar}に対しては\Param{jaxspmode}を,\textbf{ALchar}に対しては +\Param{alxspmode}をそれぞれ変えることで制御することができる. +% +%<*zh> +并不是在所有的\textbf{JAchar}和\textbf{ALchar}周围插入\textsf{xkanjiskip}都是合适的。 +比如,在开标点之后插入\Param{xkanjiskip}并不合适[如,比较“(あ”和“(\hskip\ltjgetparameter{xkanjiskip}あ”]。 +\LuaTeX-ja可以通过设定\textbf{JAchar}的\Param{jaxspmode}以及\textbf{ALchar}的\Param{alxspmode}来控制 +\Param{xkanjiskip}在字符前后的插入。 +% \begin{LTXexample} \ltjsetparameter{jaxspmode={`あ,preonly}, alxspmode={`\!,postonly}} pあq い!う @@ -1551,10 +2208,14 @@ the other possible values are \texttt{postonly}, \texttt{allow} and \texttt{ inhibit}. % %<*ja> -2つ目の引数の \texttt{preonly} は「\Param{xkanjiskip} の挿入はこの文字の +2つ目の引数の \texttt{preonly}は「\Param{xkanjiskip}の挿入はこの文字の 前でのみ許され,後では許さない」ことを意味する.他に指定可能な値は -\texttt{postonly}, \texttt{allow}, \texttt{inhibit} である. +\texttt{postonly}, \texttt{allow}, \texttt{inhibit}である. % +%<*zh> +第二个参数\textsf{preonly}表示的含义为“允许在该字符前插入\textsf{xkanjiskip},但不允许在该字符之后插入”。 +其他参数还有\textsf{postonly},\textsf{allow}和\textsf{inhibit}。 +% %<*en> \Param{jaxspmode} and \Param{alxspmode} use a same table to store the parameters @@ -1563,18 +2224,25 @@ as follows: % %<*ja> なお,現行の -仕様では,\Param{jaxspmode}, \Param{alxspmode} はテーブルを共有しており, +仕様では,\Param{jaxspmode}, \Param{alxspmode}はテーブルを共有しており, 上のコードの1行目を次のように変えても同じことになる: % +%<*zh> +当前版本的\Param{jaxspmode}和\Param{alxspmode}使用相同的的表保存参数。 +因此,上一行可被写作: +% \begin{verbatim} \ltjsetparameter{alxspmode={`あ,preonly}, jaxspmode={`\!,postonly}} \end{verbatim} %<*en> -One can use also numbers to specify these two parameters (see Subsection \ref{ssec-param}). +One can use also numbers to specify these two parameters (see Subsection~\ref{ssec-param}). % %<*ja> -また,これら2パラメータには数値で値を指定することもできる(\ref{ssec-param} 節を参照). +また,これら2パラメータには数値で値を指定することもできる(\ref{ssec-param}節を参照). % +%<*zh> +你也可以使用数字来定义两个参数(参见\ref{ssec-param})。 +% %<*en> If you want to enable/disable all insertions of \Param{kanjiskip} and @@ -1582,14 +2250,18 @@ If you want to enable/disable all insertions of \Param{kanjiskip} and parameters to \texttt{true}/\texttt{false}, respectively. % %<*ja> -もし全ての \Param{kanjiskip} と \Param{xkanjiskip} の挿入を有効化/無効化 -したければ,それぞれ \Param{autospacing} と \Param{autoxspacing} を -\texttt{true}/\texttt{false} に設定すればよい. +もし全ての\Param{kanjiskip}と\Param{xkanjiskip}の挿入を有効化/無効化 +したければ,それぞれ\Param{autospacing}と\Param{autoxspacing}を +\texttt{true}/\texttt{false}に設定すればよい. % +%<*zh> +如果你想要启用/屏蔽所有的\Param{kanjiskip}和\Param{xkanjiskip}插入,设定 +\Param{autospacing}和\Param{autoxspcing}为\texttt{ture}/\texttt{false}即可。 +% %\subsection{Shifting Baseline} %\subsection{ベースラインの移動} - +%\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 @@ -1607,10 +2279,16 @@ parameter). 必要になる.\pTeX ではこれは \verb+\ybaselineshift+ を非零の長さに設定することで なされていた(欧文フォントのベースラインが下がる).しかし,日本語が主ではない 文書に対しては,欧文フォントではなく和文フォントのベースラインを移動した方がよい. -このため,\LuaTeX-ja では欧文フォントのベースラインのシフト量 -(\Param{yalbaselineshift} パラメータ)と和文フォントのベースラインのシフト量 +このため,\LuaTeX-jaでは欧文フォントのベースラインのシフト量 +(\Param{yalbaselineshift}パラメータ)と和文フォントのベースラインのシフト量 (\Param{yjabaselineshift}パラメータ)を独立に設定できるようになっている. % +%<*zh> +为了确保日文字体和西文字体能够对其,有时需要浮动其中一者的基线。 +在\pTeX 中,此项设定由设定\verb!\yabaselineshift!为非零长度(西文字体基线应向下浮动)。 +不过,如果文档的中主要语言不是日文,那么最好上浮日文字体的基线,西文字体不变。 +如上所述,\LuaTeX-ja可以独立设定西文字体的基线(\Param{yabaselineshift}参数)和日文字体的基线(\Param{yjabaselineshift}参数)。 +% \begin{LTXexample} \vrule width 150pt height 0.4pt depth 0pt\hskip-120pt @@ -1623,6 +2301,9 @@ Here the horizontal line in above is the baseline of a line. %<*ja> 上の例において引かれている水平線がベースラインである. % +%<*zh> +上述水平线为此行基线。 +% %<*en> There is an interesting side-effect: characters in different size can be @@ -1634,6 +2315,10 @@ The following is an example (beware the value is not well tuned): 異なる文字を中心線に揃えることができるのだ. 以下は一つの例である(値はあまり調整されていないことに注意): % +%<*zh> +这里还有一个有趣的副作用:不同大小的字符可以通过适当调整这两个参数而在一行中垂直居中。 +下面是一个例子(注意,参数值并没有刻意调整): +% \begin{LTXexample} xyz漢字 {\scriptsize @@ -1646,6 +2331,7 @@ xyz漢字 %\subsection{Cropmark} %\subsection{トンボ} +%\subsection{裁剪框标记} %<*en> Cropmark is a mark for indicating 4~corners and horizontal/vertical @@ -1655,9 +2341,13 @@ The following steps are needed to typeset cropmark: % %<*ja> トンボは用紙の四つ角と水平/垂直方向の中心を表す印である. -\pLaTeX と \LuaTeX-ja ではトンボの出力をサポートしている. +\pLaTeX と \LuaTeX-jaではトンボの出力をサポートしている. トンボを出力するためには以下の手順が必要である: % +%<*zh> +裁剪框标记是在一页的四角和水平/垂直中央放置的标记。在日文中,裁剪框被称为“トンボ”。 +\pLaTeX 和\LuaTeX-ja均在底层支持裁剪框标记。需要下列步骤来实现: +% \begin{enumerate} %<*en> @@ -1671,8 +2361,12 @@ For example, the following sets banner as `\texttt{filename (YYYY-MM-DD hh:mm)}' \item まず,用紙の左上に印刷されるバナーを定義する.これは \verb+\@bannertoken+ にトークンリストを与えることでなされる. -例えば,以下はバナーとして `\texttt{filename (YYYY-MM-DD hh:mm)}' を設定する: +例えば,以下はバナーとして`\texttt{filename (YYYY-MM-DD hh:mm)}'を設定する: % +%<*zh> +\item 首先,首先定义页面左上角将会出现的注记。这由向\verb!@bannertoken!分配一个token列完成。\\ +例如,下列所示将会设定注记为“\textsf{filename (YYYY-MM-DD hh:mm)}”: +% \begin{verbatim} \makeatletter @@ -1690,11 +2384,14 @@ For example, the following sets banner as `\texttt{filename (YYYY-MM-DD hh:mm)}' %\part{Reference} %\part{リファレンス} +%\part{参考指南} \label{part-ref} %\section{Font Metric and Japanese Font} %\section{フォントメトリックと和文フォント} +%\section{字体测度和日文字体} %\subsection{\texttt{\char92jfont} primitive} -%\subsection{\texttt{\char92jfont} プリミティブ} +%\subsection{\texttt{\char92jfont}プリミティブ} +%\subsection{\texttt{\char92jfont}基本语句} \label{ssec-jfont} %<*en> @@ -1708,10 +2405,14 @@ so TrueType/OpenType fonts with features can be used for Japanese fonts: フォントを和文フォントとして読み込むためには,\verb+\jfont+ プリミティブを \verb+\font+ プリミティブの代わりに用いる. \verb+\jfont+ プリミティブの文法は \verb+\font+ と同じである. -\LuaTeX-ja は \Pkg{luaotfload} パッケージを自動的に読み込むので, -TrueType/OpenType フォントに feature を指定したものを和文フォントとして用いる +\LuaTeX-jaは\Pkg{luaotfload}パッケージを自動的に読み込むので, +TrueType/OpenTypeフォントにfeatureを指定したものを和文フォントとして用いる ことができる: % +%<*zh> +为了加载日文字体,需要使用\verb!\jfont!基本语句替代\verb!\font!,前者支持后者所有相同句法。 +\LuaTeX-ja自动加载\Pkg{luaotfload}宏包,故TrueType/OpenType字体的特性可以使用于日文字体: +% \begin{LTXexample} \jfont\tradgt={file:ipaexg.ttf:script=latn;% +trad;-kern;jfm=ujis} at 14pt @@ -1727,10 +2428,15 @@ causes a error. We denote control sequences which are defined in % %<*ja> なお,\verb+\jfont+ で定義されたコントロールシーケンス(上の例だと \verb+\tradgt+) -は \textit{font\_def} トークンではないので,\verb+\fontname\tradgt+ のような +は\textit{font\_def}トークンではないので,\verb+\fontname\tradgt+ のような 入力はエラーとなることに注意する.以下では \verb+\jfont+ で定義された -コントロールシーケンスを で表す. +コントロールシーケンスをで表す. % +%<*zh> +注意定义的控制序列(上例中的\verb!\tradgt!)使用的\verb!\jfont!并不是一个\textit{font\_def}标记, +故类似\verb!\fontname\tradgt!输入会引起错误。 +我们将定义\verb!\jfont!采用。 +% \paragraph{JFM} %<*en> @@ -1741,11 +2447,15 @@ subsection. At the calling of \verb+\jfont+ primitive, you must specify which JFM will be used for this font by the following keys: % %<*ja> -「はじめに」の節で述べたように,JFM は文字と和文組版で自動的に挿入される -グルー/カーンの寸法情報を持っている.JFM の構造は次の小節で述べる. -\verb+\jfont+ プリミティブの呼び出しの際には,どの JFM を用いるのかを以下のキーで +「はじめに」の節で述べたように,JFMは文字と和文組版で自動的に挿入される +グルー/カーンの寸法情報を持っている.JFMの構造は次の小節で述べる. +\verb+\jfont+ プリミティブの呼び出しの際には,どのJFMを用いるのかを以下のキーで 指定する必要がある: % +%<*zh> +在引言中已提及此项,所谓JFM是字符亮度和日文排版中自动插入的胶/出格。 +JFM的结构将在下节进行描述。在使用\verb!\jfont!基本语句时,必须设定JFM如下两个键: +% \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}\advance\leftmargin1\zw} \item[jfm=] @@ -1756,11 +2466,16 @@ a file named \texttt{jfm-.lua}. The following JFMs are shipped with \LuaTeX-ja: % %<*ja> -JFM の名前を指定する.もし以前に指定されたJFMが読み込まれていなければ, -\texttt{jfm-.lua} を読み込む. +JFMの名前を指定する.もし以前に指定されたJFMが読み込まれていなければ, +\texttt{jfm-.lua}を読み込む. -以下の JFM が \LuaTeX-ja には同梱されている: +以下のJFMが\LuaTeX-jaには同梱されている: % +%<*zh> +设定JFM名称。设定的JFM如未加载,\LuaTeX-ja会搜寻并加载一个命名为\texttt{jfm-}<\textit{name}>\texttt{.lua}的文件。 + +\LuaTeX-ja提供如下JFM: +% \begin{description} %<*en> \item[\tt jfm-ujis.lua] A standard JFM in \LuaTeX-ja. This JFM is @@ -1768,10 +2483,14 @@ JFM の名前を指定する.もし以前に指定されたJFMが読み込ま is used in \upTeX. When you use the \Pkg{luatexja-otf} package, you should use this JFM. % %<*ja> -\item[\tt jfm-ujis.lua] \LuaTeX-ja の標準 JFM である.この JFM は \upTeX で - 用いられる UTF/OTF パッケージ用のメトリックである \verb+upnmlminr-h.tfm+ を - 元にしている.\Pkg{luatexja-otf} パッケージを使うときはこの JFM を指定するべきである. +\item[\tt jfm-ujis.lua] \LuaTeX-jaの標準JFMである.このJFMは\upTeX で + 用いられるUTF/OTFパッケージ用の和文用TFMである \verb+upnmlminr-h.tfm+ を + 元にしている.\Pkg{luatexja-otf}パッケージを使うときはこのJFMを指定するべきである. % +%<*zh> +\item[\tt jfm-ujis.lua] \LuaTeX-ja标准JFM。次JFM基于\upTeX 使用的UTF/OTF宏包的\verb!upnmlminr-h.tfm!。 +如果你使用\Pkg{luatexja-otf}宏包,你将会用到此JFM。 +% %<*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 @@ -1781,11 +2500,17 @@ JFM の名前を指定する.もし以前に指定されたJFMが読み込ま rectangles. % %<*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} では横長の長方形状である. +\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}では横長の長方形状である. % +%<*zh> +\item[\tt jfm-jis.lua] 相当于\pTeX 使用的\verb!jis.tfm!(“JIS font metric”)。 + \texttt{jfm-ujis.lua}和\texttt{jfm-jis.lua}主要区别是: + \texttt{jfm-ujis.lua}下的大部分字符是方形, + \texttt{jfm-jis.lua}下则为长方形。 +% %<*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 @@ -1793,18 +2518,23 @@ JFM の名前を指定する.もし以前に指定されたJFMが読み込ま shown in Table~\ref{tab-difjfm}. % %<*ja> -\item[\tt jfm-min.lua] \pTeX に同梱されているデフォルトの和文フォントメトリック - である \verb+min10.tfm+ に相当する JFM である.この JFM と他の2つの JFM の間には - 表 \ref{tab-difjfm} に示すような特筆すべき違いがある. +\item[\tt jfm-min.lua] \pTeX に同梱されているデフォルトの和文用TFM + である \verb+min10.tfm+ に相当するJFMである.このJFMと他の2つのJFMの間には + 表\ref{tab-difjfm}に示すような特筆すべき違いがある. % +%<*zh> +\item[\tt jfm-min.lua] 相当于\pTeX 中默认的\verb!min10.tfm!。 + 这个JFM与其他2个JFM的区别如表\ref{tab-difjfm}所示。 +% \end{description} -\item[jfmvar=] Sometimes there is a need that ... +\item[jfmvar=] Sometimes there is a need that \ldots. \end{list} \begin{table}[t] %\caption{Differences between JFMs shipped with \LuaTeX-ja} %\caption{\LuaTeX-ja に同梱されている JFM の違い} +%\caption{\LuaTeX-ja下不同JFM表现} \label{tab-difjfm} \ltjsetparameter{jacharrange={+3}} \begin{center} @@ -1827,9 +2557,11 @@ JFM の名前を指定する.もし以前に指定されたJFMが読み込ま \midrule %Example~1\footnotemark %例1\footnotemark +%例1\footnotemark &\r{ujis}&\r{jis}&\r{min}\\ %Example~2 %例2 +%例2 &\s{ujis}&\s{jis}&\s{min}\\ Bounding Box&\t{ujis}&\t{jis}&\t{min}\\ \bottomrule @@ -1842,6 +2574,7 @@ Bounding Box&\t{ujis}&\t{jis}&\t{min}\\ %\paragraph{Note: kern feature} %\paragraph{注意:kern feature} +%\paragraph{注意:kern feature} \label{para-kern} %<*en> Some fonts have information for inter-glyph spacing. However, this @@ -1853,12 +2586,16 @@ and it from JFM are present. % %<*ja> いくつかのフォントはグリフ間のスペースについての情報を持っている.しかし, -この情報は \LuaTeX-ja とはあまり相性がよくない.具体的には,この情報に基づいて挿入 -されるカーニングスペースは \textbf{JAglue} の挿入過程の\textbf{前に}挿入され, -JFM に基づくグルー/カーンも挿入される場合には2文字間の意図しないスペースの原因と +この情報は\LuaTeX-ja とはあまり相性がよくない.具体的には,この情報に基づいて挿入 +されるカーニングスペースは\textbf{JAglue}の挿入過程の\textbf{前に}挿入され, +JFMに基づくグルー/カーンも挿入される場合には2文字間の意図しないスペースの原因と なる. % - +%<*zh> +一些字体具有内部字形间距信息。但是,这些信息在\LuaTeX-ja下并不良好兼容。 +仔细些说,出格间距是在\textbf{JAglue}插入\textbf{之前}而先行插入的, +这就造成了字体数据中和JFM中的胶/出格在两个字符间插入出错。 +% \begin{itemize} %<*en> \item You should specify \texttt{-kern} in @@ -1866,24 +2603,30 @@ JFM に基づくグルー/カーンも挿入される場合には2文字間の such as \texttt{script=...}\,. % %<*ja> -\item \texttt{script=...} といった feature を使いたい場合には,\verb+\jfont+ - プリミティブに \texttt{-kern} を指定するべきである. +\item \texttt{script=...}といったfeatureを使いたい場合には,\verb+\jfont+ + プリミティブに\texttt{-kern}を指定するべきである. % +%<*zh> +\item 当你想使用其他字体特性如\texttt{script=...}的时候,可以在\verb!jfont!基本语句中设置\texttt{-kern} +% %<*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 ... + information from this font, use \texttt{jfm-prop.lua} for its JFM, and\ldots. % %<*ja> \item もしプロポーショナル幅の和文フォントをそのフォントの情報に基づいて使いたい - ならば,\texttt{jfm-prop.lua} を JFM として指定し,…… + ならば,\texttt{jfm-prop.lua}をJFMとして指定し,…… % - +%<*zh> +\item 如果你想使用比例宽度的日文字体,并且使用此字体信息,使用\texttt{jfm-prop.lua}为其JFM,…… +% TODO: kanjiskip? \end{itemize} %\subsection{Prefix \texttt{psft}} -%\subsection{\texttt{psft} プレフィックス} +%\subsection{\texttt{psft}プリフィックス} +%\subsection{\texttt{psft}前缀} \label{ssec-psft} %<*en> Besides \texttt{file:}\ and \texttt{name:}\ prefixes, one can use \texttt{psft:}\ @@ -1891,37 +2634,109 @@ prefix in \verb+\jfont+ (and~\verb+\font+) primitive, to specify a `name-only' Japanese font which will not be embedded to PDF. Typical use of this prefix is to specify the `standard' Japanese fonts, namely, `Ryumin-Light' and -`GothicBBB-Medium'. For kerning or other information, that of Kozuka -Mincho Pr6N Regular (this is a font by Adobe Inc., and included in -Japanese Font Packs for Adobe Reader) will be used. +`GothicBBB-Medium'. % %<*ja> -\texttt{file:} と \texttt{name:} のプレフィックスに加えて, +\texttt{file:}と\texttt{name:}のプリフィックスに加えて, \verb+\jfont+ プリミティブ(と \verb+\font+ プリミティブ)では -\texttt{psft:} プレフィックスを用いることができる. -このプレフィックスを用いることで,PDF には埋め込まれない「名前だけの」 -和文フォントを指定することができる.典型的な使い方は「標準的な」和文フォント, -つまり `Ryumin-Light' と `GothicBBB-Medium' を指定することである. -この場合,カーニング他の情報は小塚明朝 Pr6N Regular -(Adobe 社によるフォントで,Adobe Reader の日本語フォントパックに含まれている) -が用いられる. -% - -\paragraph{\texttt{cid} key} +\texttt{psft:}プリフィックスを用いることができる. +このプリフィックスを用いることで,PDFには埋め込まれない「名前だけの」 +和文フォントを指定することができる.「標準的な」和文フォント, +つまり`Ryumin-Light'と`GothicBBB-Medium'の指定でこのプリフィックスが使われる. +% +%<*zh> +除使用\texttt{file:}和\texttt{name:}外,我们还可以在\verb!\jfont!(以及\verb!\font!) +中使用\texttt{psft:}来设定一个“名义上”的并不嵌入PDF中的日文字体。 +此前缀的典型使用是定义“标准”日文字体,即“Ryumin-Light”和“GothicBBB-Medium”。 +\paragraph{\texttt{cid}键} 默认使用\texttt{psft:}前缀定义的字体是为Adobe-Japan1-6 CID字体。 +也可以使用\texttt{cid}键来使用其他的CID字体,如中文和韩文。 +% + +%\paragraph{\texttt{cid} key} +%\paragraph{\texttt{cid}キー} \label{para-cid} - \texttt{cid} key, ... +%<*en> +The default font defined by using \texttt{psft:} prefix is for Japanese typesetting; +it is Adobe-Japan1-6 CID-keyed font. +One can specify \texttt{cid} key to use other CID-keyed non-embedded fonts +for Chinese or Korean typesetting. +\begin{lstlisting}[numbers=left] +\jfont\testJ={psft:Ryumin-Light:cid=Adobe-Japan1-6;jfm=jis} % Japanese +\jfont\testD={psft:Ryumin-Light:jfm=jis} % default value is Adobe-Japan1-6 +\jfont\testC={psft:AdobeMingStd-Light:cid=Adobe-CNS1-5;jfm=jis} % Traditional Chinese +\jfont\testG={psft:SimSun:cid=Adobe-GB1-5;jfm=jis} % Simplified Chinese +\jfont\testK={psft:Batang:cid=Adobe-Korea1-2;jfm=jis} % Korean +\end{lstlisting} +Note that the code above specifies \texttt{jfm-jis.lua}, which is for Japanese fonts, +as JFM for Chinese and Korean fonts. +% +%<*ja> +標準で\texttt{psft:}プリフィックスで定義されるフォントは日本語用のもので +あり,Adobe-Japan1-6のCIDに対応したものとなる.しかし,\LuaTeX-jaは中国語 +の組版にも威力を発揮することが分かり,日本語フォントでない非埋込フォント +の対応も必要となった.そのために追加されたのが\texttt{cid}キーである. +\texttt{cid}キーに値を指定すると,そのCIDを持った非埋込フォントを定義することができる: +\begin{lstlisting}[numbers=left] +\jfont\testJ={psft:Ryumin-Light:cid=Adobe-Japan1-6;jfm=jis} % 日本語 +\jfont\testD={psft:Ryumin-Light:jfm=jis} % 無指定時は Adobe-Japan1-6 +\jfont\testC={psft:AdobeMingStd-Light:cid=Adobe-CNS1-5;jfm=jis} % 中国語繁体字 +\jfont\testG={psft:SimSun:cid=Adobe-GB1-5;jfm=jis} % 中国語簡体字 +\jfont\testK={psft:Batang:cid=Adobe-Korea1-2;jfm=jis} % 韓国語 +\end{lstlisting} +上のコードでは中国語・韓国語用フォントに対してもJFMに +日本語用の\texttt{jfm-jis.lua}を指定しているので注意されたい. +% + +%<*en> +At present, \LuaTeX-ja supports only 4 values written in the sample code above. +Specifying other values, e.g., +% +%<*ja> +今のところ,\LuaTeX-jaは上のサンプルコード中に書いた4つの値しかサポートしていない. +% +\begin{lstlisting} +\jfont\test={psft:Ryumin-Light:cid=Adobe-Japan2;jfm=jis} +\end{lstlisting} +%<*en> +occurs the following error: +% +%<*ja> +のようにそれら以外の値を指定すると, +% +\begin{lstlisting}[numbers=left] +! Package luatexja Error: bad cid key `Adobe-Japan2'. + +See the luatexja package documentation for explanation. +Type H for immediate help. + + \par +l.78 + +? h +I couldn't find any non-embedded font information for the CID +`Adobe-Japan2'. For now, I'll use `Adobe-Japan1-6'. +Please contact the LuaTeX-ja project team. +? +\end{lstlisting} +%<*ja> +というエラーが出る. +% %\subsection{Structure of JFM file} -%\subsection{JFM ファイルの構造} +%\subsection{JFMファイルの構造} +%\subsection{JFM结构} %<*en> A JFM file is a Lua script which has only one function call: % %<*ja> -JFM ファイルはただ一つの関数呼び出しを含む Lua スクリプトである: +JFMファイルはただ一つの関数呼び出しを含むLuaスクリプトである: % +%<*zh> +JFM文件为下列函数调用的Lua脚本: +% \begin{verbatim} luatexja.jfont.define_jfm { ... } \end{verbatim} @@ -1934,36 +2749,48 @@ floating-point numbers in design-size unit. %<*ja> 実際のデータは上で \verb+{ ... }+ で示されたテーブルの中に格納されている. 以下ではこのテーブルの構造について記す. -なお,JFM ファイル中の長さは全て design-size を単位とする浮動小数点数であることに +なお,JFMファイル中の長さは全てdesign-sizeを単位とする浮動小数点数であることに 注意する. % +%<*zh> +实际的数据保存在表中,即如上的\verb!{ ... }!。 +以下部分描述表结构。 +请注意,在JFM中的所有长度都是按照以design-size为单位的浮点数。 +% \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}\advance\leftmargin1\zw} \item[dir=] %(required) %(必須) +%(必须) %The direction of JFM. At the present, only \texttt{'yoko'} is supported. -%JFM の書字方向.現時点では \texttt{'yoko'} のみがサポートされる. +%JFMの書字方向.現時点では\texttt{'yoko'}のみがサポートされる. +%JFM的方向,现在只支持\texttt{yoko}(水平)。 \item[zw=] %(required) %(必須) +%(必须) %The amount of the length of the `full-width'. %「全角幅」の長さ. +%“全角”长度。 \item[zh=] %(required) %(必須) +%(必须) %The amount of the length of the `full-height' (height + depth). -%「全角高さ」(height + depth)の長さ. +%「全角高さ」(height + depth)の長さ. +%“全角高度”(height + depth)长度。 \item[kanjiskip=\{, , \}] %(optional) %(任意) +%(可选) %<*en> This field specifies the `ideal' amount of \Param{kanjiskip}. As noted @@ -1974,25 +2801,34 @@ This field specifies the `ideal' amount of \Param{kanjiskip}. As noted fields are in design-size unit too. % %<*ja> -「理想的な」 \Param{kanjiskip} の量を指定する.\ref{subs-kskip} 節で述べたように, -もし \Param{kanjiskip} が \verb+\maxdimen+ の値ならば,このフィールドで指定された -値が実際には用いられる(もしこのフィールドが JFM で指定されていなければ, -0\,pt であるものとして扱われる). と のフィールドも design-size +「理想的な」\Param{kanjiskip}の量を指定する.\ref{subs-kskip}節で述べたように, +もし\Param{kanjiskip}が \verb+\maxdimen+ の値ならば,このフィールドで指定された +値が実際には用いられる(もしこのフィールドがJFMで指定されていなければ, +0\,ptであるものとして扱われる).とのフィールドもdesign-size が単位であることに注意せよ. % +%<*zh> +这部分为“理想长度”\Param{kanjiskip}。\ref{subs-kskip}节有详述,如果参数\Param{kanjiskip} +为\verb!\maxdimen!,则值设定将会被使用(若再JFM中未设定,则被视为0\,pt)。 +请注意,和的长度均为design-size单位。 +% \item[xkanjiskip=\{, , \}] %(optional) %(任意) +%(可选) %<*en> Like the \Param{kanjiskip} field, this field specifies the `ideal' amount of \Param{xkanjiskip}. % %<*ja> -\Param{kanjiskip} フィールドと同様に,\Param{xkanjiskip} の「理想的な」量を +\Param{kanjiskip}フィールドと同様に,\Param{xkanjiskip}の「理想的な」量を 指定する. % +%<*zh> +和\Param{kanjiskip}类似,此部分设定\Param{xkanjiskip}的“理想长度”。 +% \end{list} %<*en> @@ -2004,17 +2840,23 @@ always present, so each JFM file must have a sub-table whose index is the following fields: % %<*ja> -上記のフィールドに加えて,JFM ファイルはそのインデックスが自然数であるいくつかの -サブテーブルを持つ.インデックスが $i\in\omega$ であるテーブルは「文字クラス」$i$ の -情報を格納する.少なくとも,文字クラス0は常に存在するので,JFM ファイルはインデックス -が \texttt{[0]} のサブテーブルを持たなければならない.それぞれのサブテーブル -(そのインデックスを $i$ で表わす)は以下のフィールドを持つ: +上記のフィールドに加えて,JFMファイルはそのインデックスが自然数であるいくつかの +サブテーブルを持つ.インデックスが$i\in\omega$であるテーブルは「文字クラス」$i$の +情報を格納する.少なくとも,文字クラス0は常に存在するので,JFMファイルはインデックス +が\texttt{[0]}のサブテーブルを持たなければならない.それぞれのサブテーブル +(そのインデックスを$i$で表わす)は以下のフィールドを持つ: % +%<*zh> +除了上面涉及到的内容,JFM文件中还有几个以自然数进行声明的次级表。 +这些表依靠满足$i\in\omega$的“字符类”$i$来索引。 +一般,最少需要的是字符类0,故每一个JFM文件必须有次级表索引为\texttt{[0]}。 +% \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}\advance\leftmargin1\zw} \item[chars=\{, ...\}] %(required except character class~0) %(文字クラス0を除いて必須) +%(字符类0外必须) %<*en> This field is a list of characters which are in this character @@ -2028,17 +2870,24 @@ This field is a list of characters which are in this character characters' which specified in the list. We will describe these later. % %<*ja> -このフィールドは文字クラス~$i$ に属する文字のリストである.このフィールドは $i=0$ の -場合には必須ではない.なぜならば,文字クラス 0 には,0 以外の文字クラスに属するものを -除いた全ての \textbf{JAchar} が属するからである(よって,文字クラス 0 はほとんどの -\textbf{JAchar} を含む).このリストでは,文字はその文字コードを用いて,もしくは +このフィールドは文字クラス$i$に属する文字のリストである.このフィールドは$i=0$の +場合には必須ではない.なぜならば,文字クラス0には,0以外の文字クラスに属するものを +除いた全ての\textbf{JAchar}が属するからである(よって,文字クラス0はほとんどの +\textbf{JAchar}を含む).このリストでは,文字はその文字コードを用いて,もしくは 文字それ自体(長さ1の文字列)によって指定される.さらに,このリストで指定される 「仮想的な文字」も存在する.これらについては後に記す. % +%<*zh> +这部分为字符集$i$的字符列表。当$i=0$时不需要设定此部分,因为不在字符集0种的\textbf{JAchar} +字符都包含在字符集0中(也就是字符集0包含大多数的\textbf{JAchar})。在这个字符列表中,每一个 +字符据可以使用其编码,或者字符本身(长度为1的字符串)。另外还有部分“假想字符”可在此列表中 +使用。我们会在下面描述。 +% \item[width=, height=, depth=, italic=] %(required) %(必須) +%(必须) %<*en> Specify width of characters in character class~$i$, height, depth and @@ -2047,12 +2896,17 @@ 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 % %<*ja> -文字クラス~$i$ に属する文字の幅,高さ,深さ,イタリック補正の量を指定する. -文字クラス~$i$ に属する全ての文字は,その幅,高さ,深さがこのフィールドで指定した +文字クラス$i$に属する文字の幅,高さ,深さ,イタリック補正の量を指定する. +文字クラス$i$に属する全ての文字は,その幅,高さ,深さがこのフィールドで指定した 値であるものとして扱われる. -しかし,例外が一つある:もし \texttt{'prop'} が \texttt{width} フィールドに +しかし,例外が一つある:もし\texttt{'prop'}が\texttt{width}フィールドに 指定された場合,文字の幅はその「実際の」グリフの幅となる. % +%<*zh> +设定字符类$i$的宽度,高度和深度以及意大利体校正。在字符集$i$中,所有字符的宽度,高度 +和深度的值为上述设定之值。不过还有例外,如果\texttt{'prop'}设定了\texttt{width}部分,那么 +字符的宽度则为其“真实”字形宽度。 +% \item[left=, down=, align=]\ @@ -2067,12 +2921,18 @@ The effects of these 3~fields are indicated in Figure~\ref{fig-pos}. % %<*ja> これらのフィールドは「実際の」グリフの位置を調整するためにある. -\texttt{align} フィールドに指定できる値は \texttt{'left'}, \texttt{'middle'}, -\texttt{'right'} のいずれかである.もしこれら3つのフィールドのうちの1つが省かれた -場合,\texttt{left} と \texttt{down} は 0,\texttt{align} フィールドは -\texttt{'left'} であるものとして扱われる. -これら3つのフィールドの意味については図\ref{fig-pos} で説明する. +\texttt{align}フィールドに指定できる値は\texttt{'left'}, \texttt{'middle'}, +\texttt{'right'}のいずれかである.もしこれら3つのフィールドのうちの1つが省かれた +場合,\texttt{left}と\texttt{down}は0,\texttt{align}フィールドは +\texttt{'left'}であるものとして扱われる. +これら3つのフィールドの意味については図\ref{fig-pos}で説明する. % +%<*zh> +此部分为“真实”字形对齐位置。\texttt{align}的合法值为\texttt{'left'}, +\texttt{'middle'}和\texttt{'right'}。如此三项被省略,则\texttt{left}和 +\texttt{down}被视作0,\texttt{align}被视作\texttt{'left'}。 +此部分三个域的作用,请参见图\ref{fig-pos}。 +% %<*en> In most cases, \texttt{left} and \texttt{down} fields are~0, while @@ -2081,12 +2941,17 @@ For example, setting the \texttt{align} field to \texttt{'right'} is practically when the current character class is the class for opening delimiters'. % %<*ja> -多くの場合,\texttt{left} と \texttt{down} は 0 である一方, -\texttt{align} フィールドが \texttt{'middle'} や \texttt{'right'} であることは +多くの場合,\texttt{left}と\texttt{down}は0である一方, +\texttt{align}フィールドが\texttt{'middle'}や\texttt{'right'}であることは 珍しいことではない. -例えば,\texttt{align} フィールドを \texttt{'right'} に指定することは, +例えば,\texttt{align}フィールドを\texttt{'right'}に指定することは, 文字クラスが開き括弧類であるときに実際必要である. % +%<*zh> +在大多数情况下,\texttt{left}和\texttt{down}域为0,但是在\texttt{align}域为 +\texttt{'middle'}或者\texttt{'right'}时则是不正常的。例如,必须设定\texttt{align} +为\texttt{'right'}时,则当前字符类必须为开定界符。 +% \begin{figure}[!tb] \begin{minipage}{0.4\textwidth}% \begin{center}\unitlength=10pt\small @@ -2146,9 +3011,12 @@ Consider a node containing Japanese character whose value of the \texttt{align} field is \texttt{'middle'}. % %<*ja> -\texttt{align} フィールドの値が \texttt{'middle'} である和文文字を含むノードを +\texttt{align}フィールドの値が\texttt{'middle'}である和文文字を含むノードを 考えよう. % +%<*zh> +假定一个node包含日语字符,且其值为\texttt{align}的\texttt{'middle'}。 +% \begin{itemize} \item %<*en> @@ -2157,17 +3025,23 @@ Its width, height and depth are specified by JFM. % %<*ja> 黒色の長方形はノードの枠である. -その幅,高さ,深さは JFM によって指定される. +その幅,高さ,深さはJFMによって指定される. % +%<*zh> +黑色长方形为node框。其宽度,高度,深度均为JFM所设定。 +% \item %<*en> Since the \texttt{align} field is \texttt{'middle'}, the `real' glyph is centered horizontally (the green rectangle). % %<*ja> -\texttt{align} フィールドは \texttt{middle} なので,「実際の」グリフは +\texttt{align}フィールドは\texttt{middle}なので,「実際の」グリフは 水平方向の中心に配置される(緑色の長方形). % +%<*zh> +因\texttt{align}被设定为\texttt{middle},故“真实”字形为水平居中(绿长方形中)。 +% \item %<*en> Furthermore, the glyph is shifted according to values of fields @@ -2175,14 +3049,18 @@ Furthermore, the glyph is shifted according to values of fields glyph is indicated by the red rectangle. % %<*ja> -さらに,グリフは \texttt{left} と \texttt{down} の値に従ってシフトされる. +さらに,グリフは\texttt{left}と\texttt{down}の値に従ってシフトされる. 最終的な実際のグリフの位置は赤色の長方形で示された位置になる. % +%<*zh> +此外,字形移位由\texttt{left}和\texttt{down}决定。最终字形位置为红长方形所示。 +% \end{itemize} \end{minipage} \caption{ %The position of the `real' glyph. %「実際の」グリフの位置. +%“真实”字形位置 } \label{fig-pos} \end{figure} @@ -2206,43 +3084,55 @@ The following is the list of `imaginary characters': クラス0の文字」として扱われていた文字であり,その結果として\pTeX より細か い組版調整ができるようになっている.以下でその一覧を述べる: % +%<*zh> +如上所述,你可以在\texttt{chars}中设定多个“假想字符”。这些字符中的多数字符在 +\pTeX 中式被视作字符集0中字符。故此,\LuaTeX-ja可以比\pTeX 做得更好。 +下列为“假想字符”列表: +% \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}\advance\leftmargin1\zw} \item['lineend'] %An ending of a line. %行の終端を表す. +%行尾结束字符。 \item['diffmet'] %Used at a boundary between two \textbf{JAchar}s whose JFM or size is different. -%JFM やサイズが異なる2つの \textbf{JAchar} の間の境界として用いられる. +%JFMやサイズが異なる2つの\textbf{JAchar}の間の境界として用いられる. +%用于两个不同大小或不同JFM的两个\textbf{JAchar}间边界。 \item['boxbdd'] %The beginning/ending of a horizontal box, and the beginning of a noindented paragraph. -%hboxの先頭と末尾,及びインデントされていない(\verb+\noindent+で開始された)段落の先頭を表す. +%水平ボックスの先頭と末尾,及びインデントされていない(\verb+\noindent+ で開始された)段落の先頭を表す. +%水平合字结束或结尾,以及未缩进段落开头。 \item['parbdd'] %The beginning of an (indented) paragraph. -%通常の(\verb+\noindent+で開始されていない)段落の先頭. +%通常の(\verb+\noindent+ で開始されていない)段落の先頭. +%缩进段落开头。 \item['jcharbdd'] -%A boundary between \textbf{JAchar} and anything else (such as \textbf{ALchar}, kern, glue, ...). +%A boundary between \textbf{JAchar} and anything else (such as \textbf{ALchar}, kern, glue,\,\ldots). %和文文字と「その他のもの」(欧文文字,glue,kern等)との境界. +%日文字符和其他(如\textbf{ALchar},胶,出格等)边界。 \item[$-1$] %The left/right boundary of an inline math formula. %行中数式と地の文との境界. +%行中数学式的左/右边界。 \end{list} %\paragraph{Porting JFM from \pTeX} -%\paragraph{\pTeX 用和文フォントメトリックの移植} +%\paragraph{\pTeX 用和文用TFMの移植} +%\paragraph{\pTeX 下使用的TFM移植} % ToDo: English version. %<*en> -... +\ldots % %<*ja> -以下に,\pTeX 用和文フォントメトリックを\LuaTeX-ja用に移植する場合の注意点を挙げておく. +以下に,\pTeX 用に作られた和文用TFMを\LuaTeX-ja用に移植する場合の注意点を挙げておく. \begin{itemize} \item 実際に出力される和文フォントのサイズがdesign sizeとなる. このため,例えば$1\,\textrm{zw}$がdesign sizeの0.962216倍であるJISフォン @@ -2261,20 +3151,19 @@ The following is the list of `imaginary characters': 文字クラスに関してはグルー/カーンの設定はしない. これは,\pTeX では, - 水平ボックスの先頭・末尾とインデントされていない(\verb+\noindent+で開始さ + 水平ボックスの先頭・末尾とインデントされていない(\verb+\noindent+ で開始さ れた)段落の先頭にはJFMグルーは入らないという仕様を実現させるためである. \item \pTeX の組版を再現させようというのが目的であれば以上の注意を守れば十分である. ところで,\pTeX では通常の段落の先頭にJFMグルーが残るという仕様があるので, 段落先頭の開き括弧は全角二分下がりになる.全角下がりを実現させるに - は,段落の最初に手動で\verb+\inhibitglue+を追加するか,あるいは - \verb+\everypar+のhackを行い,それを自動化させるしかなかった. + は,段落の最初に手動で \verb+\inhibitglue+ を追加するか,あるいは + \ \verb+\everypar+ のハックを行い,それを自動化させるしかなかった. 一方,\LuaTeX-jaでは,\texttt{'parbdd'}によって,それがJFM側で調整できるよ うになった.例えば,\LuaTeX-ja同梱のJFMのように,\texttt{'boxbdd'}と同じ文字クラスに \texttt{'parbdd'}を入れれば全角下がりとなる. -\ltjsetparameter{jacharrange={+3}} \begin{LTXexample} \jfont\g=psft:Ryumin-Light:jfm=test \g \parindent1\zw\noindent{}◆◆◆◆◆ @@ -2283,11 +3172,21 @@ The following is the list of `imaginary characters': \par 〔◆◆←全角二分下がり \end{LTXexample} \end{itemize} -\ltjsetparameter{jacharrange={-3}} + +但し,\verb+\everypar+ を利用している場合にはこの仕組みは正しく動かない. +そのような例としては箇条書き中の \verb+\item+ で始まる段落があり,\Pkg{ltjsclasses}では +人工的に「\texttt{'parbdd'}の意味を持つ」whatsitノードを作ることによって対処している% +\footnote{\texttt{no\_runtime/ltjsclasses.dtx} を参照されたい. +JFM側で一部の対処ができることにより,\Pkg{jsclasses}のようにif文の判定はしていない.} % +%<*zh> +下面,给出用于\pTeX 使用的JFM移植到\LuaTeX-ja过程中需要注意的几点。 +% + %\subsection{Math Font Family} %\subsection{数式フォントファミリ} +%\subsection{数学字体族} \label{ssec-math} %<*en> @@ -2299,8 +3198,8 @@ an external package is needed to support this in plain \TeX\ and % %<*ja> \TeX\ は数式フォントを16のファミリ\footnote{Omega, Aleph, \LuaTeX,そして - $\varepsilon$-\kern-.125em(u)\pTeX\ では256 の数式ファミリを扱うことができるが, - これをサポートするために plain \TeX と \LaTeX では外部パッケージを読み込む必要が + $\varepsilon$-\kern-.125em(u)\pTeX\ では256の数式ファミリを扱うことができるが, + これをサポートするためにplain \TeX と\LaTeX では外部パッケージを読み込む必要が ある.}で管理し,それぞれのファミリは3つのフォントを持っている:\verb+\textfont+, \verb+\scriptfont+ そして \verb+\scriptscriptfont+ である. % @@ -2312,8 +3211,8 @@ font families. There is no relation between the value of you can set both \verb+\fam+ and \verb+\jfam+ to the same value. % %<*ja> -\LuaTeX-ja の数式中での和文フォントの扱いも同様である. -表 \ref{tab-math} は数式フォントファミリに対する \TeX\ のプリミティブと対応する +\LuaTeX-jaの数式中での和文フォントの扱いも同様である. +表\ref{tab-math}は数式フォントファミリに対する \TeX のプリミティブと対応する ものを示している.\verb+\fam+ と \verb+\jfam+ の値の間には関係はなく, 適切な設定の下では \verb+\fam+ と \verb+\jfam+ の両方に同じ値を設定することができる. % @@ -2321,12 +3220,14 @@ you can set both \verb+\fam+ and \verb+\jfam+ to the same value. \begin{table}[!tb] %\caption{Primitives for Japanese math fonts.} %\caption{和文数式フォントに対するプリミティブ.} +%\caption{日语数学字体基本语句} \label{tab-math} \begin{center}\def\{{\char`\{}\def\}{\char`\}} \begin{tabular}{lll} \toprule %&Japanese fonts&alphabetic fonts\\ %&和文フォント&欧文フォント\\ +%&日文字体&西文字体\\ \midrule font family&\verb+\jfam+${}\in [0,256)$&\verb+\fam+\\ text size&\tt\Param{jatextfont}\,=\{,\}&\tt\verb+\textfont+=\\ @@ -2339,27 +3240,29 @@ scriptscript size&\tt\Param{jascriptscriptfont}\,=\{,\}&\tt\ver %\subsection{Callbacks} %\subsection{コールバック} +%\subsection{回调} %<*en> Like \LuaTeX\ itself, \LuaTeX-ja also has callbacks. These callbacks can be accessed via \verb+luatexbase.add_to_callback+ function and so on, as other callbacks. % %<*ja> -\LuaTeX 自体のものに加えて,\LuaTeX-ja もコールバックを持っている. +\LuaTeX 自体のものに加えて,\LuaTeX-jaもコールバックを持っている. これらのコールバックには,他のコールバックと同様に \verb+luatexbase.add_to_callback+ 関数などを用いることでアクセスすることができる. % \begin{list}{}% {\def\makelabel#1{\bfseries#1}} %\item[\texttt{luatexja.load\_jfm} callback] -%\item[\texttt{luatexja.load\_jfm} コールバック] +%\item[\texttt{luatexja.load\_jfm}コールバック] +%\item[\texttt{luatexja.load\_jfm}回调] %<*en> With this callback you can overwrite JFMs. This callback is called when a new JFM is loaded. % %<*ja> -このコールバックを用いることで JFM を上書きすることができる. -このコールバックは新しい JFM が読み込まれるときに呼び出される. +このコールバックを用いることでJFMを上書きすることができる. +このコールバックは新しいJFMが読み込まれるときに呼び出される. % \begin{lstlisting}[numbers=left] @@ -2374,8 +3277,8 @@ this argument has \texttt{chars} field which contains character codes whose character class is not~0. % %<*ja> -引数 \verb+jfm_info+ は JFM ファイルのテーブルと似たものが格納されるが, -クラス0を除いた文字のコードを含んだ \texttt{chars} フィールドを持つ点が異なる. +引数 \verb+jfm_info+ はJFMファイルのテーブルと似たものが格納されるが, +クラス0を除いた文字のコードを含んだ\texttt{chars}フィールドを持つ点が異なる. % %<*en> @@ -2385,20 +3288,21 @@ An example of this callback is the \texttt{ltjarticle} class, with replace any code of \LuaTeX-ja. % %<*ja> -このコールバックの使用例は \texttt{ltjarticle} クラスにあり, -\texttt{jfm-min.lua} 中の \texttt{'parbdd'} を強制的にクラス0に割り当てている. -このコールバックは \LuaTeX-ja のコードを書き換えない. +このコールバックの使用例は\texttt{ltjarticle}クラスにあり, +\texttt{jfm-min.lua}中の\texttt{'parbdd'}を強制的にクラス0に割り当てている. +このコールバックは\LuaTeX-jaのコードを書き換えない. % %\item[\texttt{luatexja.define\_font} callback] -%\item[\texttt{luatexja.define\_font} コールバック] +%\item[\texttt{luatexja.define\_font}コールバック] +%\item[\texttt{luatexja.define\_font}回调] %<*en> This callback and the next callback form a pair, and you can assign letters which don't have 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. % %<*ja> -このコールバックと次のコールバックは組をなしており,Unicode 中に固定された文字コード +このコールバックと次のコールバックは組をなしており,Unicode中に固定された文字コード 番号を持たない文字を非零の文字クラスに割り当てることができる. このコールバックは新しい和文フォントが読み込まれたときに呼び出される. % @@ -2418,15 +3322,18 @@ You may assume that \verb+jfont_info+ has the following fields: \begin{description} \item[\tt jfm] %The index number of JFM. -%JFM のインデックス番号. +%JFMのインデックス番号. +%JFM索引编号。 \item[\tt size] %Font size in a scaled point (${}=2^{-16}\,\textrm{pt}$). -%スケールド・ポイント (${}=2^{-16}\,\textrm{pt}$) を単位としたフォントのサイズ. +%スケールド・ポイント(${}=2^{-16}\,\textrm{pt}$)を単位としたフォントのサイズ. +%以参照点(${}=2^{-16}\,\textrm{pt}$)为点位的字体大小。 \item[\tt var] %The value specified in \texttt{jfmvar=...} at a call of \verb+\jfont+. -%\verb+\jfont+ の呼び出しの際に \texttt{jfmvar=...} で指定された値. +%\verb+\jfont+ の呼び出しの際に\texttt{jfmvar=...}で指定された値. +%\verb!\jfont!调用的\texttt{jfmvar=...}值。 \end{description} %<*en> @@ -2445,21 +3352,22 @@ A good example of this and the next callbacks is the \Pkg{luatexja-otf} code of \LuaTeX-ja. % %<*ja> -これと次のコールバックの良い使用例は \Pkg{luatexja-otf} パッケージであり, -JFM 中で Adobe-Japan1 CID の文字を \verb+"AJ1-xxx"+ の形で指定するために +これと次のコールバックの良い使用例は\Pkg{luatexja-otf}パッケージであり, +JFM中でAdobe-Japan1 CIDの文字を \verb+"AJ1-xxx"+ の形で指定するために 用いられている. -このコールバックは \LuaTeX-ja のコードを書き換えない. +このコールバックは\LuaTeX-jaのコードを書き換えない. % %\item[\texttt{luatexja.find\_char\_class} callback] -%\item[\texttt{luatexja.find\_char\_class} コールバック] +%\item[\texttt{luatexja.find\_char\_class}コールバック] +%\item[\texttt{luatexja.find\_char\_class}回调] %<*en> This callback is called just when \LuaTeX-ja is trying to determine which character class a character \verb+chr_code+ belongs. A function used in this callback should be in the following form: % %<*ja> -このコールバックは \LuaTeX-ja が \verb+chr_code+ の文字がどの文字クラスに +このコールバックは\LuaTeX-jaが \verb+chr_code+ の文字がどの文字クラスに 属するかを決定しようとする際に呼び出される. このコールバックで呼び出される関数は次の形をしていなければならない: % @@ -2482,10 +3390,10 @@ The argument \verb+char_class+ is the result of \LuaTeX-ja's default default routine. % %<*ja> -引数 \verb+char_class+ は \LuaTeX-ja のデフォルトルーチンか,このコールバックの +引数 \verb+char_class+ は\LuaTeX-jaのデフォルトルーチンか,このコールバックの 直前の関数呼び出しの結果を含んでおり,したがってこの値は0ではないかもしれない. さらに,戻り値の \verb+new_char_class+ は \verb+char_class+ が非零のときには -\verb+char_class+ の値と同じであるべきで,そうでないときは \LuaTeX-ja の +\verb+char_class+ の値と同じであるべきで,そうでないときは\LuaTeX-jaの デフォルトルーチンを書き換えることになる. % @@ -2493,19 +3401,23 @@ The argument \verb+char_class+ is the result of \LuaTeX-ja's default This callback doesn't replace any code of \LuaTeX-ja. % %<*ja> -このコールバックは \LuaTeX-ja のコードを書き換えない. +このコールバックは\LuaTeX-jaのコードを書き換えない. % +%<*zh> +此回调不会替换\LuaTeX-ja中任何代码。 +% %\item[\texttt{luatexja.set\_width} callback] -%\item[\texttt{luatexja.set\_width} コールバック] +%\item[\texttt{luatexja.set\_width}コールバック] +%\item[\texttt{luatexja.set\_width}回调] %<*en> This callback is called when \LuaTeX-ja is trying to encapsule a \textbf{JAchar} \textit{glyph\_node}, to adjust its dimension and position. % %<*ja> -このコールバックは \LuaTeX-ja が \textbf{JAchar} の寸法と位置を調節するために -その \textit{glyph\_node} をカプセル化しようとする際に呼び出される. +このコールバックは\LuaTeX-jaが\textbf{JAchar}の寸法と位置を調節するために +その\textit{glyph\_node}をカプセル化しようとする際に呼び出される. % \begin{lstlisting}[numbers=left] function ( shift_info,
jfont_info, char_class) @@ -2520,7 +3432,7 @@ The argument \verb+shift_info+ and the returned \verb+new_shift_info+ have % %<*ja> 引数 \verb+shift_info+ と戻り値の \verb+new_shift_info+ は -\texttt{down} と \texttt{left} のフィールドを持ち,これらの値は +\texttt{down}と\texttt{left}のフィールドを持ち,これらの値は 文字の下/左へのシフト量(スケールド・ポイント単位)である. % @@ -2537,7 +3449,7 @@ to be that of letters in the character class~0. For example, suppose that \end{itemize} Then, the position of glyphs is shifted up by \[ - \frac{88x}{88x+12x} (28y+5y) - 28y = \frac{26}{825}y= 0.03\dot1\dot5y. + \frac{88x}{88x+12x} (28y+5y) - 28y = \frac{26}{25}y= 1.04y. \] % %<*ja> @@ -2552,7 +3464,7 @@ Then, the position of glyphs is shifted up by \end{itemize} となっていたとする.すると,実際の文字の出力位置は, \[ - \frac{88x}{88x+12x} (28y+5y) - 28y = \frac{26}{825}y= 0.03\dot1\dot5y + \frac{88x}{88x+12x} (28y+5y) - 28y = \frac{26}{25}y= 1.04y. \] だけ上にずらされることになる. % @@ -2562,8 +3474,10 @@ Then, the position of glyphs is shifted up by %\section{Parameters} %\section{パラメータ} +%\section{参数} %\subsection{\texttt{\char92 ltjsetparameter} primitive} -%\subsection{\texttt{\char92 ltjsetparameter} プリミティブ} +%\subsection{\texttt{\char92 ltjsetparameter}プリミティブ} +%\subsection{\texttt{\char92 ltjsetparameter}基本参数} %<*en> As noted before, \verb+\ltjsetparameter+ and \verb+\ltjgetparameter+ are @@ -2575,10 +3489,10 @@ of \LuaTeX, see Section~\ref{sec-para}. % %<*ja> 先に述べたように,\verb+\ltjsetparameter+ と \verb+\ltjgetparameter+ は -\LuaTeX-ja のほとんどのパラメータにアクセスするためのプリミティブである. -\LuaTeX-ja が \pTeX のような文法(例えば,\verb+\prebreakpenalty`)=10000+)を -採用しない理由の一つは,\LuaTeX のソースにおける \verb+\hpack_filter+ -コールバックの位置にある.\ref{sec-para} 節を参照. +\LuaTeX-jaのほとんどのパラメータにアクセスするためのプリミティブである. +\LuaTeX-jaが\pTeX のような文法(例えば,\verb+\prebreakpenalty`)=10000+)を +採用しない理由の一つは,\LuaTeX のソースにおける \verb+hpack_filter+ +コールバックの位置にある.\ref{sec-para}節を参照. % %<*en> @@ -2596,7 +3510,7 @@ like other assignment. % %<*ja> \verb+\ltjsetparameter+ と \verb+\ltjglobalsetparameter+ はパラメータを -指定するためのプリミティブである.これらは \texttt{=} のリストを +指定するためのプリミティブである.これらは\texttt{=}のリストを 引数としてとる.許されるキーは次の節に記述する. \verb+\ltjsetparameter+ と \verb+\ltjglobalsetparameter+ の違いはスコープの 違いのみである. @@ -2627,13 +3541,14 @@ character other than space~`\texttt{\char32}'~(U+0020) has the category code 12~(other), while the space has 10~(space). % %<*ja> -\textbf{{\normalfont\tt\char92ltjgetparameter} の戻り値は常に文字列である.} -これは \texttt{tex.write()} によって出力しているためで,スペース `\texttt{\char32}'~(U+0020) を除いた文字のカテゴリーコードは全て 12~(other) となる. -一方,スペースのカテゴリーコードは 10~(space) である. +\textbf{{\normalfont\tt\char92ltjgetparameter}の戻り値は常に文字列である.} +これは\texttt{tex.write()}によって出力しているためで,スペース`\texttt{\char32}'~(U+0020)を除いた文字のカテゴリーコードは全て12~(other)となる. +一方,スペースのカテゴリーコードは10~(space)である. % %\subsection{List of Parameters} %\subsection{パラメータ一覧} +%\subsection{参数一览} \label{ssec-param} %<*en> @@ -2643,10 +3558,13 @@ in \pTeX, and symbols beside each parameter has the following meaning: % %<*ja> 以下は \verb+\ltjsetparameter+ に指定することができるパラメータの一覧である. -[\verb+\cs+] は \pTeX における対応物を示す. +[\verb+\cs+]は\pTeX における対応物を示す. また,それぞれのパラメータの右上にある記号には次の意味がある: % \begin{itemize} +%<*zh> +\item % avoiding from error ``Something's wrong--perhaps a missing \item.''. +% %<*en> \item No mark: values at the end of the paragraph or the hbox are adopted in the whole paragraph/hbox. @@ -2677,7 +3595,7 @@ Penalty value for suppressing orphans. This penalty is inserted just % %<*ja> パラグラフの最後の字が孤立して改行されるのを防ぐためのペナルティの値. -このペナルティは(日本語の)句読点として扱われない最後の \textbf{JAchar} の直後に +このペナルティは(日本語の)句読点として扱われない最後の\textbf{JAchar}の直後に 挿入される. % @@ -2689,9 +3607,9 @@ At the present version, the lowermost bit of indicates (see the description of \Param{jcharwidowpenalty} above). % %<*ja> -文字コードが の文字が持つ付加的な属性値 (attribute). -現在のバージョンでは, の最下位ビットが,その文字が句読点と -みなされるかどうかを表している(上の \Param{jcharwidowpenalty} の記述を参照). +文字コードがの文字が持つ付加的な属性値(attribute). +現在のバージョンでは,の最下位ビットが,その文字が句読点と +みなされるかどうかを表している(上の\Param{jcharwidowpenalty}の記述を参照). % \item[\Param{prebreakpenalty}\,=\{,\}] [\verb+\prebreakpenalty+]\ @@ -2723,18 +3641,21 @@ At the present version, the lowermost bit of indicates た(後から指定した方で上書きされる). \item pre, post合わせて256文字分の情報を格納することしかできなかった. \end{itemize} -という制限があったが,\LuaTeX-ja ではこれらの制限は解消されている. +という制限があったが,\LuaTeX-jaではこれらの制限は解消されている. % \item[\Param{jatextfont}\,=\{,\}] %[\verb+\textfont+ in \TeX] %[\TeX の \verb+\textfont+] +%[\TeX 的\verb+\textfont+] \item[\Param{jascriptfont}\,=\{,\}] %[\verb+\scriptfont+ in \TeX] %[\TeX の \verb+\scriptfont+] +%[\TeX 中的\verb+\scriptfont+] \item[\Param{jascriptscriptfont}\,=\{,\}] %[\verb+\scriptscriptfont+ in \TeX] %[\TeX の \verb+\scriptscriptfont+] +%[\TeX 中的\verb+\scriptscriptfont+] \item[\Param{yjabaselineshift}\,=$^\ast$]\ \item[\Param{yalbaselineshift}\,=$^\ast$] [\verb+\ybaselineshift+] @@ -2745,28 +3666,34 @@ Setting whether inserting \Param{xkanjiskip} is allowed before/after a \textbf{J The followings are allowed for : % %<*ja> -文字コードが の \textbf{JAchar} の前/後ろに \Param{xkanjiskip} の +文字コードがの\textbf{JAchar}の前/後ろに\Param{xkanjiskip}の 挿入を許すかどうかの設定. -以下の が許される: +以下のが許される: % \begin{description} %\item[0, \texttt{inhibit}] Insertion of \Param{xkanjiskip} is inhibited before the character, nor after the character. -%\item[0, \texttt{inhibit}] \Param{xkanjiskip} の挿入は文字の前/後ろのいずれでも禁止される. +%\item[0, \texttt{inhibit}] \Param{xkanjiskip}の挿入は文字の前/後ろのいずれでも禁止される. +%\item[0, \texttt{inhibit}] 插入文字前/后的\Param{xkanjiskip}均被禁止。 %\item[1, \texttt{preonly}] Insertion of \Param{xkanjiskip} is allowed before the character, but not after. -%\item[1, \texttt{preonly}] \Param{xkanjiskip} の挿入は文字の前では許されるが,後ろでは許されない. +%\item[1, \texttt{preonly}] \Param{xkanjiskip}の挿入は文字の前では許されるが,後ろでは許されない. +%\item[1, \texttt{preonly}] 文字前允许插入\Param{xkanjiskip},但其后不允许插入。 %\item[2, \texttt{postonly}] Insertion of \Param{xkanjiskip} is allowed after the character, but not before. -%\item[2, \texttt{postonly}] \Param{xkanjiskip} の挿入は文字の後ろでは許されるが,前では許されない. +%\item[2, \texttt{postonly}] \Param{xkanjiskip}の挿入は文字の後ろでは許されるが,前では許されない. +%\item[2, \texttt{postonly}] 文字后允许插入\Param{xkanjiskip},但之前不允许插入。 %\item[3, \texttt{allow}] Insertion of \Param{xkanjiskip} is allowed both before the character and after the character. This is the default value. -%\item[3, \texttt{allow}] \Param{xkanjiskip} の挿入は文字の前/後ろのいずれでも許される.これがデフォルトの値である. +%\item[3, \texttt{allow}] \Param{xkanjiskip}の挿入は文字の前/後ろのいずれでも許される.これがデフォルトの値である. +%\item[3, \texttt{allow}] 文字前后均可插入\Param{xkanjiskip}。此为默认值。 \end{description} %<*en> This parameter is similar to the \verb+\inhibitxspcode+ primitive of \pTeX, but not compatible with \verb+\inhibitxspcode+. % %<*ja> -このパラメータは \pTeX の \verb+\inhibitxspcode+ プリミティブと似ているが, +このパラメータは\pTeX の \verb+\inhibitxspcode+ プリミティブと似ているが, 互換性はない. % - +%<*zh> +此参数类似\pTeX 基本语句\verb!\inhibitxspcode!,但是和\verb!\inhibitxspcode!不兼容。 +% \item[\Param{alxspmode}\,=\{,\}] [\verb+\xspcode+] %<*en> @@ -2775,27 +3702,34 @@ Setting whether inserting \Param{xkanjiskip} is allowed before/after a The followings are allowed for : % %<*ja> -文字コードが の \textbf{ALchar} の前/後ろに \Param{xkanjiskip} の +文字コードがの\textbf{ALchar}の前/後ろに\Param{xkanjiskip}の 挿入を許すかどうかの設定. -以下の が許される: +以下のが許される: % \begin{description} %\item[0, \texttt{inhibit}] Insertion of \Param{xkanjiskip} is inhibited before the character, nor after the character. -%\item[0, \texttt{inhibit}] \Param{xkanjiskip} の挿入は文字の前/後ろのいずれでも禁止される. +%\item[0, \texttt{inhibit}] \Param{xkanjiskip}の挿入は文字の前/後ろのいずれでも禁止される. +%\item[0, \texttt{inhibit}] 插入文字前/后的\Param{xkanjiskip}均被禁止。 %\item[1, \texttt{preonly}] Insertion of \Param{xkanjiskip} is allowed before the character, but not after. -%\item[1, \texttt{preonly}] \Param{xkanjiskip} の挿入は文字の前では許されるが,後ろでは許されない. +%\item[1, \texttt{preonly}] \Param{xkanjiskip}の挿入は文字の前では許されるが,後ろでは許されない. +%\item[1, \texttt{preonly}] 文字前允许插入\Param{xkanjiskip},但其后不允许插入。 %\item[2, \texttt{postonly}] Insertion of \Param{xkanjiskip} is allowed after the character, but not before. -%\item[2, \texttt{postonly}] \Param{xkanjiskip} の挿入は文字の後ろでは許されるが,前では許されない. +%\item[2, \texttt{postonly}] \Param{xkanjiskip}の挿入は文字の後ろでは許されるが,前では許されない. +%\item[2, \texttt{postonly}] 文字后允许插入\Param{xkanjiskip},但之前不允许插入。 %\item[3, \texttt{allow}] Insertion of \Param{xkanjiskip} is allowed before the character and after the character. This is the default value. -%\item[3, \texttt{allow}] \Param{xkanjiskip} の挿入は文字の前/後ろのいずれでも許される.これがデフォルトの値である. +%\item[3, \texttt{allow}] \Param{xkanjiskip}の挿入は文字の前/後ろのいずれでも許される.これがデフォルトの値である. +%\item[3, \texttt{allow}] 文字前后均可插入\Param{xkanjiskip}。此为默认值。 \end{description} %<*en> Note that parameters \Param{jaxspmode} and \Param{alxspmode} use a common table, hence these two parameters are synonyms of each other. % %<*ja> -\Param{jaxspmode} と \Param{alxspmode} は共通のテーブルを用いているため, +\Param{jaxspmode}と\Param{alxspmode}は共通のテーブルを用いているため, これら2つのパラメータは互いの異名となっていることに注意する. % +%<*zh> +注意参数\Param{jaxspmode}和\Param{alxspmode}公用一个表,故这两个参数互为同义语。 +% \item[\Param{autospacing}\,=$^\ast$] [\verb+\autospacing+] \item[\Param{autoxspacing}\,=$^\ast$] [\verb+\autoxspacing+] @@ -2809,10 +3743,14 @@ Specify how glues/kerns between two \textbf{JAchar}s whose JFM (or size) are dif The allowed arguments are the followings: % %<*ja> -JFM(もしくはサイズ)が異なる2つの \textbf{JAchar} の間にグルー/カーンをどのように +JFM(もしくはサイズ)が異なる2つの\textbf{JAchar}の間にグルー/カーンをどのように 入れるかを指定うる. 許される値は以下の通り: % +%<*zh> +对于处理不同大小或者JFM的两种\textbf{JAchar}之间的胶/出格。 +有下列参数: +% \begin{description} \item[\texttt{average}] \item[\texttt{both}] @@ -2827,15 +3765,20 @@ JFM(もしくはサイズ)が異なる2つの \textbf{JAchar} の間にグ %\section{Other Primitives} %\section{その他のプリミティブ} +%\section{其他基本语句} %\subsection{Primitives for Compatibility} %\subsection{互換プリミティブ} +%\subsection{基本语句兼容性} %<*en> The following primitives are implemented for compatibility with \pTeX: % %<*ja> -以下のプリミティブは \pTeX との互換性のために実装されている: +以下のプリミティブは\pTeX との互換性のために実装されている: % +%<*zh> +下列基本语句的实现与\pTeX 兼容: +% \begin{list}{}{\def\makelabel{\ttfamily\char92 }\advance\leftmargin1\zw} \item[kuten] \item[jis] @@ -2846,18 +3789,22 @@ The following primitives are implemented for compatibility with \pTeX: \end{list} %\subsection{\texttt{\char92 inhibitglue} primitive} -%\subsection{\texttt{\char92 inhibitglue} プリミティブ} - +%\subsection{\texttt{\char92 inhibitglue}プリミティブ} +%\subsection{\texttt{\char92 inhibitglue}基本语句} %<*en> The primitive \verb+\inhibitglue+ suppresses the insertion of \textbf{JAglue}. The following is an example, using a special JFM that there will be a glue between the beginning of a box and `あ', and also between `あ' and `ウ'. % %<*ja> -\verb+\inhibitglue+ プリミティブは \textbf{JAglue} の挿入を抑制する. -以下は,ボックスの始めと`あ'の間,`あ'と`ウ'の間にグルーが入る特別な JFM を用いた例で +\verb+\inhibitglue+ プリミティブは\textbf{JAglue}の挿入を抑制する. +以下は,ボックスの始めと`あ'の間,`あ'と`ウ'の間にグルーが入る特別なJFMを用いた例で ある. % +%<*zh> +基本语句\verb!\inhibitglue!会压缩\textbf{JAchar}的插入。 +下面的例子使用了特殊的JFM。在一个盒子和“あ”之间,以及“あ”和“ウ”之间存在胶。 +% \begin{LTXexample} \jfont\g=psft:Ryumin-Light:jfm=test \g @@ -2865,7 +3812,7 @@ the beginning of a box and `あ', and also between `あ' and `ウ'. \inhibitglue\par\noindent あ1 \par\inhibitglue\noindent あ2 \par\noindent\inhibitglue あ3 -\par\inhibitglue\hrule あoff\inhibitglue ice +\par\hrule\noindent あoff\inhibitglue ice \end{LTXexample} %<*en> @@ -2874,27 +3821,33 @@ With the help of this example, we remark the specification of \verb+\inhibitglue %<*ja> この例を援用して,\verb+\inhibitglue+ の仕様について述べる. % +%<*zh> +如上例子,我们注意到\verb!\inhibtglue!的用法。 +% \begin{itemize} +%<*zh> +\item +% %<*en> \item The call of \verb+\inhibitglue+ in the (internal) vertical mode is - effective at the beginning of the next paragraph. This is realized - by hacking \verb+\everypar+. + simply ignored. % %<*ja> -\item \verb+\inhibitglue+ の垂直モード中での呼び出しは次の段落の始めで効力を持つ. - これは \verb+\everypar+ のハックによって実現されている. +\item \verb+\inhibitglue+ の垂直モード中での呼び出しは意味を持たない. +4行目の入力で有効にならないのは,\verb+\inhibitglue+ の時点では垂直モードであり, +\verb+\noindent+ の時点で水平モードになるからである. % %<*en> \item The call of \verb+\inhibitglue+ in the (restricted) horizontal mode is only effective on the spot; does not get over boundary of paragraphs. Moreover, \verb+\inhibitglue+ cancels ligatures and - kernings, as shown in line~4 of above example. + kernings, as shown in the last line of above example. % %<*ja> \item \verb+\inhibitglue+ の(制限された)水平モード中での呼び出しはその場でのみ 有効であり,段落の境界を乗り越えない. - さらに,\verb+\inhibitglue+ は上の例の4行目のようにリガチャとカーニングを + さらに,\verb+\inhibitglue+ は上の例の最終行のようにリガチャとカーニングを 打ち消す. % @@ -2908,9 +3861,11 @@ With the help of this example, we remark the specification of \verb+\inhibitglue %\section{Control Sequences for \LaTeXe} %\section{\LaTeXe 用のコントロールシーケンス} +%\section{\LaTeXe 下使用的控制序列} %\subsection{Patch for NFSS2} -%\subsection{NFSS2 へのパッチ} +%\subsection{NFSS2へのパッチ} +%\subsection{NFSS2补丁} \label{ssub-nfsspat} %<*en> @@ -2920,9 +3875,9 @@ For an convenience, we will describe commands which are not described in Subsection~\ref{ssub-chgfnt}. % %<*ja> -\ref{ssec-ltx} 節で述べたように,\LuaTeX-ja は NFSS2 への日本語パッチである -\pLaTeXe の \texttt{plfonts.dtx} を単純に取り入れている. -便宜のため,ここでは \ref{ssub-chgfnt} 節で述べていなかったコマンドについて +\ref{ssec-ltx}節で述べたように,\LuaTeX-jaはNFSS2への日本語パッチである +\pLaTeXe の\texttt{plfonts.dtx}を単純に取り入れている. +便宜のため,ここでは\ref{ssub-chgfnt}節で述べていなかったコマンドについて 記述しておく. % @@ -2938,9 +3893,9 @@ In NFSS2 under \LuaTeX-ja, distinction between alphabetic font families scheme for Japanese font family (in horizontal direction). % %<*ja> -\LuaTeX-ja の NFSS2 においては,欧文フォントファミリと和文フォントファミリは +\LuaTeX-jaのNFSS2においては,欧文フォントファミリと和文フォントファミリは そのエンコーディングからのみ作られる. -例えば,OT1 と T1 のエンコーディングは欧文フォントファミリに対するものであり, +例えば,OT1とT1のエンコーディングは欧文フォントファミリに対するものであり, 和文フォントファミリはこれらのエンコーディングを持つことはできない. このコマンドは和文フォントファミリ(横書き用)のための新しいエンコーディングを 定義する. @@ -2962,8 +3917,8 @@ The above 3~commands are just the counterparts for \verb+DeclareFontEncodingDefa % ToDo: en %<*ja> 和文・欧文の数式用フォントファミリを一度に変更する命令を作成する. -具体的には,欧文数式用フォントファミリ変更の命令 (\verb+\mathrm+等)と,和文数式用フォ - ントファミリ変更の命令(\verb+\mathmc+等)の2つを同時に行う命令として +具体的には,欧文数式用フォントファミリ変更の命令(\verb+\mathrm+ 等)と,和文数式用フォ + ントファミリ変更の命令(\verb+\mathmc+ 等)の2つを同時に行う命令として を(再)定義する.実際の使用ではと に同じものを指定する,すなわち,で和文側も変 更させるようにするのが一般的と思われる. @@ -2978,7 +3933,7 @@ The above 3~commands are just the counterparts for \verb+DeclareFontEncodingDefa \begin{itemize} \item ,~は既に定義されていなければならない.\verb+\reDeclareMathAlphabet+後に 両命令の内容を再定義しても,の内容にそれは反映されない. -\item ,~に\verb+\@mathrm+などと \texttt{@} をつけた命令を指定した時の動作は保証できない. +\item ,~に\verb+\@mathrm+などと\texttt{@}をつけた命令を指定した時の動作は保証できない. \end{itemize}} % @@ -3018,7 +3973,7 @@ Like \verb+\fontfamily+, \verb+\selectfont+ is required to take an effect. % \item[adjustbaseline] -... +\ldots \item[fontfamily\{\}] {\let\item\origitem @@ -3027,20 +3982,23 @@ As in \LaTeXe, this command changes current font family (alphabetic, Japanese,~\ to . Which family will be changed is determined as follows: % %<*ja> -元々の \LaTeXe におけるものと同様に,このコマンドは現在のフォントファミリ(欧文, -和文,\textbf{もしくは両方})を に変更する. +元々の\LaTeXe におけるものと同様に,このコマンドは現在のフォントファミリ(欧文, +和文,\textbf{もしくは両方})をに変更する. どのファミリが変更されるかは以下のようにして決定される: % \begin{itemize} +%<*zh> +\item +% %<*en> \item Let current encoding scheme for Japanese fonts be . Current Japanese font family will be changed to , if one of the following two conditions is met: % %<*ja> -\item 現在の和文フォントに対するエンコーディングが であるとしよう. +\item 現在の和文フォントに対するエンコーディングがであるとしよう. 現在の和文フォントファミリは,以下の2つの条件のうちの1つが満たされているときに - に変更される: + に変更される: % \begin{itemize} %<*en> @@ -3048,14 +4006,17 @@ to . Which family will be changed is determined as follows: \verb+\DeclareKanijFamily+. % %<*ja> -\item エンコーディング におけるファミリ が既に \verb+\DeclareKanjiFamily+ によって定義されている. +\item エンコーディングにおけるファミリが既に \verb+\DeclareKanjiFamily+ によって定義されている. % %<*en> \item A font definition named \texttt{.fd} (the file name is all lowercase) exists. % +%<*zh> +\item +% %<*ja> -\item フォント定義ファイル \texttt{.fd}(ファイル名は全て小文字)が存在する. +\item フォント定義ファイル\texttt{.fd}(ファイル名は全て小文字)が存在する. % \end{itemize} %<*en> @@ -3063,7 +4024,7 @@ to . Which family will be changed is determined as follows: . For alphabetic font family, the criterion as above is used. % %<*ja> -\item 現在の欧文フォントに対するエンコーディングを とする. +\item 現在の欧文フォントに対するエンコーディングをとする. 欧文フォントファミリに対しても,上記の基準が用いられる. % %<*en> @@ -3075,11 +4036,11 @@ In this case, the default family for font substitution is used for be set to , unlike the original implementation in \LaTeX. % %<*ja> -\item 上記のいずれもが適用されない,つまり が と の +\item 上記のいずれもが適用されない,つまりがとの どちらでも定義されないような場合がある. この場合,代替フォントに用いられるデフォルトのフォントファミリが欧文フォントと 和文フォントに用いられる.\LaTeX のオリジナルの実装とは異なり, - 現在のエンコーディングは には設定されないことに注意する. + 現在のエンコーディングはには設定されないことに注意する. % \end{itemize} } @@ -3117,35 +4078,40 @@ the following `font features' specifications are allowed for the commands of Japanese version: % %<*ja> -\ref{ssec-fontspec} 節で述べたように,この追加パッケージは \Pkg{fontspec} +\ref{ssec-fontspec}節で述べたように,この追加パッケージは\Pkg{fontspec} パッケージで定義されているコマンドに対応する和文フォント用のコマンドを提供する. -オリジナルの \Pkg{fontspec} での `font feature' に加えて,和文版のコマンドには -以下の `font feature' を指定することができる: +オリジナルの\Pkg{fontspec}での`font feature'に加えて,和文版のコマンドには +以下の`font feature'を指定することができる: % \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}\advance\leftmargin1\zw} +\item[CID=] \item[JFM=] -\item[JFM-var=] +\item[JFM-var=] \ %<*en> -These 2 font features correspond to \texttt{jfm} and \texttt{jfmvar} keys for -\verb+\jfont+ primitive, respectively. See Subsection~\ref{ssec-jfont}. +These 3 font features correspond to \texttt{cid}, \texttt{jfm} and +\texttt{jfmvar} keys for \verb+\jfont+ primitive, respectively. +\texttt{CID} is effective only when with \texttt{NoEmbed} +described below. +See Subsections~\ref{ssec-jfont} and \ref{ssec-psft} for details. % %<*ja> -これらの2つはそれぞれ \verb+\jfont+ プリミティブに対する -\texttt{jfm}, \texttt{jfmvar} キーとそれぞれ対応する. -\ref{ssec-jfont} 節を参照. +これら3つのキーはそれぞれ \verb+\jfont+ プリミティブに対する +\texttt{cid}, \texttt{jfm}, \texttt{jfmvar}キーとそれぞれ対応する. +\texttt{CID} は下の \texttt{NoEmbed} と合わせて用いられたときのみ有効である. +詳細は\ref{ssec-jfont}節と\ref{ssec-psft}節を参照. % \item[NoEmbed] %<*en> -By specifying this font feature, you can use `name-only' Japanese font which +By specifying this font feature, one can use `name-only' Japanese font which will not be embedded in the output PDF file. See Subsection~\ref{ssec-psft}. % %<*ja> -これを指定することで,PDF に埋め込まれない「名前だけ」のフォントを指定することが -できる.\ref{ssec-psft} 節を参照. +これを指定することで,PDFに埋め込まれない「名前だけ」のフォントを指定することが +できる.\ref{ssec-psft}節を参照. % \end{list} @@ -3157,8 +4123,8 @@ Adobe-Japan1. \texttt{luatexja-otf.sty} offers the following 2~low-level commands: % %<*ja> -この追加パッケージは Adobe-Japan1 の文字の出力をサポートする. -\texttt{luatexja-otf.sty} は以下の2つの低レベルコマンドを提供する: +この追加パッケージはAdobe-Japan1の文字の出力をサポートする. +\texttt{luatexja-otf.sty}は以下の2つの低レベルコマンドを提供する: % \begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}\advance\leftmargin1\zw} \item[\char92CID\{\}] @@ -3166,7 +4132,7 @@ commands: Typeset a character whose CID number is . % %<*ja> -CID 番号が の文字を出力する. +CID番号がの文字を出力する. % \item[\char92UTF\{\}] @@ -3176,8 +4142,8 @@ This command is similar to \verb+\char"+,\ %" but please remind remarks below. % %<*ja> -文字コードが(16進で) の文字を出力する. -このコマンドは \verb+\char"+ と似ているが,下の記述に注意すること.%" +文字コードが(16進で)の文字を出力する. +このコマンドは \verb+\char"+と似ているが,下の記述に注意すること.%" % \end{list} @@ -3192,11 +4158,14 @@ ordinary characters in the following points: 以下の点で通常の文字と異なる: % \begin{itemize} +%<*zh> +\item +% %<*en> \item Always treated as \textbf{JAchar}s. % %<*ja> -\item 常に \textbf{JAchar} として扱われる. +\item 常に\textbf{JAchar}として扱われる. % %<*en> \item Processing codes for supporting OpenType features (\textit{e.g.}, @@ -3205,13 +4174,13 @@ ordinary characters in the following points: % %<*ja> \item OpenType feature(例えばグリフ置換やカーニング)をサポートするための - \Pkg{luaotfload} パッケージのコードはこれらの文字には働かない. + \Pkg{luaotfload}パッケージのコードはこれらの文字には働かない. % \end{itemize} %\paragraph{Additional Syntax of JFM} -%\paragraph{JFM への記法の追加} +%\paragraph{JFMへの記法の追加} %<*en> \texttt{luatexja-otf.sty} extends the syntax of JFM; the entries of \texttt{ @@ -3220,9 +4189,9 @@ chars} table in JFM now allows a string in the form whose CID number in Adobe-Japan1 is \verb+xxx+. % %<*ja> -\texttt{luatexja-otf.sty} は JFM の記法を拡張する. -JFM の \texttt{chars} テーブルのエントリとして \verb+'AJ1-xxx'+ の形の文字列が -使えるようになる.これは Adobe-Japan1 における CID 番号が \verb+xxx+ の文字を表す. +\texttt{luatexja-otf.sty}はJFMの記法を拡張する. +JFMの\texttt{chars}テーブルのエントリとして \verb+'AJ1-xxx'+ の形の文字列が +使えるようになる.これはAdobe-Japan1におけるCID番号が \verb+xxx+ の文字を表す. % %\part{Implementations} @@ -3232,13 +4201,13 @@ JFM の \texttt{chars} テーブルのエントリとして \verb+'AJ1-xxx'+ の %\section{パラメータの保持} \label{sec-para} %\subsection{Used Dimensions, Attributes and whatsit nodes} -%\subsection{\LuaTeX-ja で用いられる寸法レジスタ,属性レジスタ,whatsit ノード} +%\subsection{\LuaTeX-jaで用いられる寸法レジスタ,属性レジスタ,whatsitノード} %<*en> Here the following is the list of dimensions and attributes which are used in \LuaTeX-ja. % %<*ja> -以下は \LuaTeX-ja で用いられる寸法レジスタ (dimension),属性レジスタ (attribute) の +以下は\LuaTeX-jaで用いられる寸法レジスタ(dimension),属性レジスタ(attribute)の リストである. % \begin{list}{}{% @@ -3249,12 +4218,12 @@ Here the following is the list of dimensions and attributes which are used in \L \dim{jQ} %<*en> -As explained in Subsection~\ref{ssec-plain}, \verb+\jQ+ is equal to +\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. % %<*ja> -\ref{ssec-plain} 節で述べたように,\verb+\jQ+ は $1\,\textrm{Q}=0.25\,\textrm{mm}$ +\verb+\jQ+ は$1\,\textrm{Q}=0.25\,\textrm{mm}$ と等しい.ここで,`Q'(もしくは「級」)は日本の写植で用いられる単位である.したがって, この寸法レジスタの値を変更してはならない. % @@ -3266,7 +4235,7 @@ There is also a unit called `歯' which equals to $0.25\,\textrm{mm}$ and \verb+\jH+ is a synonym of \verb+\jQ+. % %<*ja> -同じく写植で用いられていた単位として「歯」があり,これは $0.25\,\textrm{mm}$ と +同じく写植で用いられていた単位として「歯」があり,これも$0.25\,\textrm{mm}$と 等しい.\verb+\jH+ は \verb+\jQ+ の別名である. % @@ -3307,7 +4276,7 @@ The font index of current Japanese font. The character class of Japanese \textit{glyph\_node}. % %<*ja> -和文文字の \textit{glyph\_node} の文字クラス. +和文文字の\textit{glyph\_node}の文字クラス. % \attr{ltj@yablshift} @@ -3315,7 +4284,7 @@ The character class of Japanese \textit{glyph\_node}. The amount of shifting the baseline of alphabetic fonts in scaled point ($2^{-16}\,\textrm{pt}$). % %<*ja> -スケールド・ポイント ($2^{-16}\,\textrm{pt}$) を単位とした欧文フォントのベースラインの移動量. +スケールド・ポイント($2^{-16}\,\textrm{pt}$)を単位とした欧文フォントのベースラインの移動量. % \attr{ltj@ykblshift} @@ -3323,7 +4292,7 @@ The amount of shifting the baseline of alphabetic fonts in scaled point ($2^{-16 The amount of shifting the baseline of Japanese fonts in scaled point ($2^{-16}\,\textrm{pt}$). % %<*ja> -スケールド・ポイント ($2^{-16}\,\textrm{pt}$) を単位とした和文フォントのベースラインの移動量. +スケールド・ポイント($2^{-16}\,\textrm{pt}$)を単位とした和文フォントのベースラインの移動量. % \attr{ltj@autospc} @@ -3331,7 +4300,7 @@ The amount of shifting the baseline of Japanese fonts in scaled point ($2^{-16}\ Whether the auto insertion of \Param{kanjiskip} is allowed at the node. % %<*ja> -そのノードで \Param{kanjiskip} の自動挿入が許されるかどうか. +そのノードで\Param{kanjiskip}の自動挿入が許されるかどうか. % \attr{ltj@autoxspc} @@ -3339,7 +4308,7 @@ Whether the auto insertion of \Param{kanjiskip} is allowed at the node. Whether the auto insertion of \Param{xkanjiskip} is allowed at the node. % %<*ja> -そのノードで \Param{xkanjiskip} の自動挿入が許されるかどうか. +そのノードで\Param{xkanjiskip}の自動挿入が許されるかどうか. % \attr{ltj@icflag} @@ -3359,8 +4328,8 @@ Glues from an italic correction is needed in the insertion process of \Param{xkanjiskip}. % %<*ja> -イタリック補正 (\verb+\/+) によるグルー.このグルーの由来の区別(\verb+\kern+ か -\verb+\/+ か)は \Param{xkanjiskip} の挿入過程において必要になる. +イタリック補正(\verb+\/+)によるグルー.このグルーの由来の区別(\verb+\kern+ か +\verb+\/+ か)は\Param{xkanjiskip}の挿入過程において必要になる. % \item[\textit{packed} (2)] @@ -3370,7 +4339,7 @@ Glues from an italic correction Penalties inserted for the word-wrapping process of Japanese characters (\emph{kinsoku}). % %<*ja> -和文文字のワードラップ過程において挿入されたペナルティ (\emph{kinsoku}). +和文文字のワードラップ過程において挿入されたペナルティ(\emph{kinsoku}). % \item[\textit{from\_jfm} (4)] @@ -3378,15 +4347,16 @@ Penalties inserted for the word-wrapping process of Japanese characters (\emph{k Glues/kerns from JFM. % %<*ja> -JFM 由来のグルー/カーン. +JFM由来のグルー/カーン. % \item[\textit{line\_end} (5)] %<*en> -Kerns for ... +Kerns for \ldots % %<*ja> -カーン ... +和文文字が行末にきたとき,行末との間に挿入されるカーンである. +% ぶら下げ組への応用 % \item[\textit{kanji\_skip} (6)] @@ -3394,7 +4364,7 @@ Kerns for ... Glues for \Param{kanjiskip}. % %<*ja> -\Param{kanjiskip} のグルー. +\Param{kanjiskip}のグルー. % \item[\textit{xkanji\_skip} (7)] @@ -3402,15 +4372,15 @@ Glues for \Param{kanjiskip}. Glues for \Param{xkanjiskip}. % %<*ja> -\Param{xkanjiskip} のグルー. +\Param{xkanjiskip}のグルー. % \item[\textit{processed} (8)] %<*en> -Nodes which is already processed by ... +Nodes which is already processed by \ldots. % %<*ja> -... によって既に処理されたノード. +\LuaTeX-ja の内部処理によって既に処理されたノード. % \item[\textit{ic\_processed} (9)] @@ -3436,21 +4406,21 @@ Where $i$~is a natural number which is less than~7. These 7~attributes store bit~vectors indicating which character block is regarded as a block of \textbf{JAchar}s. % %<*ja> -$i$ は7より小さい自然数. -これら7つの属性レジスタは,どの文字ブロックが \textbf{JAchar} のブロックとして +$i$は7より小さい自然数. +これら7つの属性レジスタは,どの文字ブロックが\textbf{JAchar}のブロックとして 扱われるかを示すビットベクトルを格納する. % \end{list} %<*en> Furthermore, \LuaTeX-ja uses several `user-defined' whatsit nodes for -typesetting. All those nodes store a natural number (hence the node's -\texttt{type} is 100). +inrernal processing. All those nodes store a natural number (hence the node's +\texttt{type} is 100). The following \verb+user_id+s are used: % %<*ja> -さらに,\LuaTeX-ja はいくつかの「ユーザ定義の」whatsit ノードを組版に用いる. -これらの全てのノードは自然数を格納している(したがってノードの \texttt{type} は -100 である). +さらに,\LuaTeX-jaはいくつかの「ユーザ定義の」whatsit ノードを内部処理に用いる. +これらの全てのノードは自然数を格納している(したがってノードの\texttt{type}は +100である).次の \verb+user_id+ が使用される: % \begin{description} \item[30111] @@ -3460,7 +4430,7 @@ Nodes for indicating that \verb+\inhibitglue+ is % %<*ja> \verb+\inhibitglue+ が指定されたことを示すノード.これらのノードの -\texttt{value} フィールド は意味を持たない. +\texttt{value}フィールドは意味を持たない. % \item[30112] @@ -3470,34 +4440,41 @@ Nodes for \LuaTeX-ja's stack system (see the next current group. % %<*ja> -\LuaTeX-ja のスタックシステム(次の節を参照)のためのノード. -これらのノードの \texttt{value} フィールドは現在のグループを表す. +\LuaTeX-jaのスタックシステム(次の節を参照)のためのノード. +これらのノードの\texttt{value}フィールドは現在のグループを表す. % \item[30113] %<*en> Nodes for Japanese Characters which the callback process of - luaotfload won't be applied, and the character code is + \Pkg{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. + This \verb+user_id+ is only used by the \Pkg{luatexja-otf} package. % %<*ja> -luaotfload のコールバックによる処理が適用されない和文文字のためのノードで, -\texttt{value} フィールドにその文字のコードが格納されている. -この \verb+user_id+ を持つノードはそれぞれが luaotfload のコールバックの処理の -\textbf{後で} `glyph\_node' に変換される. +\Pkg{luaotfload}のコールバックによる処理が適用されない和文文字のためのノードで, +\texttt{value}フィールドにその文字のコードが格納されている. +この \verb+user_id+ を持つノードはそれぞれが\Pkg{luaotfload}のコールバックの処理の +\textbf{後で}`glyph\_node'に変換される.この \verb+user_id+ は % +\Pkg{luatexja-otf} パッケージでのみ使用される. % + +\item[30114] +Nodes for indicating beginning of a paragraph. +A paragraph which is started by \verb+\item+ in list-like environments has a horizontal box +for its label before the actual contents. So \dots \end{description} %<*en> These whatsits will be removed during the process of inserting \textbf{JAglue}s. % %<*ja> -これらの whatsit ノードは \textbf{JAglue} の挿入処理の間に取り除かれる. +これらのwhatsitノードは\textbf{JAglue}の挿入処理の間に取り除かれる. % %\subsection{Stack System of \LuaTeX-ja} -%\subsection{\LuaTeX-ja のスタックシステム} +%\subsection{\LuaTeX-jaのスタックシステム} \label{ssec-stack} %\paragraph{Background} @@ -3509,9 +4486,9 @@ are stored in it. To clarify the reason, imagine the parameter source: % %<*ja> -\LuaTeX-ja は独自のスタックシステムを持ち,\LuaTeX-ja のほとんどのパラメータは +\LuaTeX-jaは独自のスタックシステムを持ち,\LuaTeX-jaのほとんどのパラメータは これを用いて保持されている.その理由を明らかにするために, -\Param{kanjiskip} パラメータがスキップレジスタで保持されているとし, +\Param{kanjiskip}パラメータがスキップレジスタで保持されているとし, 以下のコードを考えてみよう: % \begin{LTXexample} @@ -3529,11 +4506,11 @@ known from any callbacks. In the \texttt{tex/packaging.w} (which is a file in the source of \LuaTeX), there are the following codes: % %<*ja> -\ref{ssec-param} 節で述べたように,ある水平ボックスの中で効力を持つ -\Param{kanjiskip} の値は最後に現れた値のみであり,したがってボックス全体に適用される -\Param{kanjiskip} は 5\,pt であるべきである.しかし,\LuaTeX の実装のために, -この `5\,pt' はどのコールバックからも知ることはできない. -\texttt{tex/packaging.w}(これは \LuaTeX のソースファイルである)の中に, +\ref{ssec-param}節で述べたように,ある水平ボックスの中で効力を持つ +\Param{kanjiskip}の値は最後に現れた値のみであり,したがってボックス全体に適用される +\Param{kanjiskip}は5\,ptであるべきである.しかし,\LuaTeX の実装のために, +この`5\,pt'はどのコールバックからも知ることはできない. +\texttt{tex/packaging.w}(これは\LuaTeX のソースファイルである)の中に, 以下のコードがある: % \begin{lstlisting} @@ -3563,19 +4540,20 @@ callback. %<*ja> \verb+unsave+ が \verb+filtered_hpack+(これは \verb+hpack_filter+ コールバックが 実行されるところである)の\textbf{前に}実行されていることに注意する. -したがって,上記ソース中で `5\,pt' は \verb+unsave+ のところで捨てられ, +したがって,上記ソース中で`5\,pt'は \verb+unsave+ のところで捨てられ, \verb+hpack_filter+ からはアクセスすることができない. % %\paragraph{The method} %\paragraph{解決法} +%\paragraph{解决方法} %<*en> The code of stack system is based on that in a post of Dev-luatex mailing list\footnote{% \texttt{[Dev-luatex] tex.currentgrouplevel}, a post at 2008/8/19 by Jonathan Sauer.}. % %<*ja> -スタックシステムのコードは Dev-luatex メーリングリストのある投稿\footnote{\texttt{[Dev-luatex] tex.currentgrouplevel}: Jonathan Sauer による 2008/8/19 の投稿.}を +スタックシステムのコードはDev-luatexメーリングリストのある投稿\footnote{\texttt{[Dev-luatex] tex.currentgrouplevel}: Jonathan Sauerによる2008/8/19の投稿.}を ベースにしている. % @@ -3589,11 +4567,11 @@ a new stack level is created by \verb+\ltjsetparameter+, all data of the previous level is copied. % %<*ja> -情報を保持するために,2つの \TeX の整数レジスタを用いている: +情報を保持するために,2つの\TeX の整数レジスタを用いている: \verb+\ltj@@stack+ でスタックレベル,\verb+\ltj@@group@level+ で最後の代入が -なされた時点での \TeX のグループレベルを保持している. -パラメータは \texttt{charprop\_stack\_table} という名前のひとつの大きなテーブルに -格納される.ここで,\texttt{charprop\_stack\_table[$i$]} はスタックレベル $i$ の +なされた時点での\TeX のグループレベルを保持している. +パラメータは\texttt{charprop\_stack\_table}という名前のひとつの大きなテーブルに +格納される.ここで,\texttt{charprop\_stack\_table[$i$]}はスタックレベル$i$の データを格納している.もし新しいスタックレベルが \verb+\ltjsetparameter+ によって 生成されたら,前のレベルの全てのデータがコピーされる. % @@ -3609,15 +4587,18 @@ stack level is~$s$ and the \TeX's group level is~$t$ just after the hbox group, then: % %<*ja> -上の「背景」で述べた問題を解決するために,\LuaTeX-ja ではもう一つの手法を導入する: -新しいスタックレベルが生成されようとするとき,type, subtype, value がそれぞれ -44~(\textit{user\_defined}), 30112,そして現在のグループレベルである whatsit ノード -を現在のリストに付け加える(このノードを \textit{stack\_flag} とする). +上の「背景」で述べた問題を解決するために,\LuaTeX-jaではもう一つの手法を導入する: +新しいスタックレベルが生成されようとするとき,type, subtype, valueがそれぞれ +44~(\textit{user\_defined}), 30112,そして現在のグループレベルであるwhatsitノード +を現在のリストに付け加える(このノードを\textit{stack\_flag}とする). これにより,ある水平ボックスの中で代入がなされたかどうかを知ることが可能 -となる.スタックレベルを $s$,その水平ボックスグループの直後の \TeX のグループレベルを -$t$ とすると: +となる.スタックレベルを$s$,その水平ボックスグループの直後の\TeX のグループレベルを +$t$とすると: % \begin{itemize} +%<*zh> +\item +% %<*en> \item If there is no \textit{stack\_flag} node in the list of the hbox, then no assignment was occurred inside the hbox. Hence values of @@ -3625,9 +4606,9 @@ $t$ とすると: level~$s$. % %<*ja> -\item もしその水平ボックスのリストの中に \textit{stack\_flag} ノードがなければ, +\item もしその水平ボックスのリストの中に\textit{stack\_flag}ノードがなければ, 水平ボックスの中では代入は起こらなかったということになる. - したがって,その水平ボックスの終わりにおけるパラメータの値はスタックレベル $s$ に + したがって,その水平ボックスの終わりにおけるパラメータの値はスタックレベル$s$に 格納されている. % @@ -3638,9 +4619,9 @@ $t$ とすると: stack level~$s+1$. % %<*ja> -\item もし値が $t+1$ の \textit{stack\_flag} ノードがあれば,その +\item もし値が$t+1$の\textit{stack\_flag}ノードがあれば,その 水平ボックスグループの中で代入が起こったことになる. - したがって,水平ボックスの終わりにおけるパラメータの値はスタックレベル $s+1$ に + したがって,水平ボックスの終わりにおけるパラメータの値はスタックレベル$s+1$に 格納されている. % @@ -3652,10 +4633,10 @@ $t$ とすると: level~$s$. % %<*ja> -\item もし \textit{stack\_flag} ノードがあるがそれらの値が全て $t+1$ より大きい +\item もし\textit{stack\_flag}ノードがあるがそれらの値が全て$t+1$より大きい 場合,そのボックスの中で代入が起こったが,それは「より内部の」グループで 起こったということになる.したがって,水平ボックスの終わりでのパラメータの - 値はスタックレベル $s$ に格納されている. + 値はスタックレベル$s$に格納されている. % \end{itemize} @@ -3675,9 +4656,11 @@ This problem is resolved by using %\section{Linebreak after Japanese Character} %\section{和文文字直後の改行} +%\section{日文字符后断行} \label{sec-lbreak} %\subsection{Reference: Behavior in \pTeX} -%\subsection{参考: \pTeX の動作} +%\subsection{参考:\pTeX の動作} +%\subsection{参考:\pTeX 行为} %<*en> 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, @@ -3717,7 +4700,7 @@ after `beginning/ending of a group' characters. \item State~$M$: 行中. \item State~$K$: 行中(和文文字の後). \end{itemize} -また,状態遷移は,図 \ref{fig-ptexipro} のようになっており,図中の数字は +また,状態遷移は,図\ref{fig-ptexipro}のようになっており,図中の数字は カテゴリーコードを表している.最初の3状態は\TeX の入力処理部と同じであり, 図中から状態$K$と「$j$」と書かれた矢印を取り除けば,\TeX の入力処理部と同 じものになる. @@ -3758,8 +4741,11 @@ after `beginning/ending of a group' characters. \item Category codes 9~(ignored), 14~(comment)~and~15~(invalid) are omitted in the above diagram. % %<*ja> -\item カテゴリーコード 9(無視する文字),14(コメント文字),15(無効文字)は上の図では省かれている. +\item カテゴリーコード9(無視する文字),14(コメント文字),15(無効文字)は上の図では省かれている. % +%<*zh> +\item +% \end{itemize} %\caption{State transitions of \pTeX's input processor.} %\caption{\pTeX の入力処理部の状態遷移.} @@ -3768,7 +4754,8 @@ after `beginning/ending of a group' characters. %\subsection{Behavior in \LuaTeX-ja} -%\subsection{\LuaTeX-ja の動作} +%\subsection{\LuaTeX-jaの動作} +%\subsection{\LuaTeX-ja行为} %<*en> 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 @@ -3785,10 +4772,12 @@ Considering these situations, handling of an end-of-line in \LuaTeX-ja are as fo \begin{quote} A character U+FFFFF (its category code is set to 14~(comment) by \LuaTeX-ja) is appended to an input line, \emph{before \LuaTeX\ actually -process it}, if and only if the following two conditions are satisfied: +process it}, if and only if the following three conditions are satisfied: \begin{enumerate} -\item The category code of the character $\langle${return}$\rangle$ - (whose character code is 13) is 5~(end-of-line). +\item The category code of \verb+\endlinechar+% +\footnote{Usually, it is $\langle${return}$\rangle$ + (whose character code is 13).} is 5~(end-of-line). +\item The category code of U+FFFFF itself is 14~(comment). \item The input line matches the following `regular expression': \[ (\text{any char})^*(\textbf{JAchar}) @@ -3815,9 +4804,9 @@ u % %<*ja> -\LuaTeX の入力処理部は\TeX のそれと全く同じであり,callbackによりユーザが +\LuaTeX の入力処理部は\TeX のそれと全く同じであり,コールバックによりユーザが カスタマイズすることはできない.このため,改行抑制の目的でユーザが利用で -きそうなcallbackとしては,\verb+process_input_buffer+や +きそうなコールバックとしては,\verb+process_input_buffer+や \verb+token_filter+に限られてしまう.しかし,\TeX の入力処理部をよく見る と,後者も役には経たないことが分かる:改行文字は,入力処理部によってトー クン化される時に,カテゴリーコード10の32番文字へと置き換えられてしまうた @@ -3830,11 +4819,13 @@ u \begin{quote} 各入力行に対し,\textbf{その入力行が読まれる前の内部状態で} -以下の2条件が満たされている場合,\LuaTeX-jaはU+FFFFF番の文字 +以下の3条件が満たされている場合,\LuaTeX-jaはU+FFFFF番の文字 \footnote{この文字はコメント文字として扱われるように\LuaTeX-ja内部で設定をしている.} を末尾に追加する.よって,その場合に改行は空白とは見做されないこととなる. \begin{enumerate} -\item 改行文字(文字コード13番)のカテゴリーコードが5~(end-of-line)である. +\item \verb+\endlinechar+の文字\footnote{普通は,改行文字(文字コード13番)である.} +のカテゴリーコードが5~(end-of-line)である. +\item U+FFFFFのカテゴリーコードが14~(comment)である. \item 入力行は次の「正規表現」にマッチしている: \[ (\text{any char})^*(\textbf{JAchar}) @@ -3868,12 +4859,14 @@ u %\section{Insertion of JFM glues, \Param{kanjiskip} and \Param{xkanjiskip}} -%\section{JFM グルーの挿入,\Param{kanjiskip} と \Param{xkanjiskip}} +%\section{JFMグルーの挿入,\Param{kanjiskip}と\Param{xkanjiskip}} +%\section{JFM的胶插入,\Param{kanjiskip}和\Param{xkanjiskip}} \label{sec-jfmglue} %\subsection{Overview} %\subsection{概要} +%\subsection{概要} -\LuaTeX-ja における和文処理グルーの挿入方法は,\pTeX のそれとは全く異なる. +\LuaTeX-jaにおける和文処理グルーの挿入方法は,\pTeX のそれとは全く異なる. \pTeX では次のような仕様であった: \begin{itemize} \item JFMグルーの挿入は,和文文字を表すトークンを元に水平リストに(文字を表す)を @@ -3896,6 +4889,7 @@ u %\subsection{definition of a `cluster'} %\subsection{「クラスタ」の定義} +%\subsection{“cluster”定义} \def\OA{$\text{\sf O}_{\text{\sf A}}$} \def\OB{$\text{\sf O}_{\text{\sf B}}$} @@ -3915,10 +4909,10 @@ with the \textit{id} of it: The \textit{id} is \textit{id\_pbox}. % %<*ja> -\item その \verb+\ltj@icflag+ の値が $[3,15)$ に入るノードのリスト. +\item その \verb+\ltj@icflag+ の値が$[3,15)$に入るノードのリスト. これらのノードはある既にパッケージングされた水平ボックスから \verb+\unhbox+ で アンパックされたものである. - その \textit{id} は \textit{id\_pbox} である. + その\textit{id}は\textit{id\_pbox}である. % %<*en> @@ -3926,29 +4920,29 @@ with the \textit{id} of it: The \textit{id} is \textit{id\_math}. % %<*ja> -\item インライン数式でその境界に2つの \textit{math\_node} を含むもの. - その \textit{id} は \textit{id\_math} である. +\item インライン数式でその境界に2つの\textit{math\_node}を含むもの. + その\textit{id}は\textit{id\_math}である. % %<*en> \item A \textit{glyph\_node}~$p$ with nodes which relate with it: % %<*ja> -\item \textit{glpyh\_node}~$p$ とそれに関係するノード: +\item \textit{glpyh\_node}~$p$とそれに関係するノード: % \begin{enumerate} %<*en> \item A kern for the italic correction of~$p$. % %<*ja> -\item $p$ のイタリック補正のためのカーン. +\item $p$のイタリック補正のためのカーン. % %<*en> \item An accent attached to $p$ by \verb+\accent+. % %<*ja> -\item \verb+\accent+ による $p$ に付随したアクセント. +\item \verb+\accent+ による$p$に付随したアクセント. % \end{enumerate} \[ @@ -3971,8 +4965,8 @@ The \textit{id} is \textit{id\_jglyph} or represents a Japanese character or not. % %<*ja> -\textit{id} は \textit{glyph\_node} が和文文字を表すかどうかによって -\textit{id\_jglyph},もしくは \textit{id\_glyph} となる. +\textit{id}は\textit{glyph\_node}が和文文字を表すかどうかによって +\textit{id\_jglyph},もしくは\textit{id\_glyph}となる. % %<*en> @@ -3983,9 +4977,9 @@ The \textit{id} is \textit{id\_hlist} if the node is an % %<*ja> \item ボックス様のノード,つまり水平ボックス,垂直ボックス,罫線 (\verb+\vrule+), - そして \textit{unset\_node}. - その \textit{id} は垂直に移動していない水平ボックスならば \textit{id\_hlist}, - そうでなければ \textit{id\_box\_like} となる. + そして\textit{unset\_node}. + その\textit{id}は垂直に移動していない水平ボックスならば\textit{id\_hlist}, + そうでなければ\textit{id\_box\_like}となる. % %<*en> @@ -3994,16 +4988,16 @@ The \textit{id} is \textit{id\_glue}, \textit{id\_kern} and \textit{id\_disc}, respectively. % %<*ja> -\item グルー,subtype が 2~(\textit{accent}) ではないカーン,そして任意改行. - その \textit{id} はそれぞれ \textit{id\_glue}, \textit{id\_kern},そして - \textit{id\_disc} である. +\item グルー,subtypeが 2~(\textit{accent})ではないカーン,そして任意改行. + その\textit{id}はそれぞれ\textit{id\_glue}, \textit{id\_kern},そして + \textit{id\_disc}である. % \end{enumerate} %<*en> Let \textit{Np}, \textit{Nq} and \textit{Nr} denote a cluster. % %<*ja> -以下では \textit{Np}, \textit{Nq}, \textit{Nr} でクラスタを表す. +以下では\textit{Np}, \textit{Nq}, \textit{Nr}でクラスタを表す. % \end{defn} @@ -4013,7 +5007,7 @@ $\mathit{Np}.\mathit{id}$の意味を述べるとともに, 「最後の文字」を表す\textit{glyph\_node}~$\mathit{Np}.\mathit{tail}$を次のように定義する. 直感的に言うと,\textit{Np}は$\mathit{Np}.\mathit{head}$で始まり$\mathit{Np}.\mathit{tail}$で終わるような単語, と見做すことができる.これら$\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$は -説明用に準備した概念であって,実際の Lua コード中にそのように書かれているわけではないことに注意. +説明用に準備した概念であって,実際のLuaコード中にそのように書かれているわけではないことに注意. \begin{description} \item[\textit{id\_jglyph}] 和文文字.\\ @@ -4041,7 +5035,7 @@ $\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$は,その和文文字 \begin{verbatim} \hbox{\hbox{abc}...\hbox{\lower1pt\hbox{xyz}}} \end{verbatim} -のように,$p$の内容が別の hbox で開始・終了している可能性も十分あり得る.そのような場合, +のように,$p$の内容が別の水平ボックスで開始・終了している可能性も十分あり得る.そのような場合, $\mathit{Np}.\mathit{head}$, $\mathit{Np}.\mathit{tail}$の算出は,\textbf{垂直方向にシフトされていない}水平ボックスの 場合だけ内部を再帰的に探索する.例えば上の例では,$\mathit{Np}.\mathit{head}$は文字「a」を表すノードであり, 一方$\mathit{Np}.\mathit{tail}$は垂直方向にシフトされた水平ボックス,\verb+\lower1pt\hbox{xyz}+に対応するノードである. @@ -4258,6 +5252,7 @@ $a$は禁則処理用に\textit{Nq}と\textit{Np}の間に加えられるべき \begin{table}[t] %\caption{Summary of JFM glues.} %\caption{JFM グルーの概要.} +%\caption{JFM胶总结。} \label{tab-jfmglue} \begin{center} \small @@ -4313,14 +5308,14 @@ If this attempt fails, \LuaTeX-ja use the method `\textsf{\Param{kanjiskip}~[K]} \item \LuaTeX-ja adopts the method `\textsf{P-normal~[PN]}' to adjust the penalty between two clusters for \emph{kinsoku shori}. % %<*ja> -\item \LuaTeX-ja は2つのクラスタの間の禁則処理用のペナルティを調節するために「\textsf{P-normal~[PN]}」の方法を採用する. +\item \LuaTeX-jaは2つのクラスタの間の禁則処理用のペナルティを調節するために「\textsf{P-normal~[PN]}」の方法を採用する. % \end{enumerate} \end{quote} \end{table} \subsection{その他の場合} -本節の内容は表 \ref{tab-jfmglue} にまとめてある. +本節の内容は表\ref{tab-jfmglue}にまとめてある. \paragraph{和文Aと欧文の間} \textit{Nq}が\textsf{和文A}で,\textit{Np}が\textsf{欧文}の場合,JFMグルー挿入処理は次のようにして行われる. @@ -4518,4 +5513,40 @@ $\mathit{Nq}.\mathit{tail}$は無意味なので, \bibitem{texbytopic} Victor Eijkhout, \emph{\TeX\ by Topic, A \TeX nician's Reference}, Addison-Wesley, 1992. \end{thebibliography} + +\newpage +\appendix +\section{Package versions used in this document} +This document was typeset using the following packages: + +\medskip + +{\makeatletter\tt\footnotesize + \def\@pkglist#1{% + \filename@parse{#1}\def\@temp{sty} + \ifx\@temp\filename@ext + \edef\reserved@a{% + \filename@base.% + \ifx\filename@ext\relax tex\else\filename@ext\fi}% + \leavevmode\hskip-13em\hbox to 13em{\filename@area\reserved@a\hss}% + \csname ver@\reserved@a\endcsname\par + \fi + }% +\parindent0pt\leftskip13em +\ltjpkglist + +\makeatother} \end{document} +% +%<*showexpl> +%% +%% config file for showexpl.sty +%% +%% Copyright The LuaTeX-ja project team, 2005 +%% +\ProvidesFile{showexpl.cfg} + [2012/05/20 v0.01 Definitions for the showexpl package (luatexja)] +\lstset{} +\def\SX@Info{} +\endinput +%