X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=doc%2Fluatexja.dtx;h=ce67c8c3d38a99018f1059b51d5a1f78535b6cf0;hb=9239672f2650e60ba848bb9776c0fff31b74a048;hp=8332b59f608ec0cf8c64bda84b21c3495fa371c7;hpb=9e3d8a6ef10db8b1917f373de35a6d2d45e74e9e;p=luatex-ja%2Fluatexja.git
diff --git a/doc/luatexja.dtx b/doc/luatexja.dtx
index 8332b59..ce67c8c 100644
--- a/doc/luatexja.dtx
+++ b/doc/luatexja.dtx
@@ -8,6 +8,7 @@
%%%%% section ==> ç«
%%%%% subsection => ç¯
+\IfFileExists{luatex85.sty}{\RequirePackage{luatex85}}{}
%\documentclass[a4paper,titlepage]{article}
%\documentclass[a4paper,titlepage]{ltjsarticle}
@@ -15,9 +16,9 @@
%%%%%%%%
\makeatletter
%%%%%%%%
+\def\pgfsysdriver{pgfsys-pdftex.def}
\directlua{if jit then jit.on() end}
-
-\usepackage{amsmath,array,tikz,pict2e,multienum,float}
+\usepackage{metalogo,amsmath,array,tikz,pict2e,multienum,float}
\usepackage{booktabs,multicol,luatexja-ruby}
\usepackage[all]{xy}
\usepackage{lltjext,alltt}
@@ -25,16 +26,19 @@
%%%%%%%% fonts
\usepackage{luatexja-otf}
\directlua{luatexja.otf.enable_ivs()}
-\usepackage[match]{luatexja-fontspec}
-\usepackage[kozuka-pr6n]{luatexja-preset}
-\usepackage{unicode-math}
+\usepackage[no-math]{fontspec}
\setmainfont[Ligatures=TeX]{Linux Libertine O}
\setmonofont[Scale=MatchLowercase, ItalicFont=lmmono10-italic.otf,
BoldFont=lmmonolt10-bold.otf, BoldItalicFont=lmmonolt10-boldoblique.otf
]{lmmono10-regular.otf}
+\setsansfont[Scale=MatchLowercase,Ligatures=TeX]{Linux Biolinum O}
+\usepackage[match]{luatexja-fontspec}
+\usepackage[kozuka-pr6n]{luatexja-preset}
+\usepackage{unicode-math}
\setmonojfont{KozGoPr6N-Regular.otf}
\setmathfont[Scale=MatchLowercase]{xits-math.otf}
-\setsansfont[Scale=MatchLowercase,Ligatures=TeX]{Linux Biolinum O}
+
+\setLaTeXa{\scshape a}
%<*ja>
\def\emph#1{\textbf{\textgt{#1}}}
\def\headfont{\normalfont\bfseries\gtfamily}\normalsize
@@ -137,10 +141,11 @@
\DeclareRobustCommand\epTeX{\ensuremath{\varepsilon}-\pTeX}
%%%%%%%% other macros
-\newlist{cslist}{description}{1}
+\newlist{cslist}{description}{2}
\setlist[cslist]{%
style=nextline,font=\mdseries\ttfamily,
before*=\def\<{\char`\<}\def\>{\char`\>}\def\{{\char`\{}\def\}{\char`\}},
+ topsep=\medskipamount,
% leftmargin=2\zw,
% leftmargin=2em,
}
@@ -160,7 +165,7 @@
\def\_{\leavevmode \kern .06em\vbox {\hrule \@width .333em}}
\def\cs#1{\texttt{\upshape
\texorpdfstring{\textbackslash\ltjsetparameter{autoxspacing=false}#1}{\textbackslash#1}}}
-
+\ltjsetparameter{alxspmode={`\\,allow}}
%%%%%%%%
\makeatother
%%%%%%%%
@@ -172,10 +177,11 @@
width:\hfill\ #2\cr height:\hfill\ #3\cr depth:\hfill\ #4\cr
}}}}}\,}
-\protected\def\Param#1{\hyperlink{fld:#1}{\textsf{#1}}} % parameter name
-\protected\def\DParam#1{\hypertarget{fld:#1}{\textsf{#1}}} % parameter name (definition)
-\protected\def\Pkg#1{\underline{\smash{\texttt{#1}}}} % packages/classes
-
+\def\myghost{\ifmmode\else\ltjalchar"200C \fi}
+\protected\def\Param#1{\myghost\hyperlink{fld:#1}{\underline{\smash{\textsf{#1}}}}\myghost} % parameter name
+\protected\def\DParam#1{\myghost\hypertarget{fld:#1}{\underline{\smash{\textsf{#1}}}}\myghost} % parameter name (definition)
+\protected\def\Pkg#1{\textsf{#1}} % packages/classes
+\ltjsetparameter{alxspmode={"200C,allow}}
\begin{document}
\lstset{
@@ -271,7 +277,7 @@ scripts for appropriate callbacks.
ãå§ã¾ã£ãããã±ã¼ã¸ã§ããï¼
%
-%\subsection{Major Changes from \pTeX}
+%\subsection{Major changes from \pTeX}
%\subsection{\pTeX ããã®ä¸»ãªå¤æ´ç¹}
\label{ssec:chgptex}
@@ -449,13 +455,13 @@ Japanese characters in discretionary break (\cs{discretionary}) is not supported
%<*en>
\paragraph{Greek and Cyrillic letters, and ISO~8859-1 symbols}
By default, \LuaTeX-ja uses Japanese fonts to typeset Greek and Cyrillic letters,
- To change this behavior,
+ To change this behavior,
put \verb!\ltjsetparameter{jacharrange={-2,-3}}! in the preamble.
For the detailed description, see Subsection~\ref{ssec-setrange}.
From this version, characters which belongs both ISO~8859-1 and JIS~X~0208,
such as \P~and~\S, are now typeset in alphabetic fonts. This means that
- without the \cs{fontspec} package, these characters are not typeset correctly.
+ without the \cs{fontspec} (and~\Pkg{luatexja-fontspec}) package, these characters are not typeset correctly.
%
%<*ja>
\paragraph{ã®ãªã·ã£æåã»ããªã«æåã¨ISO~8859-1ã®è¨å·}
@@ -471,7 +477,7 @@ From this version, characters which belongs both ISO~8859-1 and JIS~X~0208,
ã¾ãï¼\P,~\S ã¨ãã£ãISO~8859-1ã®ä¸ä½é åã¨JIS~X~0208ã®å
±éé¨åã®æåã¯
æ¬ãã¼ã¸ã§ã³ããæ¨æºã§æ¬§ææ±ãã¨ãªãï¼\emph{ã½ã¼ã¹ä¸ã«ç´æ¥è¨è¿°ãã¦ã
- \Pkg{fontspec}ããã±ã¼ã¸éèªã¿è¾¼ã¿ã®ç¶æ
ã§ã¯åºåãããªããªã£ã}ï¼
+ \Pkg{fontspec}ããã±ã¼ã¸ï¼ããã³\Pkg{luatexja-fontspec}ããã±ã¼ã¸ï¼éèªã¿è¾¼ã¿ã®ç¶æ
ã§ã¯åºåãããªããªã£ã}ï¼
åææ±ãã§åºåããã«ã¯ \verb+\ltjjachar`§+ ã®ããã« \cs{ltjjachar} å½ä»¤
ã使ãã°ããï¼
%
@@ -518,21 +524,21 @@ and \emph{Japanese fonts} for fonts used in \textbf{JAchar}.
\textbf{JAchar}ã®åºåã«ç¨ãããããã©ã³ãã\emph{åæãã©ã³ã}ã¨å¼ã¶ï¼
%
%<*en>
-\item A word in a sans-serif font (like \Param{prebreakpenalty})
+\item A word in a sans-serif font with underline (like \Param{prebreakpenalty})
means an internal parameter for Japanese typesetting, and it
is used as a key in \cs{ltjsetparameter} command.
%
%<*ja>
-\item ãµã³ã»ãªãä½ã§æ¸ãããèªï¼ä¾ï¼\Param{prebreakpenalty}ï¼ã¯æ¥æ¬èªçµçç¨ã®
+\item ä¸ç·ã¤ããã¼ãã³ä½ã§æ¸ãããèªï¼ä¾ï¼\Param{prebreakpenalty}ï¼ã¯æ¥æ¬èªçµçç¨ã®
ãã©ã¡ã¼ã¿ã表ãï¼ããã㯠\cs{ltjsetparameter} å½ä»¤ã®ãã¼ã¨ãã¦
ç¨ããããï¼
%
%<*en>
-\item A word in typewriter font with underline (like \Pkg{fontspec})
+\item A word in a sens-serif font without underline (like \Pkg{fontspec})
means a package or a class of \LaTeX.
%
%<*ja>
-\item ä¸ç·ä»ãã¿ã¤ãã©ã¤ã¿ä½ã®èªï¼ä¾ï¼\Pkg{fontspec}ï¼ã¯\LaTeX ã®
+\item ä¸ç·ãªããµã³ã»ãªãä½ã®èªï¼ä¾ï¼\Pkg{fontspec}ï¼ã¯\LaTeX ã®
ããã±ã¼ã¸ãã¯ã©ã¹ã表ãï¼
%
%<*en>
@@ -544,7 +550,7 @@ and \emph{Japanese fonts} for fonts used in \textbf{JAchar}.
%
\end{itemize}
-%\subsection{About the Project}
+%\subsection{About the project}
%\subsection{ããã¸ã§ã¯ãã«ã¤ãã¦}
%\paragraph{Project Wiki} Project Wiki is under construction.
@@ -598,17 +604,17 @@ and \emph{Japanese fonts} for fonts used in \textbf{JAchar}.
%The following packages are needed for the \LuaTeX-ja\ package.
%\LuaTeX-jaããã±ã¼ã¸ã®åä½ã«ã¯æ¬¡ã®ããã±ã¼ã¸é¡ãå¿
è¦ã§ããï¼
\begin{itemize}
-\item \LuaTeX\ beta-0.80.0 (or later)
-\item \Pkg{luaotfload} v2.5 (or later)
+\item \LuaTeX\ beta-0.85.0 (or later)
+\item \Pkg{luaotfload} v2.6 (or later)
\item \Pkg{adobemapping} (Adobe cmap and pdfmapping files)
\item \Pkg{everysel} (if you want to use \LuaTeX-ja with \LaTeXe)
\item \Pkg{fontspec} v2.4
%\item \emph{IPAex fonts} (\url{http://ipafont.ipa.go.jp/})
%\item \emph{IPAexãã©ã³ã(\url{http://ipafont.ipa.go.jp/})}
\end{itemize}
-%In summary, this version of \LuaTeX-ja no longer supports \TeX~Live~2014 (or older version).
+%In summary, this version of \LuaTeX-ja no longer supports \TeX~Live~2015 (or older version).
%<*ja>
-è¦ç´ããã¨ï¼æ¬ãã¼ã¸ã§ã³ã®\LuaTeX-jaã¯\TeX~Live~2014以åã§ã¯åä½ããªã\footnote{%
+è¦ç´ããã¨ï¼æ¬ãã¼ã¸ã§ã³ã®\LuaTeX-jaã¯\TeX~Live~2015以åã§ã¯åä½ããªã\footnote{%
ãã£ã¨ãï¼èªåã§\LuaTeX ã®ãã¤ããªãSubversionãªãã¸ããªãããã«ããã¦ããã°è©±ã¯å¥ã§ããï¼
}ï¼
%
@@ -682,13 +688,13 @@ the forefront of development is not the \texttt{master} branch.
\begin{lstlisting}
$ git clone git://git.osdn.jp/gitroot/luatex-ja/luatexja.git
\end{lstlisting}
-\item \texttt{master}ãã©ã³ãã®ã¹ãããã·ã§ããï¼\texttt{tar.gz}å½¢å¼ï¼ããã¦ã³ãã¼ãããï¼
+\item \texttt{master} ãã©ã³ãã®ã¹ãããã·ã§ããï¼\texttt{tar.gz} å½¢å¼ï¼ããã¦ã³ãã¼ãããï¼
\begin{flushleft}
\url{http://git.osdn.jp/view?p=luatex-ja/luatexja.git;a=snapshot;h=HEAD;sf=tgz}.
\end{flushleft}
\end{itemize}
-\texttt{master}ãã©ã³ãï¼å¾ã£ã¦ï¼CTANå
ã®ã¢ã¼ã«ã¤ããï¼ã¯ãã¾ã«ããæ´æ°ãããªããã¨ã«æ³¨æï¼
-主ãªéçºã¯\texttt{master}ã®å¤ã§è¡ããï¼æ¯è¼çã¾ã¨ã¾ã£ã¦ãããããã\texttt{master}ã«
+\texttt{master} ãã©ã³ãï¼å¾ã£ã¦ï¼CTANå
ã®ã¢ã¼ã«ã¤ããï¼ã¯ãã¾ã«ããæ´æ°ãããªããã¨ã«æ³¨æï¼
+主ãªéçºã¯\texttt{master}ã®å¤ã§è¡ããï¼æ¯è¼çã¾ã¨ã¾ã£ã¦ãããããã \texttt{master} ã«
åæ ããããã¨ã«ãã¦ããï¼
%
@@ -698,8 +704,8 @@ But only the contents in \texttt{src/} are needed to work \LuaTeX-ja.
%
%<*ja>
\item ãGitãªãã¸ããªãã¯ãã¼ã³ã以å¤ã®æ¹æ³ã§ã¢ã¼ã«ã¤ããåå¾ãããªãã°ï¼ãããå±éããï¼
- \texttt{src/}ãã¯ããã¨ããããã¤ãã®ãã£ã¬ã¯ããªãã§ãããï¼
- åä½ã«ã¯\texttt{src/}以ä¸ã®å
容ã ãã§ååï¼
+ \texttt{src/} ãã¯ããã¨ããããã¤ãã®ãã£ã¬ã¯ããªãã§ãããï¼
+ åä½ã«ã¯ \texttt{src/} 以ä¸ã®å
容ã ãã§ååï¼
%
%<*en>
@@ -739,7 +745,7 @@ $ luatex ltj-kinsoku_make.tex
instead copying is also good.
%
%<*ja>
-\item \texttt{src}ã®ä¸èº«ãèªåã®\texttt{TEXMF}ããªã¼ã«ã³ãã¼ããï¼
+\item \texttt{src} ã®ä¸èº«ãèªåã® \texttt{TEXMF} ããªã¼ã«ã³ãã¼ããï¼
å ´æã®ä¾ã¨ãã¦ã¯ï¼ä¾ãã°
\begin{quote}
\texttt{TEXMF/tex/luatex/luatexja/}
@@ -812,7 +818,7 @@ bad argument #1 to 'open' (string expected, got nil)
If so, please execute a batch file which is written on
\href{https://osdn.jp/projects/luatex-ja/wiki/FrontPage%28en%29}{ the Project Wiki (English)}.
This batch file creates a temporary directory, copy CMaps in it,
-run a test file which loads \LuaTeX-ja in this directory,
+run a test file which loads \LuaTeX-ja in this directory,
and finally delete the temporary directory.
%
%<*ja>
@@ -820,7 +826,7 @@ and finally delete the temporary directory.
\href{https://osdn.jp/projects/luatex-ja/wiki/FrontPage%28en%29}{%
ããã¸ã§ã¯ãWikiè±èªçããããã¼ã¸}ä¸ã«æ¸ããã¦ããããããã¡ã¤ã«ã
å®è¡ãã¦æ¬²ããï¼ãã®ããããã¡ã¤ã«ã¯ï¼ä½æ¥ç¨ãã£ã¬ã¯ããªã«CMapéã
-ã³ãã¼ãï¼ãã®ä¸ã§\LuaTeX-ja ã®ååèµ·åãè¡ãï¼ä½æ¥ç¨ãã£ã¬ã¯ããªãæ¶ãä½æ¥ããã¦ããï¼
+ã³ãã¼ãï¼ãã®ä¸ã§\LuaTeX-jaã®ååèµ·åãè¡ãï¼ä½æ¥ç¨ãã£ã¬ã¯ããªãæ¶ãä½æ¥ããã¦ããï¼
%
\end{itemize}
@@ -1001,6 +1007,28 @@ Note that the bold series in both family are same as the medium series of \emph{
%\item Japanese characters in math mode are typeset by the font family \texttt{mc}.
%\item æ°å¼ã¢ã¼ãä¸ã®åææåã¯ææä½(\texttt{mc})ã§åºåãããï¼
+%<*en>
+ \item \cs{jttdefault}%
+ \footnote{%
+ When \Pkg{ltjsclasses} classes are used, or
+ \Pkg{luatexja-fontspec} (or \Pkg{luatexja-preset}) is loaded with \texttt{match} option,
+ \cs{ttfamily} changes the current Japanese font amily to \cs{jttdefault}.
+ These classes and packages also redefine \cs{jttdefault} to
+ \cs{gtdefault} (\emph{gothic}~family).
+ } specifies the Japanese font family in \cs{verb}~or~\texttt{verbatim} environment.
+ The default value of \cs{jttdefault} is \cs{mcdefault}, so \emph{mincho} family is used.
+%
+%<*ja>
+ \item \cs{verb} ã \texttt{verbatim} ç°å¢ä¸ã®åææåã«ä½¿ãããåæãã©ã³ããã¡ããªã¯
+ \ \cs{jttdefault} ã§æå®ãã%
+ \footnote{%
+ \Pkg{ltjsclasses}ã使ç¨ãããï¼ããã㯠\texttt{match} ãªãã·ã§ã³ãæå®ãã¦\Pkg{luatexja-fontspec}%
+ ã\Pkg{luatexja-preset}ããã±ã¼ã¸ãèªã¿è¾¼ãã ã¨ãã¯ï¼åãªã \cs{ttfamily} ã«ãã£ã¦ãåæãã©ã³ãã
+ \ \cs{jttdefault}\ ã«å¤æ´ãããï¼ã¾ãï¼ãããã®ã¯ã©ã¹ãã¡ã¤ã«ãããã±ã¼ã¸ã¯
+ \ \cs{jttdefault}\ ã \cs{gtdefault}ï¼ã´ã·ãã¯ä½ï¼ã«åå®ç¾©ããï¼
+ }ï¼æ¨æºå¤ã¯ \cs{mcdefault}ï¼ã¤ã¾ãææä½ã¨ãã¦ç¨ããã®ã¨
+ åããã©ã³ããã¡ããªã§ããï¼
+%
%<*en>
\item If you use the \Pkg{beamer} class with the default font theme (which uses sans serif
@@ -1032,12 +1060,18 @@ Okumura), namely, \Pkg{ltjclasses}\footnote{%
The latter \texttt{ltjt*.cls} are for vertically writtened Japanese documents.
} and \Pkg{ltjsclasses}\footnote{%
\texttt{ltjsarticle.cls},~\texttt{ltjsbook.cls},~\texttt{ltjskiyou.cls}.}.
+
+Original \Pkg{jsclasses} use \cs{mag}~primitive to set the main document font size.
+However, \LuaTeX\ beta-0.87.0~or~later does not support \cs{mag} in PDF~output,
+so \Pkg{ltjsclasses} use different method%
+\footnote{Similar to \texttt{magstyle=xreal} in the \Pkg{BXjscls} classes (by Takayuki Yato).}
+to set the main document font size.
%
%<*ja>
ããããªããï¼ä¸è¨ã®è¨å®ã¯æ¥æ¬èªã®ææ¸ã«ã¨ã£ã¦ååã¨ã¯è¨ããªãï¼
æ¥æ¬èªææ¸ãçµçããããã«ã¯ï¼\texttt{article.cls}, \texttt{book.cls}ã¨ãã£ã
欧æç¨ã®ã¯ã©ã¹ãã¡ã¤ã«ã§ã¯ãªãï¼åæç¨ã®ã¯ã©ã¹ãã¡ã¤ã«ãç¨ããæ¹ãããï¼
-ç¾æç¹ã§ã¯ï¼\Pkg{jclasses}ï¼\pLaTeX ã®æ¨æºã¯ã©ã¹ï¼ã¨\Pkg{jsclasses}
+ç¾æç¹ã§ã¯ï¼\Pkg{jclasses}ï¼\pLaTeX ã®æ¨æºã¯ã©ã¹ï¼ã¨\Pkg{jsclasses}%
ï¼å¥¥ææ´å½¦æ°ã«ããã\pLaTeXe æ°ããã¥ã¡ã³ãã¯ã©ã¹ãï¼ã«å¯¾å¿ãããã®ã¨ãã¦ï¼
\Pkg{ltjclasses}\footnote{%
横çµç¨ã¯ \texttt{ltjarticle.cls},~\texttt{ltjbook.cls}, \texttt{ltjreport.cls} ã§ããï¼
@@ -1046,11 +1080,12 @@ Okumura), namely, \Pkg{ltjclasses}\footnote{%
\Pkg{ltjsclasses}\footnote{%
\texttt{ltjsarticle.cls},~\texttt{ltjsbook.cls},~\texttt{ltjskiyou.cls}.}%
ãããããç¨æããã¦ããï¼
-%
-%<*en>
-%
-%<*ja>
+å
ã
ã®\Pkg{ltjsclasses}ã§ã¯ãã©ã³ããµã¤ãºãæå®ããã®ã«\cs{mag}ããªããã£ãã使ããã¦ãããï¼
+\LuaTeX~beta-0.87.0以éã§ã¯PDFåºåæã®\cs{mag}ã®ãµãã¼ããå»æ¢ãããï¼
+ãã®ããï¼\Pkg{ltjsclasses}ã§ã¯å¥ã®æ¹æ³
+\footnote{å
«ç»å´ä¹æ°ã«ãã\Pkg{BXjscls}ã¯ã©ã¹ã«ããã\texttt{magstyle=xreal}æå®æã¨é¡ä¼¼ãã¦ããï¼}ã§
+ãã©ã³ããµã¤ãºãæå®ãããã¨ã«ãã¦ããï¼
%
%<*ja>
@@ -1192,7 +1227,7 @@ auto select&\cs{fontencoding}&\cs{fontfamily}&---&---&\cs{usefont}\\
%<*en>
\item For defining a Japanese font family, use
\cs{DeclareKanjiFamily} instead of
- \cs{DeclareFontFamily}. (In previous version of \LuaTeX-ja,
+ \cs{DeclareFontFamily}. (In previous version of \LuaTeX-ja,
using \cs{DeclareFontFamily} didn't cause any problem. But this no longer applies
the current version.)
\item Defining a Japanese font shape can be done by usual \cs{DeclareFontShape}:
@@ -1275,10 +1310,11 @@ this chapter. For the method, please see Subsection~\ref{ssec-math}.
è¨è¿°ããªãï¼ãã®æ¹æ³ã«ã¤ãã¦ã¯\ref{ssec-math}ç¯ãåç
§ã®ãã¨ï¼
%
-\subsection{\Pkg{luatexja-fontspec}}
+%\subsection{\Pkg{luatexja-fontspec} package}
+%\subsection{\Pkg{luatexja-fontspec}ããã±ã¼ã¸}
\label{ssec-fontspec}
%<*en>
-To use the functionality of the \Pkg{fontspec} package to Japanese fonts,
+To use the functionality of the \Pkg{fontspec} package to Japanese fonts,
it is needed to load the \Pkg{luatexja-fontspec} package in the preamble, as follows:
\begin{quote}
\ttfamily \textbackslash usepackage[]\{luatexja-fontspec\}
@@ -1288,13 +1324,18 @@ automatically loads \Pkg{luatexja} and \Pkg{fontspec}
packages, if needed.
%
%<*ja>
-\Pkg{fontspec}ããã±ã¼ã¸ã¨åæ§ã®æ©è½ãåæãã©ã³ãã«å¯¾ãã¦ãç¨ããå ´åï¼
-\Pkg{luatexja-fontspec}ããã±ã¼ã¸ãèªã¿è¾¼ãã°ããï¼
+\Pkg{fontspec}ããã±ã¼ã¸ã¯ï¼\LuaTeXã»\XeTeX ã«ããã¦
+TrueTypeã»OpenTypeãã©ã³ãã容æã«æ±ãããã®ããã±ã¼ã¸ã§ããï¼ãã®ããã±ã¼ã¸ãèªã¿è¾¼ãã§ã
+ãã°Unicodeã«ããå種è¨å·ã®ç´æ¥å
¥åãã§ããããã«ãªãï¼
+\LuaTeX-jaã§ã¯åæã¨æ¬§æãåºå¥ãã¦ããããï¼\Pkg{fontspec}ããã±ã¼ã¸ã®æ©è½ã¯æ¬§æãã©ã³ãã«
+対ãã¦ã®ã¿æå¹ãªãã®ã¨ãªã£ã¦ããï¼
+
+\LuaTeX-jaä¸ã«ããã¦ï¼\Pkg{fontspec}ããã±ã¼ã¸ã¨åæ§ã®æ©è½ãåæãã©ã³ãã«å¯¾ãã¦ãç¨ããå ´
+åã¯\Pkg{luatexja-fontspec}ããã±ã¼ã¸ãèªã¿è¾¼ãï¼
\begin{quote}
\ttfamily \textbackslash usepackage[]\{luatexja-fontspec\}
\end{quote}
-ãã®ããã±ã¼ã¸
-ã¯å¿
è¦ãªãã°èªåã§\Pkg{luatexja}ããã±ã¼ã¸ã¨\Pkg{fontspec}ããã±ã¼ã¸ãèªã¿è¾¼ãï¼
+ãã®ããã±ã¼ã¸ã¯èªåã§\Pkg{luatexja}ããã±ã¼ã¸ã¨\Pkg{fontspec}ããã±ã¼ã¸ãèªã¿è¾¼ãï¼
%
%<*en>
@@ -1379,8 +1420,8 @@ The default value is calculated automatically (for~example, about~0.924865 when
the \Pkg{ltjsarticle} class is used).
%
%<*ja>
-欧æã«å¯¾ããåæã®æ¯çã¯ï¼æ¨æºã§ã¯ \Pkg{luatexja-fontspec} èªã¿è¾¼ã¿æã®å欧ææ¯çãã
-èªåè¨ç®ãããï¼ä¾ãã°ï¼\Pkg{ltjsarticle} ã¯ã©ã¹ä½¿ç¨æã«ã¯åæã¯æ¬§æã®ç´0.924865åã¨ãªãï¼ãï¼
+欧æã«å¯¾ããåæã®æ¯çã¯ï¼æ¨æºã§ã¯ \Pkg{luatexja-fontspec}èªã¿è¾¼ã¿æã®å欧ææ¯çãã
+èªåè¨ç®ãããï¼ä¾ãã°ï¼\Pkg{ltjsarticle}ã¯ã©ã¹ä½¿ç¨æã«ã¯åæã¯æ¬§æã®ç´0.924865åã¨ãªãï¼ãï¼
ãããæåã§ä¸æ¸ãããã¨ãã«ä½¿ç¨ããï¼
%
\end{cslist}
@@ -1426,13 +1467,14 @@ JIS~X~0213:2004âè¾»\par
JIS~X~0208:1990âè¾»
\end{LTXexample}
-%\subsection{Presets}
-%\subsection{ããªã»ããè¨å®}
+%\subsection{Presets of Japanese fonts}
+%\subsection{åæãã©ã³ãã®ããªã»ããè¨å®}
\label{ssec-preset}
%<*en>
-To use standard Japanese font settings easily, one can load the \Pkg{luatexja-preset}
-package with several options. This package provides functions in a part of
+One can load the \Pkg{luatexja-preset}
+package to use several ``presets'' of Japanese fonts.
+This package provides functions in a part of
\Pkg{japanese-otf} package and a part of \Pkg{PXchfon} package by Takayuki Yato.
One can specified other options other than listed in this subsection.
@@ -1462,13 +1504,14 @@ For example, the line~5 in below example is eqivalent to lines 1--3.
%\paragraph{General options}
%\paragraph{ä¸è¬çãªãªãã·ã§ã³}
\begin{cslist}[before*=]
-
-\item[fontspec]
+\item[fontspec%
+%\textrm{~(enabled by default)}
+%\emph{\gtfamily ï¼æ¢å®ï¼}
+]
%<*en>
With this option, Japanese fonts are selected using functionality of
the \Pkg{luatexja-fontspec} package. This means that the \Pkg{fontspec} package is
automatically loaded by this package.
-\emph{This option is enabled by default.}
If you need to pass some options to \Pkg{fontspec}, you can load \Pkg{fontspec} manually
before \Pkg{luatexja-preset}:
@@ -1476,7 +1519,6 @@ before \Pkg{luatexja-preset}:
%<*ja>
\Pkg{luatexja-fontspec}ããã±ã¼ã¸ã®æ©è½ãç¨ãã¦åæãã©ã³ããé¸æããï¼
ããã¯ï¼\Pkg{fontspec}ããã±ã¼ã¸ãèªåã§èªã¿è¾¼ã¾ãããã¨ãæå³ããï¼
-\emph{ãã®ãªãã·ã§ã³ã¯æ¨æºã§æå¹ã«ãªã£ã¦ããï¼}
ãã\Pkg{fontspec}ããã±ã¼ã¸ã«ä½ããã®ãªãã·ã§ã³ã渡ãå¿
è¦ããã
\footnote{ä¾ãã°ï¼æ°å¼ãã©ã³ãã¾ã§ç½®æããã¦ãã¾ãï¼\cs{mathit}ã«ãã£ã¦ã®ãªã·ã£æåã®
@@ -1496,7 +1538,7 @@ With this option, selecting Japanese fonts won't be performed using the function
This option is ignored when \Pkg{luatexja-fontspec} package is loaded.
When this option is specified, \Pkg{fontspec}~and~\Pkg{luatexja-fontspec} are
-\emph{not} loaded by default. Nevertheless,
+\emph{not} loaded by default. Nevertheless,
the package\Pkg{fontspec} can coexist with the option, as the following:
\begin{lstlisting}
\usepackage{fontspec}
@@ -1523,19 +1565,39 @@ In this case, one can use \cs{setmainfont} etc.\ to select \emph{alphabetic} fon
ããå ´å㯠\texttt{nfssonly} ãªãã·ã§ã³ã¯ç¡è¦ãããï¼
%
-\item[nodeluxe]
+\item[match]
%<*en>
+If this option is specified, usual family-changing commands such as
+\cs{rmfamily},~\cs{textrm}, \cs{sffamily},~\dots\ also change Japanese font family.
+This option is passed to \Pkg{luatexja-fontspec}, if \texttt{fontspec}
+option is specifed.
+%
+
+%<*ja>
+ãã®ãªãã·ã§ã³ãæå®ãããã¨ï¼ã\pLaTeXe æ°ããã¥ã¡ã³ãã¯ã©ã¹ãã®ããã«\
+\cs{rmfamily}, \verb+\textrm{...}+, \cs{sffamily} çã
+欧æãã©ã³ãã ãã§ãªãåæãã©ã³ããå¤æ´ããããã«ãªãï¼
+\ \texttt{fontspec}\
+ãªãã·ã§ã³ãæå¹ã«ãªã£ã¦ããå ´åã¯ï¼ãã®ãªãã·ã§ã³ã¯ \Pkg{luatexja-fontspec} ããã±ã¼ã¸ã¸ã¨æ¸¡ãããï¼
+%
+
+
+\item[nodeluxe%
+%\textrm{~(enabled by default)}
+%\emph{\gtfamily ï¼æ¢å®ï¼}
+]
+%<*en>
+The nagation of \texttt{deluxe} option.
Use one-weighted \textit{mincho} and \textit{gothic} font families.
This means that \verb+\mcfamily\bfseries+, \verb+\gtfamily\bfseries+ and
\verb+\gtfamily\mdseries+ use the same font.
-\emph{This option is enabled by default.}
%
%<*ja>
+\texttt{deluxe}ãªãã·ã§ã³ã®å¦å®ï¼
\LaTeXe ç°å¢ä¸ã®æ¨æºè¨å®ã®ããã«ï¼ææä½ã»ã´ã·ãã¯ä½ãå1ã¦ã§ã¤ãã§ä½¿ç¨ããï¼
ããå
·ä½çã«è¨ãã¨ï¼ãã®è¨å®ã®ä¸ã§ã¯
\ \verb+\mcfamily\bfseries+, \verb+\gtfamily\bfseries+,
\verb+\gtfamily\mdseries+ã¯ã¿ãªåããã©ã³ãã¨ãªãï¼
-\emph{ãã®ãªãã·ã§ã³ã¯æ¨æºã§æå¹ã«ãªã£ã¦ããï¼}
%
\item[deluxe]
%<*en>
@@ -1572,8 +1634,17 @@ characters designed for ruby.
}ï¼
%
\item[bold]
-%Substitute bold series of \textit{gothic} for bold series of \textit{mincho}.
-%ãææã®å¤ªåããã´ã·ãã¯ä½ã®å¤ªåã«ãã£ã¦ä»£æ¿ããï¼
+%<*en>
+Substitute bold series of \textit{gothic} for bold series of \textit{mincho}.
+If \texttt{nodeluxe} option is enabled, medium series of \textit{gothic} is also changed,
+since we use same font for both series of \textit{gothic}.
+%
+%<*ja>
+ãææã®å¤ªåããã´ã·ãã¯ä½ã®å¤ªåã«ãã£ã¦ä»£æ¿ããï¼
+ãã\texttt{nodeluxe}ãªãã·ã§ã³ãæå®ããã¦ããå ´åã¯ï¼ã´ã·ãã¯ä½ã¯1ã¦ã§ã¤ããã使ç¨ãããª
+ ãããï¼
+ãã´ã·ãã¯ä½ã®ä¸åããåæã«å¤æ´ããããã¨ã«ãªãï¼
+%
\item[90jis]
%Use 90JIS glyph variants if possible.
%åºæ¥ãéã90JISã®åå½¢ã使ãï¼
@@ -1589,6 +1660,7 @@ Use the JFM \texttt{jfm-jis.lua}, instead of \texttt{jfm-ujis.lua}, which is the
ç¨ããJFMãï¼JISãã©ã³ãã¡ããªãã¯é¡ä¼¼ã®ï¼\texttt{jfm-jis.lua}ã«ããï¼ãã®ãªãã·ã§ã³ããªãæã¯
\LuaTeX-jaæ¨æºã®\texttt{jfm-ujis.lua}ãç¨ããããï¼
%
+
\end{cslist}
%<*en>
Note that \texttt{90jis} and \texttt{jis2004} only affect with \textit{mincho},
@@ -1597,8 +1669,8 @@ We didn't taken account of when both \texttt{90jis} and \texttt{jis2004} are sp
%
%<*ja>
\texttt{90jis}ã¨\texttt{jis2004}ã«ã¤ãã¦ã¯æ¬ããã±ã¼ã¸ã§å®ç¾©ããã
-ææä½ã»ã´ã·ãã¯ä½ï¼ã»ä¸¸ã´ã·ãã¯ä½ï¼ã«ã®ã¿æå¹ã§ããï¼ä¸¡ãªãã·ã§ã³ã
-åæã«æå®ãããå ´åã®åä½ã«ã¤ãã¦ã¯å
¨ãèæ
®ãã¦ããªãï¼
+ææä½ã»ã´ã·ãã¯ä½ï¼ã»ä¸¸ã´ã·ãã¯ä½ï¼ã«ã®ã¿æå¹ã§ããï¼
+両ãªãã·ã§ã³ãåæã«æå®ãããå ´åã®åä½ã«ã¤ãã¦ã¯å
¨ãèæ
®ãã¦ããªãï¼
%
%\paragraph{Presets for multi weight}
@@ -1697,7 +1769,7 @@ Std/StdNãã©ã³ãã§ããï¼ãã®ä»ã¯Adobe-Japan1-5対å¿ã§ããï¼
\end{tabular}
\end{center}
-%\medskip
+%\newpage
\item[morisawa-pro] Morisawa Pro (Adobe-Japan1-4) fonts.
% \\*[-\dimexpr\medskipamount+\baselineskip\relax]
@@ -1757,7 +1829,8 @@ Std/StdNãã©ã³ãã§ããï¼ãã®ä»ã¯Adobe-Japan1-5対å¿ã§ããï¼
\end{tabular}
\end{center}
- \item[moga-mobo] MogaMincho, MogaGothic, and MoboGothic.
+%\newpage
+\item[moga-mobo] MogaMincho, MogaGothic, and MoboGothic.
%These fonts can be downloaded from\\\hfill \url{http://yozvox.web.fc2.com/}.
%ãããã®ãã©ã³ã㯠\url{http://yozvox.web.fc2.com/} ãããã¦ã³ãã¼ãã§ããï¼
@@ -1771,9 +1844,9 @@ Std/StdNãã©ã³ãã§ããï¼ãã®ä»ã¯Adobe-Japan1-5対å¿ã§ããï¼
%\smash{\raisebox{1.5ex}{\gt ææ}}%
&bold&Moga90Mincho Bold&MogaMincho Bold\\
\midrule
- &&Moga90Gothic&MogaGothic\\
+ &&Moga90Gothic*&MogaGothic*\\
&\smash{\raisebox{1.5ex}{medium}}
- &Moga90Gothic&MogaGothic\\
+ &Moga90Gothic Bold&MogaGothic Bold\\
\cmidrule(l){2-4}
%\textit{gothic}%
%\gt ã´ã·ãã¯
@@ -2168,7 +2241,7 @@ This range consists of the following Unicode ranges, \emph{except characters in
\item \texttt{U+0180}--\texttt{U+024F}: Latin Extended-B
\item \texttt{U+0250}--\texttt{U+02AF}: IPA Extensions
\item \texttt{U+02B0}--\texttt{U+02FF}: Spacing Modifier Letters
-%\par\
+%\par\
\item \texttt{U+0300}--\texttt{U+036F}: \\*\null\hfill Combining Diacritical Marks
\item \texttt{U+1E00}--\texttt{U+1EFF}: \\*\null\hfill Latin Extended Additional
%\par\
@@ -2307,7 +2380,7 @@ The block list is indicated in Table~\ref{table-rng7}.
%<*en>
\paragraph{Notes on \texttt{U+0080}--\texttt{U+00FF}}
-You should treat characters in \\texttt{U+0080}--\texttt{U+00FF} as \textbf{ALchar},
+You should treat characters in \\texttt{U+0080}--\texttt{U+00FF} as \textbf{ALchar},
when you use traditional 8-bit fonts, such as the \Pkg{textcomp} package or the
\Pkg{marvosym} package.
@@ -2316,7 +2389,7 @@ package is 182. This codepoint corresponds \P\ (\text{U+00B6}) in Unicode.
Similarly, \cs{Frowny} which is provided by the \Pkg{marvosym} package has
the same codepoint as \S\ (\text{U+00A7}).
Hence, as previous versions of \LuaTeX-ja, if these characters are treated as
-\text{JAchar}s, then \cs{textparagraph} produces ``ltjjachar`¶'' (in a Japanese font),
+\text{JAchar}s, then \cs{textparagraph} produces ``ltjjachar`¶'' (in a Japanese font),
and \cs{Frowny} produces ``\ltjjachar`§'' (in a Japanese font).
To avoid such situations, the default setting of \LuaTeX-ja is changed in this release
@@ -2441,7 +2514,7 @@ JFMã¯ãæã¾ãã\Param{kanjiskip}ã®å¤ãã
\cs{ltjgetparameter} ã«ãã£ã¦åå¾ãããã¨ã¯ã§ããªãã®ã§æ³¨æãå¿
è¦ã§ããï¼
%
-%\subsection{Insertion Setting of \Param{xkanjiskip}}
+%\subsection{Insertion setting of \Param{xkanjiskip}}
%\subsection{\Param{xkanjiskip} ã®æ¿å
¥è¨å®}
%<*en>
@@ -2625,7 +2698,7 @@ becuse a \emph{JAchar} is encapsulated by a horizontal box if needed.
æ°å¼ä¸ã®æåã¯ç°ãªã£ã¦ããã®ã§æ³¨æãå¿
è¦ã§ããï¼
ä¾ãã°ï¼è¡¨\ref{tab:math_bsa}ã®ããã«ï¼æ°å¼ä¸ã«æ示çã«ç¾ãã \cs{hbox} ã¯ï¼
\begin{itemize}
- \item \pTeX ã§ã¯ï¼ããã¯ã¹å
¨ä½ã \cs{ybaselineshift} ã ã¨ã·ãããããã®ã§ï¼
+ \item 2015年以åã®\pTeX ã§ã¯ï¼ããã¯ã¹å
¨ä½ã \cs{ybaselineshift} ã ã¨ã·ãããããã®ã§ï¼
表\ref{tab:math_bsa}ä¸ã®``ã''ã®ããã«ï¼ããã¯ã¹ä¸ã®åææåã¯
\ \cs{ybaselineshift} ã ãã·ããããï¼ä¸æ¹ï¼``for all''ã®ããã«ï¼
ããã¯ã¹å
ã®æ¬§ææåã¯2éã«ã·ããããããã¨ã«ãªãï¼
@@ -2633,6 +2706,10 @@ becuse a \emph{JAchar} is encapsulated by a horizontal box if needed.
æ°å¼ä¸ã«æ示çã«ç¾ãã \cs{hbox} ã¯ã·ããããªãï¼ãã®ããï¼
表\ref{tab:math_bsa}ä¸ã®``ã''ã``for all''ãï¼ããããæ¬æä¸ã«
æ¸ãããã¨ãã¨åãä¸ä¸ä½ç½®ã«çµã¾ããï¼
+
+ ãªãï¼\TeX~Live~2016以éã®\pTeX ã§ã¯æ¹ä¿®ããªããï¼\LuaTeX-jaã¨
+ è¿ãæåã«ãªãããã«ãã¦ãããï¼æ°å¼ä¸ã«ç´ã«æ¸ããã``ã''ã®ãã¼ã¹ã©ã¤ã³ã«ã¤ãã¦ã¯
+ ã¾ã éããè¦ãããï¼
\end{itemize}
\begin{table}
\small\centering
@@ -2649,12 +2726,16 @@ $\Phi\vdash F(x)\ \hbox{for all}\ x\in A$
\end{lstlisting}\\
\noalign{\vskip-\origbaselineskip}
\midrule
-\emph{\pTeX}&
+\emph{\pTeX~(--2015)}&
{\ltjsetparameter{yalbaselineshift=10pt}%
-æ°å¼abc: $ãa\lower10pt\hbox{ã}$, $\int_0^x t\,dt=x^2/2$,
+æ°å¼abc: $\lower10pt\hbox{ã}a\lower10pt\hbox{ã}$, $\int_0^x t\,dt=x^2/2$,
$\Phi\vdash F(x)\ \lower10pt\hbox{for all}\ x\in A$
-\par}\\
-\midrule
+\par}\\\noalign{\vskip-\origbaselineskip}\midrule
+\emph{\pTeX~(2016--)}&
+{\ltjsetparameter{yalbaselineshift=10pt}%
+æ°å¼abc: $\lower10pt\hbox{ã}a\hbox{ã}$, $\int_0^x t\,dt=x^2/2$,
+$\Phi\vdash F(x)\ \hbox{for all}\ x\in A$
+\par}\\\noalign{\vskip-\origbaselineskip}\midrule
\emph{\LuaTeX-ja}&
{\ltjsetparameter{yalbaselineshift=10pt}%
æ°å¼abc: $ãa\hbox{ã}$, $\int_0^x t\,dt=x^2/2$,
@@ -2682,7 +2763,7 @@ However, the penalty inserted after it is 10 which is the \Param{postbreakpenalt
``ã¢'', not 20.
%
%<*ja>
-\subsection{ç¦åå¦çé¢é£ãã©ã¡ã¼ã¿ã¨font feature}
+\subsection{ç¦åå¦çé¢é£ãã©ã¡ã¼ã¿ã¨OpenTypeã®font feature}
ç¦åå¦çã \Param{kanjiskip}, \Param{xkanjiskip} ã®æ¿å
¥ã«é¢é£ãããã©ã¡ã¼ã¿ã®ãã¡
\begin{quote}
\Param{jaxspmode},~\Param{alxspmode}, \Param{prebreakpenalty},
@@ -2745,13 +2826,13 @@ For the detail, see Table~\ref{table-kcat}.
%<*en>
\bfseries meaning&
\bfseries control word&
-\bfseries widow penalty\hbox{}$^*$&
+\bfseries widow penalty&
\bfseries linebreak\\
%
%<*ja>
\bfseries æå³&
\bfseries å¶å¾¡ç¶´ä¸ã«ä½¿ç¨&
-\bfseries æåã¦ã£ãã¦å¦ç\hbox{}$^*$&
+\bfseries æåã¦ã£ãã¦å¦ç&
\bfseries ç´å¾ã§ã®æ¹è¡\\
%
\midrule
@@ -2766,7 +2847,7 @@ For the detail, see Table~\ref{table-kcat}.
\medskip
%<*ja>
-æåã¦ã£ãã¦å¦ç\hbox{}$^*$: ãæ¼¢åãä¸æåã ã次ã®è¡ã«è¡ãã®ãé²ãã\
+æåã¦ã£ãã¦å¦çï¼ãæ¼¢åãä¸æåã ã次ã®è¡ã«è¡ãã®ãé²ãã
\cs{jcharwidowpenalty} ãï¼
ãã®æåã®ç´åã«æ¿å
¥ãããããå¦ãï¼ã示ãï¼
%
@@ -2838,17 +2919,22 @@ between \XeTeX\ and \LuaTeX, by the following reasons:
\begin{itemize}
\item (plain format) \texttt{luatex-unicode-letters.tex} is based on old \texttt{unicode-letters.tex}.
\item The latter half of \texttt{unicode-letters.tex}~and~\texttt{unicode-letters.def}
-sets\cs{catcode} of Kanji and kana characters to 11, via setting \cs{XeTeXcharclass}.
-
-However, this latter half does not exist (plain case), or not executed (\LaTeX~case) in \LuaTeX, hence
-\cs{catcode} of Kanji and kana characters remains 12 in \LuaTeX.
+sets\cs{catcode} of several characters to 11, via setting \cs{XeTeXcharclass}.
+However, this latter half does not exist (plain case), or not executed (\LaTeX~case) in \LuaTeX.
\end{itemize}
-In other words, Kanji nor kana characters cannot be used in
-a control word, in the default setting of \LuaTeX.
+In other words,
+\begin{description}
+\item[plain \LuaTeX]
+Kanji nor kana characters cannot be used in
+a control word, in the default setting of plain \LuaTeX.
+\item[\LuaLaTeX]
+In recent (2015-10-01 or later) \LuaLaTeX, Kanji and kana characters in a control word is supported (these catcode are 11),
+but not fullwidth alphanumerics and several other characters.
+\end{description}
This would be inconvenient for \pTeX~users to shifting to \LuaTeX-ja,
-since several control words containing Kanji, such as \verb+\西æ¦+,
-are used in \pTeX.
+since several control words containing Kanji or other fullwidth characters, such as
+\verb+\西æ¦+~or~\verb+\ï¼å¹´ç®è¥¿æ¦+ are used in \pTeX.
Hence, \LuaTeX-ja have a counterpart of \texttt{unicode-letters.tex}
for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.}
%
@@ -2861,7 +2947,6 @@ for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.}
\LaTeX ã§ã¯ \cs{catcode} ã®è¨å®ã¯ã«ã¼ãã«ã« \texttt{unicode-letters.def} ã¨ãã¦çµ±åããï¼
ãã®ãã¡ã¤ã«ã\XeLaTeX, \LuaLaTeX ã®ä¸¡æ¹ãç¨ãã¦ããï¼
-
ã ãï¼\XeTeX ã«ããã \cs{catcode} ã®åæè¨å®ã¨
\LuaTeX ã«ãããããã¯ä¸è´ãã¦ããªãï¼
\begin{itemize}
@@ -2869,16 +2954,20 @@ for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.}
\texttt{unicode-letters.tex} ãå¤ã
\item \texttt{unicode-letters.tex} å¾åé¨ã \texttt{unicode-letters.def} å¾åé¨ã§ã¯
\cs{XeTeXcharclass} ã®è¨å®ãè¡ãªã£ã¦ããï¼
-ããã«ãã£ã¦æ¼¢åãä»®åã® \cs{catcode} ã11ã«è¨å®ããã¦ããï¼
-
+ããã«ãã£ã¦æ¼¢åãä»®åï¼ããã³å
¨è§è±æ°åã® \cs{catcode} ã11ã«è¨å®ããã¦ããï¼
ãããï¼\texttt{luatex-unicode-letters.tex} ã§ã¯ãã®ãå¾åé¨ãã
ã¾ããã¨çç¥ããã¦ããï¼ã¾ã\LuaLaTeX ã§ã \texttt{unicode-letters.def} å¾åé¨ã¯å®è¡ãããª
- ãï¼å¾ã£ã¦æ¼¢åãä»®åã® \cs{catcode} ã¯12ã®ã¾ã¾ã«ãªã£ã¦ããï¼
+ ãï¼
\end{itemize}
-è¨ãæããã¨ï¼\LuaTeX ã®åæç¶æ
ã§ã¯æ¼¢åãä»®åãå¶å¾¡ç¶´å
ã«
+è¨ãæããã¨ï¼
+\begin{description}
+ \item[plain \LuaTeX] æ¼¢åãä»®åãå¶å¾¡ç¶´å
ã«
使ç¨ãããã¨ã¯ã§ããªãï¼
-
-ããã§ã¯ \pTeX ã§ä½¿ç¨ã§ãã \verb+\西æ¦+ ãªã©ã使ããªããã¨ã¨ãªãï¼
+ \item[\LuaLaTeX] æè¿ã®ï¼2015-10-01以éã®ï¼
+\LuaLaTeX ã§ã¯æ¼¢åãä»®åãå¶å¾¡ç¶´å
ã«
+使ç¨ãããã¨ãå¯è½ã«ãªã£ããï¼å
¨è§è±æ°åã¯ç¸å¤ããã使ç¨ã§ããªãï¼
+\end{description}
+ããã§ã¯ \pTeX ã§ä½¿ç¨ã§ãã \verb+\ï¼å¹´ç®è¥¿æ¦+\footnote{ç§ç è²»\LaTeX ã§ä½¿ç¨ããã¦ããããã§ãï¼}ãªã©ã使ããªããã¨ã¨ãªãï¼
\LuaTeX-jaã¸ã®ç§»è¡ã§æéãçããï¼ãã®ããï¼\LuaTeX-jaã§ã¯
\texttt{unicode-letters.tex} ã®å¾åé¨ã«ãããå
容ãèªåã§ããããï¼
çµæã¨ãã¦\textbf{\XeTeX ã«ãããåæè¨å®ã¨åãã«ãªãããã«ãã¦ããï¼}
@@ -2947,7 +3036,7 @@ for \LuaTeX, \emph{to match the \cs{catcode} setting with that of \XeTeX.}
\end{table}
%<*en>
-\subsection{Non-kanji Characters in a Control Word}
+\subsection{Non-kanji characters in a control word}
Because the engine differ, so non-kanji JIS~X~0208 characters
which can be used in a control word differ in \pTeX, in \upTeX,~and~in \LuaTeX-ja.
Table~\ref{table-kcat-diff} shows the difference.
@@ -3832,8 +3921,8 @@ OpenType font featureã¨è¦ããä¸åããããªå½¢å¼ã§æå®ã§ããã
\paragraph{\texttt{extend} and \texttt{slant}}
The following setting can be specified as OpenType font features:
\begin{cslist}[style=standard]
-\item[\cs{extend=}] expand the font horizontally by .
-\item[\cs{slant=}] slant the font.
+\item[\texttt{extend=}] expand the font horizontally by .
+\item[\texttt{slant=}] slant the font.
\end{cslist}
Note that \LuaTeX-ja doesn't adjust JFMs by these \texttt{extend} and \texttt{slant}
settings; you have to write new JFMs on purpose.
@@ -3848,6 +3937,36 @@ letter-spacing and the width of italic correction are not correct:
\S ããã\/ABC
\end{LTXexample}
+%<*ja>
+\paragraph{\texttt{ltjksp} æå®}
+\label{pg:ltjksp}
+\LuaTeX-jaæ¨æºã§ã¯ï¼
+JFMä¸ã«ããã \texttt{kanjiskip\_natural}, \texttt{kanjiskip\_stretch},\
+\texttt{kanjiskip\_shrink}ãã¼ï¼\pageref{pg:ksp_nat}ãã¼ã¸ï¼ã®ä½¿ç¨ã«ãã£ã¦ï¼
+ãJFMç±æ¥ã®ã°ã«ã¼ã®ä»ã«ï¼\Param{kanjiskip}ã®èªç¶é·/伸ã³é/縮ã¿éã®ä¸é¨ã
+åãå ´æã«æ¿å
¥ããããã¨ããç¶æ³ãèµ·ããããï¼
+ãã®æ©è½ãç¡å¹åãï¼20150922.0ç以åã¨åããããªçµçãå¾ãããã«ã¯
+ä»ã®OpenTypeæ©è½ã¨åãããã«\ \texttt{-ltjksp}\ æå®ãè¡ãã°è¯ãï¼
+\begin{LTXexample}[width=16\zw]
+\leavevmode
+\ltjsetparameter{kanjiskip=0pt plus 3\zw}
+\vrule\hbox to 15\zw{ãããããï¼ãã}\vrule
+
+\jfont\G=file:KozMinPr6N-Regular.otf%
+ :jfm=ujis;-ltjksp at 9.2487pt
+\G\leavevmode%
+\vrule\hbox to 15\zw{ãããããï¼ãã}\vrule
+\end{LTXexample}
+ãªãï¼
+\begin{lstlisting}
+ \jfont\G=file:KozMinPr6N-Regular.otf:jfm=ujis;-ltjksp;+ltjksp at 9.2487pt
+\end{lstlisting}
+ã®ããã« \texttt{+ltjksp} æå®ãè¡ã£ãå ´åã¯ï¼\texttt{kanjiskip\_natural} ãªã©
+3ãã¼ã¯åã³æå¹åãããï¼\texttt{-ltjksp}, \texttt{+ltjksp} ãè¤æ°åæå®ããå ´åã¯ï¼
+æå¾ã«æå®ãããã®ãæå¹ã¨ãªãï¼
+%
+
+
%\subsection{\cs{tfont}}
%\subsection{\cs{tfont} å½ä»¤}
@@ -3860,13 +3979,12 @@ letter-spacing and the width of italic correction are not correct:
\catcode`\<=12\catcode`\>=12
\ltjsetparameter{jacharrange={+3}}
\small
-
\def\r#1#2{%
\hbox{\tate\Large\vrule
\parbox{7\zw}{%
\addjfontfeatures{TateFeatures={Opacity=0.5, Color=#2, JFM=#1}}\noindent
âââââââ
- ããæ¥ã¢ã¢ã¡ãããã使ãã§è¿·åã«ãªã£ã¦æ³£ãã¾ããï¼
+ ããæ¥ã¢ã¢ã¡ããããã使ããã§è¿·åã«ãªã£ã¦æ³£ãã¾ããã
}\vrule}}
\def\s#1#2{%
\hbox{\tate\Large
@@ -4033,7 +4151,7 @@ Please contact the LuaTeX-ja project team.
?
\end{lstlisting}
-%\subsection{Structure of a JFM File}
+%\subsection{Structure of a JFM file}
%\subsection{JFMãã¡ã¤ã«ã®æ§é }
\label{ssec-jfm-str}
%A JFM file is a Lua script which has only one function call:
@@ -4056,6 +4174,17 @@ floating-point numbers in design-size unit.
\begin{cslist}[style=standard]
+\item[version=$1\mathrel{\textrm{or}}2$]
+%(optional, default value is~1)
+%ï¼ä»»æï¼æ¢å®å¤ã¯1ï¼
+
+%<*en>
+The version JFM. Currently 1~and~2 are supported
+%
+%<*ja>
+JFMã®ãã¼ã¸ã§ã³ï¼1ã¾ãã¯2ããµãã¼ããããï¼
+%
+
\item[dir=]
%(required)
%ï¼å¿
é ï¼
@@ -4177,20 +4306,48 @@ This field is a list of characters which are in this character
%ï¼å¿
é ï¼
%<*en>
+\begin{table}[t]
+ \centering
+\begin{tabular}{llr}
+\toprule
+Direction of JFM&\textbf{\texttt{'yoko'} (horizontal)}&\multicolumn{1}{l}{\textbf{\texttt{'tate'} (vertical)}}\\
+\midrule
+\texttt{width} field&\multicolumn{2}{c}{the width of the ``real'' glyph}\\
+\texttt{height} field&the height of the ``real'' glyph&0.0\\
+\texttt{depth} field&the depth of the ``real'' glyph&0.0\\
+\midrule
+\texttt{italic} field&\multicolumn{2}{c}{0.0}\\
+\bottomrule
+\end{tabular}
+\caption{Default values of \texttt{width} field and other fields}
+\label{tab-wid}
+\end{table}
Specify the width of characters in character class~$i$, the height, the depth and
the amount of italic correction. All characters in character class~$i$ are regarded that its width, height, and depth are
-as values of these fields.
-
-But there is one exception: \texttt{width} field can be \texttt{'prop'}.
-This means that width of a character becomes that of its ``real'' glyph.
+as values of these fields. The default values are shown in Table~\ref{tab-wid}.
%
%<*ja>
+\begin{table}[t]
+ \centering
+\begin{tabular}{llr}
+\toprule
+JFMæ¸åæ¹å&\emph{\texttt{'yoko'}ï¼æ¨ªçµï¼}&\multicolumn{1}{l}{\emph{\texttt{'tate'}ï¼ç¸¦çµï¼}}\\
+\midrule
+\texttt{width}&\multicolumn{2}{c}{ãå®éã®ã°ãªããã®å¹
}\\
+\texttt{height}&ãå®éã®ã°ãªããã®é«ã&0.0\\
+\texttt{depth}&ãå®éã®ã°ãªããã®æ·±ã&0.0\\
+\midrule
+\texttt{italic}&\multicolumn{2}{c}{0.0}\\
+\bottomrule
+\end{tabular}
+\caption{\texttt{width} ãã£ã¼ã«ãçã®æ¨æºå¤}
+\label{tab-wid}
+\end{table}
æåã¯ã©ã¹$i$ã«å±ããæåã®å¹
ï¼é«ãï¼æ·±ãï¼ã¤ã¿ãªãã¯è£æ£ã®éãæå®ããï¼
æåã¯ã©ã¹$i$ã«å±ããå
¨ã¦ã®æåã¯ï¼ãã®å¹
ï¼é«ãï¼æ·±ãããã®ãã£ã¼ã«ãã§æå®ãã
-å¤ã§ãããã®ã¨ãã¦æ±ãããï¼
-
-ä¾å¤ã¨ãã¦ï¼\emph{\texttt{width} ãã£ã¼ã«ãã«ã¯æ°å¤ä»¥å¤ã« \texttt{'prop'} ãæå®å¯è½ã§ãã}ï¼
-ãã®å ´åï¼æåã®å¹
ã¯ãã®ãå®éã®ãã°ãªãã®å¹
ã¨ãªãï¼OpenTypeã® \texttt{prop} featureã¨ä½µç¨
+å¤ã§ãããã®ã¨ãã¦æ±ãããï¼çç¥æãï¼æ°ã§ãªãå¤ãæå®ããæã«ã¯è¡¨\nobreak\ref{tab-wid}ã«
+ 示ããã¦ããå¤ãç¨ããï¼ä¾ãã°ï¼æ¨ªçµç¨JFM㧠\texttt{width} ãã£ã¼ã«ãã«ã¯æ°å¤ä»¥å¤ã®å¤ãæ
+ å®ããå ´åï¼æåã®å¹
ã¯ãã®ãå®éã®ãã°ãªãã®å¹
ã¨ãªãï¼OpenTypeã® \texttt{prop} featureã¨ä½µç¨
ããã°ï¼ããã«ãã£ã¦ãããã¼ã·ã§ãã«çµãè¡ããã¨ãã§ããï¼
%
@@ -4414,71 +4571,162 @@ Furthermore, the glyph is shifted according to values of fields
\label{fig-pos-tate}
\end{figure}
-\item[kern={\{[$j$]=, [$j'$]=\{, []\}, ...\}}]
-
-\item[glue={\{[$j$]=\{, , , [], []\}, ...\}}]\
+\item[kern={\{[$j$]=, [$j'$]=\{, [ratio=]\}, ...\}}]
+\nopagebreak
+\item[glue={\{[$j$]=\{, , , [ratio=, ...]\}, ...\}}]\leavevmode
%<*ja>
-æåã¯ã©ã¹$i$ã®æåã¨$j$ã®æåã®éã«æ¿å
¥ãããkernãglueã®éãæå®ããï¼
-
- 㯠\Pkg{luatexja-adjust} ã«ããåªå
é ä½ä»ã
- è¡é·èª¿æ´ï¼\ref{ssec-adj}ç¯ï¼ãæå¹ãªã¨ãã®ã¿æå³ãæã¤ï¼
-ãã®ãã£ã¼ã«ãã¯çç¥å¯è½ã§ããï¼è¡èª¿æ´å¦çã«ããããã®glueã®åªå
- 度ã$-2$ãã$+2$ã®éã®æ´æ°ã§æå®ããï¼å¤§ããå¤ã»ã©ã伸ã³ãããï¼ç¸®ã¿ãããã
- ãã¨ãæå³ããï¼çç¥æã®å¤
- ã¯0ã§ããï¼ç¯å²å¤ã®å¤ãæå®ãããã¨ãã®åä½ã¯æªå®ç¾©ã§ããï¼
+æåã¯ã©ã¹$i$ã®æåã¨$j$ã®æåã®éã«æ¿å
¥ãããã«ã¼ã³ãã°ã«ã¼ã®éãæå®ããï¼
-ãçç¥å¯è½ãã£ã¼ã«ãã§ããï¼$-1$ãã$+1$ã®å®æ°å¤ãã¨ãï¼çç¥æã®å¤ã¯0ã§ããï¼
-\begin{itemize}
-\item $-1$ã¯ãã®ã°ã«ã¼ããåã®æåãç±æ¥ã§ãããã¨ã示ãï¼
-\item $+1$ã¯ãã®ã°ã«ã¼ããå¾ã®æåãç±æ¥ã§ãããã¨ã示ãï¼
-\item ãã以å¤ã®å¤ã¯ï¼ãåã®æåãç±æ¥ã®ã°ã«ã¼ã¨ãå¾ã®æåãç±æ¥ã®
-ã°ã«ã¼ãæ··åããã¦ãããã¨ã示ãï¼
-\end{itemize}
-ãªãï¼ãã®ãã£ã¼ã«ãã®å¤ã¯\Param{differentjfm}ã®å¤ã
+ã¯ï¼ã°ã«ã¼ã®èªç¶é·ã®ãã¡ã©ãã ãã®å²åããå¾ã®æåãç±æ¥ãã示ãéã§ï¼
+$0$ãã$+1$ã®å®æ°å¤ãã¨ãï¼çç¥æã®å¤ã¯$0.5$ã§ããï¼
+ãã®ãã£ã¼ã«ãã®å¤ã¯\Param{differentjfm}ã®å¤ã
\texttt{pleft},~\texttt{pright},~\texttt{paverage}ã®å¤ã®ã¨ãã®ã¿å®éã«ç¨ããããï¼
ä¾ãã°ï¼\cite{x4051}ã§ã¯ï¼å¥ç¹ã¨ä¸ç¹ã®éã«ã¯ï¼
å¥ç¹ç±æ¥ã®äºå空ãã¨ä¸ç¹ç±æ¥ã®åå空ããæ¿å
¥ããããï¼ãã®å ´åã«ã¯
\begin{itemize}
\item ã«ã¯$0.5+0.25=0.75$ãæå®ããï¼
-\item ã«ã¯æ¬¡ã®å¤ãæå®ããï¼
-\[
- -1\cdot \frac{0.5}{0.5+0.25} + 1 \cdot \frac{0.25}{0.5+0.25} = -\frac13
-\]
+\item ã«ã¯$0.25/(0.5+0.25)=1/3$ãæå®ããï¼
\end{itemize}
%
%<*en>
\
-Specifies the width of kern or glue which will be inserted
+Specifies the amount of kern or glue which will be inserted
between characters in character class~$i$ and those in character class~$j$.
- is an integer in $[-2,2]$ (treated as 0 if omitted), and this is
-used only in line adjustment with priority by \Pkg{luatexja-adjust}
-(see Subsection~\ref{ssec-adj}). Higher value means the glue is easy to shretch,
-and is also easy to shrink.
-
- is also an optional value between $-1$ and 1. For example,
+ specifies how much the glue is originated in the ``right'' character.
+It is a real number between 0 and 1, and treated as 0.5 if omitted. For example,
The width of a glue between an ideographic full stop ``ã''
and a fullwidth middle dot ``ã»'' is three-fourth of fullwidth,
namely halfwidth from the ideographic full stop, and
quarter-width from the fullwidth middle dot. In this case,
-we specify to
-\[
- -1\cdot \frac{0.5}{0.5+0.25} + 1 \cdot \frac{0.25}{0.5+0.25} = -\frac13.
-\]
+we specify to $0.25/(0.5+0.25)=1/3$.
%
+%<*ja>
+ã°ã«ã¼ã®æå®ã«ããã¦ã¯ï¼ä¸è¨ã«å ãã¦å \texttt{[$j$]} ã®åãµããã¼ãã«å
ã«
+次ã®ãã¼ãæå®ã§ããï¼
+\begin{cslist}[style=standard]
+\item[priority=]
+ \Pkg{luatexja-adjust}ã«ããåªå
é ä½ä»ã
+ è¡é·èª¿æ´ï¼\ref{ssec-adj}ç¯ï¼ã«ããã¦ï¼ãã®ã°ã«ã¼ã®åªå
度ãæå®ããï¼è¨±ãããå¤ã¯ä»¥ä¸ã®éãï¼
+ \begin{description}
+ \item[ãã¼ã¸ã§ã³1ã®ã¨ã] $-4$ãã$+3$ã®éã®æ´æ°
+ \item[ãã¼ã¸ã§ã³2ã®ã¨ã] $-4$ãã$+3$ã®éã®æ´æ°ã®2ã¤çµ\texttt{\{, \}}ãï¼
+ ã¾ãã¯$-4$ãã$+3$ã®éã®æ´æ°ï¼, ã¯ãããããã®ã°ã«ã¼ã伸ã³ãã¨ãã®åªå
度ï¼ç¸®ãã¨ãã®
+ åªå
度ã§ããï¼åã«æ´æ°$i$ãæå®ãããå ´åã¯\texttt{\{$i$, $i$\}}ã§ããã¨è§£éãããï¼
+ \end{description}
+ ããã§æå®ããå¤ã¯ï¼å¤§ããå¤ã»ã©ãå
ã«ä¼¸ã°ãããããå
ã«ç¸®ã¾ããããã¨ãæå³ãã¦ããï¼çç¥æã®å¤
+ ã¯0ã§ããï¼ç¯å²å¤ã®å¤ãæå®ãããã¨ãã®åä½ã¯æªå®ç¾©ã§ããï¼
+\item[kanjiskip\_natural=\textrm{, }%
+ kanjiskip\_stretch=\textrm{, }kanjiskip\_shrink=]\leavevmode
+ \label{pg:ksp_nat}
+
+JFMã«ãã£ã¦æ¬æ¥æ¿å
¥ãããã°ã«ã¼ã®ä»ã«
+\Param{kanjiskip}åã®ç©ºç½ãèªç¶é·(\texttt{kanjiskip\_natural})ï¼ä¼¸ã³é(\texttt{kanjiskip\_stretch})ï¼
+縮ã¿é(\texttt{kanjiskip\_shrink})ãã¨ã«æ¿å
¥ãã\footnote{æ¬æ¥\Param{xkanjiskip}ãæ¿å
¥ãããå ´æã«ããã¦ã¯
+ \Param{xkanjiskip}åã®ç©ºç½ãèªç¶é·ã»ä¼¸ã³éã»ç¸®ã¿éãã¨ã«ï¼è¿½å ã§ããï¼}%
+ããã®æå®ã§ããï¼ããããçç¥ãããå ´åã®ããã©ã«ãå¤ã¯0ï¼è¿½å ããªãï¼ã§ããï¼
+
+ä¾ãã°ï¼\LuaTeX-jaã®æ¨ªçµæ¨æºJFMã® \texttt{jfm-ujis.lua} ã§ã¯ï¼
+\begin{itemize}
+ \item é常ã®æåãããã¨éãæ¬å¼§é¡ã®éã«å
¥ãã°ã«ã¼ã¯ï¼èªç¶é·ã»ç¸®ã¿éåè§ï¼ä¼¸ã³é0ã®ã°ã«ã¼
+ã¨ãªã£ã¦ãããï¼ããã«\Param{kanjiskip}ã®ä¼¸ã³éã« \texttt{kanjiskip\_stretch}ï¼ããã§ã¯1ï¼ãæã
+ ãåã ã伸ã³ããã¨ã許ãããï¼
+ \item åæ§ã«ï¼éãæ¬å¼§é¡ï¼å
¨è§ã³ã³ããï¼ããå«ãï¼ã¨é常ã®æåããããããã®éã«ã
+èªç¶é·ã»ç¸®ã¿éåè§ï¼ä¼¸ã³é0ã®ã°ã«ã¼
+ã¨ãªã£ã¦ãããï¼ããã«\Param{kanjiskip}ã®ä¼¸ã³éã« \texttt{kanjiskip\_stretch}ï¼ããã§ã¯1ï¼ãæã
+ ãåã ã伸ã³ããã¨ã許ãããï¼
+\end{itemize}
+ã¨ãªã£ã¦ããï¼å¾ã£ã¦ï¼ä»¥ä¸ã®ãããªçµççµæãå¾ãï¼
+
+\medskip
+\begin{LTXexample}[width=16\zw]
+\leavevmode
+\ltjsetparameter{kanjiskip=0pt plus 3\zw}
+\vrule\hbox to 15\zw{ãããããï¼ãã}\vrule
+\end{LTXexample}
+
+\end{cslist}
+%
+%<*en>
+In case of glue, one can specify following additional keys in each \texttt{[$j$]}
+ subtable:
+\begin{cslist}[style=standard]
+\item[priority=]
+An integer in $[-4,3]$ (treated as 0 if omitted), or
+a pair of these integers \texttt{\{, \}} (version~2 only).
+This is
+used only in line adjustment with priority by \Pkg{luatexja-adjust}
+(see Subsection~\ref{ssec-adj}). Higher value means the glue is easy to stretch,
+and is also easy to shrink.
+\item[kanjiskip\_natural=\textrm{, }%
+ kanjiskip\_stretch=\textrm{, }kanjiskip\_shrink=]\leavevmode
+
+These keys specifies the amount of the natural width of \Param{kanjiskip}
+(the stretch/shrink part, respectively) which will be inserted
+in addition to the original JFM glue. Default values of them are all 0.
+
+As an example, in \texttt{jfm-ujis.lua}, the standard JFM in horizontal writing, we have
+\begin{itemize}
+ \item Between an ordinal letter ``ã'' and an ideographic opening bracket, we have
+a glue whose natural part and shrink part are both half-width, while its stretch part is
+ zero. However, this glue also can be stretched
+ as much as the stretch part of \Param{kanjiskip} times the value of
+ \texttt{kanjiskip\_stretch} key (1 in this case).
+ \item Between an ideographic closeing brackets (the ideographic comma ``ï¼''
+ is included) and an ordinal letter, we have the same glue.
+ Again, this glue also can be stretched
+ as much as the stretch part of \Param{kanjiskip} times the value of
+ \texttt{kanjiskip\_stretch} key (1 in this case).
+\end{itemize}
+Hence we have the following result:
+
+\medskip
+\begin{LTXexample}[width=16\zw]
+\leavevmode
+\ltjsetparameter{kanjiskip=0pt plus 3\zw}
+\vrule\hbox to 15\zw{ãããããï¼ãã}\vrule
+\end{LTXexample}
+
+\end{cslist}
+%
\item[end\_stretch=, end\_shrink=]
%<*ja>
-ï¼ä»»æï¼
+ï¼ä»»æï¼ãã¼ã¸ã§ã³1ã®ã¿ï¼
åªå
é ä½ä»ãè¡é·èª¿æ´ãæå¹ã§ããï¼ãã¤ç¾å¨ã®æåã¯ã©ã¹ã®æåãè¡
æ«ã«æ¥ãæã«ï¼è¡é·ãè©°ãã調æ´ã»ä¼¸ã°ã調æ´ã®ã
ãã«ãã®æåã¨è¡æ«ã®éã«æ¿å
¥å¯è½ãªã«ã¼ã³ã®å¤§ãããæå®ããï¼
%
+%<*en>
+(optional, version~1 only)
+%
+
+ \item[end\_adjust=\{, , ...\}]
+%<*ja>
+ï¼ä»»æï¼ãã¼ã¸ã§ã³2ã®ã¿ï¼
+
+åªå
é ä½ä»ãè¡é·èª¿æ´ãæå¹ã§ããï¼ãã¤ç¾å¨ã®æåã¯ã©ã¹ã®æåã
+ è¡æ«ã«æ¥ãæã«ï¼ãã®æåã¨è¡æ«ã®éã«ã¯æå®ãããå¤ã®ããããã®å¤§ããã®ã«ã¼ã³ã
+ æ¿å
¥ãããï¼\autoref{ssec-adj}åç
§ï¼ï¼
+
+ãã¼ã¸ã§ã³1ã«ããã
+\begin{lstlisting}[escapechar=\$]
+ end_stretch = $a$, end_shrink = $b$
+\end{lstlisting}
+ã¨ããæå®ã¯ï¼ãã¼ã¸ã§ã³2ã§ã¯æ¬¡ã®æå®ã¨åãã«ãªãï¼
+\begin{lstlisting}[escapechar=\$]
+ end_adjust = {$-b$, 0.0, $a$}
+\end{lstlisting}
+ããçãä¸ã® \texttt{0.0} ããªãå ´åã¯ï¼$a$ã$-b$ãããããã®ã«ã¼ã³ã常ã«è¡æ«ã«è¿½å ãããï¼
+%
+%<*en>
+(optional, version~2 only)
+%
\end{cslist}
@@ -4665,7 +4913,7 @@ JFMå´ã§ä¸é¨ã®å¯¾å¦ãã§ãããã¨ã«ããï¼\Pkg{jsclasses}ã®ãã
%
-%\subsection{Math Font Family}
+%\subsection{Math font family}
%\subsection{æ°å¼ãã©ã³ããã¡ããª}
\label{ssec-math}
@@ -4957,7 +5205,7 @@ This callback is called when \LuaTeX-ja is trying to encapsule a
ãã®\textit{glyph\_node}ãã«ãã»ã«åãããã¨ããéã«å¼ã³åºãããï¼
%
\begin{lstlisting}[numbers=left]
-function ( shift_info, jfont_info, char_class)
+function ( shift_info, jfont_info, char_type)
return new_shift_info
end
\end{lstlisting}
@@ -4996,7 +5244,7 @@ Then, the position of glyphs is shifted up by
ï¼åæOpenTypeãã©ã³ãã®æ¨æºå¤ï¼
\item å®ãã©ã³ãå´ã®æ°å¤ï¼$(\hbox{é«ã})=28y$, $(\hbox{æ·±ã})=5y$ï¼åæTrueTypeãã©ã³ãã®æ¨æºå¤ï¼
\end{itemize}
-ã¨ãªã£ã¦ããã¨ããï¼ããã¨ï¼å®éã®æåã®åºåä½ç½®ã¯ï¼ä»¥ä¸ã®éã ãä¸ã«ããããããã¨ã¨ãªãï¼
+ã¨ãªã£ã¦ããã¨ããï¼ããã¨ï¼å®éã®æåã®åºåä½ç½®ã¯ï¼ä»¥ä¸ã®éã ãä¸ã«ããããããã¨ã¨ãªãï¼
%
\[
\frac{88x}{88x+12x} (28y+5y) - 28y = \frac{26}{25}y= 1.04y.
@@ -5057,11 +5305,11 @@ in \pTeX, and symbols beside each parameter has the following meaning:
%
\begin{itemize}
%<*en>
-\item ``\ast'' : values at the end of a paragraph or a hbox are
+\item ``$\ast$'' : values at the end of a paragraph or a hbox are
adopted in the whole paragraph or the whole hbox.
%
%<*ja>
-\item ``\ast''ï¼æ®µè½ãhboxã®çµç«¯ã§ã®å¤ããã®æ®µè½ï¼hboxå
¨ä½ã§ç¨ããããï¼
+\item ``$\ast$''ï¼æ®µè½ãhboxã®çµç«¯ã§ã®å¤ããã®æ®µè½ï¼hboxå
¨ä½ã§ç¨ããããï¼
%
%<*en>
\item ``\dagger'': assignments are always global.
@@ -5609,7 +5857,7 @@ The correct way is using a temporary register.
%\section{Other Commands for plain \TeX\ and \LaTeXe}
%\section{plainã§ã\LaTeX ã§ãå©ç¨å¯è½ãªãã®ä»ã®å½ä»¤}
-%\subsection{Commands for Compatibility with \pTeX}
+%\subsection{Commands for compatibility with \pTeX}
%\subsection{\pTeX äºæç¨å½ä»¤}
%<*en>
@@ -5622,7 +5870,7 @@ The last \cs{kansuji} converts an integer into its Chinese numerals.
\pTeX ã¨åãããã«JIS~X~0208ã®ç¯å²ãããµãã¼ããã¦ããªãï¼
%
\begin{center}
-\cs{kuten}, \cs{jis}, \cs{euc}, \cs{sjis}, \cs{jis}, \cs{kansuji}
+\cs{kuten}, \cs{jis}, \cs{euc}, \cs{sjis}, \cs{ucs}, \cs{kansuji}
\end{center}
%<*en>
These six commands takes an internal integer, and returns a \emph{string}.
@@ -5976,8 +6224,10 @@ to match the vertical center of ``M'' and that of ``ã'' in vertical typesetti
+ d_{\text{ã}} - d_{\text{M}},
\]
where $h_{a}$~and~$d_{a}$ denote the height of ``$a$'' and the depth, respectively.
-In \LuaTeX-ja, this \cs{adjustbaseline} does same task, namely setting the
+In \LuaTeX-ja, this \cs{adjustbaseline} does similar task, namely setting the
\Param{talbaselineshift} parameter.
+If the \LaTeX\ is 2015/10/01 release or later, \LuaTeX-ja use a Japanese
+character whose character class is zero, instead of `ã'.
%
%<*ja>
\pLaTeXe ã§ã¯ï¼\cs{adjustbaseline} ã¯ç¸¦çµæã«ãMãã¨ãããã®ä¸å¿ç·ãä¸è´ãããããã«ï¼
@@ -5991,8 +6241,12 @@ In \LuaTeX-ja, this \cs{adjustbaseline} does same task, namely setting the
\LuaTeX-jaã«ããã¦ã\cs{adjustbaseline} ã¯åæ§ã«\Param{talbaselineshift}ãã©ã¡ã¼ã¿ã®èª¿æ´å¦
çãè¡ã£ã¦ããï¼
-åæã«ï¼ããã\pLaTeXe ã® \cs{adjustbaseline} ã§è¡ããã¦ãããï¼
-ãæ¼¢ãã®å¯¸æ³ãå
ã«ï¼ï¼æ¬ç¯ã®æåã«è¿°ã¹ãï¼å°æåã§å§ã¾ãï¼\cs{cht}, \cs{cwd} ã¨ãã£ãé·ãå¤æ°ãè¨å®ããï¼
+åæã«ï¼ããã\pLaTeXe ã® \cs{adjustbaseline} ã§åæ§ã®å¦çãè¡ããã¦ãããï¼
+ãæ¼¢ãã®å¯¸æ³ãå
ã«ï¼æ¬ç¯ã®æåã«è¿°ã¹ãï¼å°æåã§å§ã¾ãï¼\cs{cht}, \cs{cwd}
+ã¨ãã£ãé·ãå¤æ°ãè¨å®ããï¼
+
+ãªãï¼\LaTeX ã2015/10/01 ç以éã®å ´åã¯ï¼ããããæ¼¢ãã®ä»£ããã«
+ãæåã¯ã©ã¹0ã®åææåããç¨ããï¼
%
\item[\cs{fontfamily}\{\}]
@@ -6080,8 +6334,8 @@ Avant Garde (OT1/pag/m/n) ã«å¤ãã£ã¦ãããã¨ããããï¼
\userelfont\selectfont ãããabc
\end{LTXexample}
-%\subsection{\cs{fontfamily}}
-%\subsection{\cs{fontfamily}}
+%\subsection{Detail of \cs{fontfamily} command}
+%\subsection{\cs{fontfamily}ã³ãã³ãã®è©³ç´°}
\label{ssec-fontfamilycmd}
%<*en>
In this subsection, we describe when \cs{fontfamily} changes current
@@ -6130,11 +6384,11 @@ We use an auxiliary list~$N_{\mathrm{J}}$.
\item If the \Pkg{luatexja-fontspec} package is loaded, we stop here, and is not
recognized as a Japanese font family.
- If the \Pkg{luatexja-fontspec} package is \emph{not} loaded,
+ If the \Pkg{luatexja-fontspec} package is \emph{not} loaded,
now \LuaTeX-ja looks whether there exists a Japanese font encoding~ such that
a font definition named \texttt{.fd} (the file name is
- all lowercase) exists. If so, is recognized as a Japanese font family (the font definition file won't be loaded here).
- If not, is not a Japanese font family, and
+ all lowercase) exists. If so, is recognized as a Japanese font family (the font definition file won't be loaded here).
+ If not, is not a Japanese font family, and
is appended to the list~$N_{\mathrm{J}}$.
%
%<*ja>
@@ -6154,7 +6408,7 @@ now \LuaTeX-ja looks whether there exists a Japanese font encoding~ such th
%<*en>
\paragraph{Recognition as alphabetic font family}
Next, whether alphabetic font family will be changed is determined in following order.
-We use auxiliary lists $F_{\mathrm{A}}$~and~$N_{\mathrm{A}}$,
+We use auxiliary lists $F_{\mathrm{A}}$~and~$N_{\mathrm{A}}$,
%
%<*ja>
\paragraph{欧æãã©ã³ããã¡ããªã¨ãã¦ã®èªè}
@@ -6165,7 +6419,7 @@ We use auxiliary lists $F_{\mathrm{A}}$~and~$N_{\mathrm{A}}$,
\begin{enumerate}
%<*en>
-\item If the family~ has been listed in a list~$F_{\mathrm{A}}$,
+\item If the family~ has been listed in a list~$F_{\mathrm{A}}$,
is recognized as an alphabetic font family.
%
%<*ja>
@@ -6193,7 +6447,7 @@ We use auxiliary lists $F_{\mathrm{A}}$~and~$N_{\mathrm{A}}$,
\item Now \LuaTeX-ja looks whether there exists an alphabetic font encoding~ such that
a font definition named \texttt{.fd} (the file name is
all lowercase) exists. If so, current alphabetic font family will be changed to
- ~(the font definition file won't be loaded here).
+ ~(the font definition file won't be loaded here).
If not, current alphabetic font family won't be changed, and
is appended to the list~$N_{\mathrm{A}}$.
%
@@ -6218,7 +6472,7 @@ the second argument (family) is appended to the list~$F_{\mathrm{A}}$.
%<*en>
The above order is very similar to \cs{fontfamily} in \pLaTeXe, but more complicated (clause~3.).
-This is because \pLaTeXe\ is a \emph{format} however \LuaTeX-ja is not,
+This is because \pLaTeXe\ is a \emph{format} however \LuaTeX-ja is not,
hence \LuaTeX-ja does not know calls of \cs{DeclareFontFamily} \emph{before} itself is
loaded.
%
@@ -6247,14 +6501,14 @@ to use the default family for font substitution.
%<*en>
-\section{Addons}
+\section{Addon packages}
\LuaTeX-ja has several addon packages.
These addons are written as \LaTeX\ packages, but
\Pkg{luatexja-otf} and~\Pkg{luatexja-adjust} can be loaded in plain \LuaTeX\
by \cs{input}.
%
%<*ja>
-\section{æ¡å¼µ}
+\section{æ¡å¼µããã±ã¼ã¸}
\LuaTeX-jaã«ã¯ï¼åä½ã«ã¯å¿
é ã§ã¯ãªããï¼èªç±ã«èªã¿è¾¼ããæ¡å¼µãä»å±ãã¦ããï¼
ãããã¯\LaTeX ã®ããã±ã¼ã¸ã¨ãã¦å¶ä½ãã¦ãããï¼
\Pkg{luatexja-otf}ã¨\Pkg{luatexja-adjust}ã«ã¤ãã¦ã¯plain \LuaTeX ã§ã\
@@ -6274,8 +6528,8 @@ the commands of Japanese version:
\ref{ssec-fontspec}ç¯ã§è¿°ã¹ãããã«ï¼ãã®è¿½å ããã±ã¼ã¸ã¯\Pkg{fontspec}%
ããã±ã¼ã¸ã§å®ç¾©ããã¦ããã³ãã³ãã«å¯¾å¿ããåæãã©ã³ãç¨ã®ã³ãã³ããæä¾ããï¼
-\Pkg{fontspec}ããã±ã¼ã¸ã§æå®å¯è½ãªå種font featureã«å ãã¦ï¼åæçã®ã³ãã³ãã«ã¯
-以ä¸ã®``font feature''ãæå®ãããã¨ãã§ããï¼
+\Pkg{fontspec}ããã±ã¼ã¸ã§æå®å¯è½ãªå種OpenTypeæ©è½ã«å ãã¦ï¼åæçã®ã³ãã³ãã«ã¯
+以ä¸ã®ããã©ã³ãæ©è½ããæå®ãããã¨ãã§ããï¼
%
@@ -6331,6 +6585,14 @@ will not be embedded in the output PDF file. See Subsection~\ref{ssec-psft}.
\label{fig:yokotate-fontspec}
\end{figure}
+\item[Kanjiskip=]
+%<*ja>
+\pageref{pg:ltjksp}ãã¼ã¸ã§èª¬æãã \verb+\jfont+ ä¸ã§ã® \texttt{ltjksp} æå®ã¨
+åä¸ã®å¹åãæã¡ï¼
+JFMä¸ã«ããã \texttt{kanjiskip\_natural}, \texttt{kanjiskip\_stretch},\
+\texttt{kanjiskip\_shrink}ãã¼ï¼\pageref{pg:ksp_nat}ãã¼ã¸ï¼ã®æå¹/ç¡å¹ãåãæ¿ããï¼
+æ¨æºå¤ã¯ \texttt{true} ã§ããï¼
+%
\item[TateFeatures=\{\}\textrm{, }TateFont=]
%<*en>
@@ -6341,7 +6603,7 @@ Similarly, the \texttt{TateFont} key specifies the Japanese font which will be u
A demonstrarion is shown in Figure~\ref{fig:yokotate-fontspec}.
%
%<*ja>
-縦çµã«ããã¦ä½¿ç¨ããããã©ã³ããï¼ç¸¦çµã«ããã¦ã®ã¿é©ç¨ãããfeatureéã
+縦çµã«ããã¦ä½¿ç¨ããããã©ã³ããï¼ç¸¦çµã«ããã¦ã®ã¿é©ç¨ããããã©ã³ãæ©è½éã
æå®ããï¼ä½¿ç¨ä¾ã¯å³\ref{fig:yokotate-fontspec}åç
§ï¼
%
@@ -6352,7 +6614,7 @@ horizontal writing,.
A demonstrarion is shown in Figure~\ref{fig:yokotate-fontspec}.
%
%<*ja>
-åæ§ã«ï¼æ¨ªçµã«ããã¦ã®ã¿é©ç¨ãããfeatureéã
+åæ§ã«ï¼æ¨ªçµã«ããã¦ã®ã¿é©ç¨ããããã©ã³ãæ©è½éã
æå®ããï¼ä½¿ç¨ä¾ã¯å³\ref{fig:yokotate-fontspec}åç
§ï¼
%
@@ -6387,7 +6649,7 @@ as the following:
%<*ja>
\ref{ssec-altfont}ç¯ã® \cs{ltjdeclarealtfont} ãï¼
\ref{ssec-nfsspat}ç¯ã® \cs{DeclareAlternateKanjiFont} ã¨åæ§ã«ï¼
-ãã®ãã¼ãç¨ããã¨ä¸é¨ã®æåãç°ãªã£ããã©ã³ããfont featureã使ã£ã¦çµããã¨ãã§ããï¼
+ãã®ãã¼ãç¨ããã¨ä¸é¨ã®æåãç°ãªã£ããã©ã³ããæ©è½ãã¡ã使ã£ã¦çµããã¨ãã§ããï¼
\texttt{AltFont} ãã¼ã«æå®ããå¤ã¯ï¼æ¬¡ã®ããã«äºéã®ã³ã³ãåºåããªã¹ãã§ããï¼
%
\begin{lstlisting}[escapechar=\#]
@@ -6477,8 +6739,9 @@ BoldFeatures = {
ã¾ãï¼å³\ref{fig:yokotate-fontspec}å¾åé¨ã§ã¯6è¡ç®ã®è²ã®æå®ãå¹ããï¼
2è¡ç®ã§æå®ãã\ \texttt{YokoFeatures},~\texttt{TateFeatures}\ ã«ããè²ã®æå®ãæå¹ã«ãªã£
-ãã¾ã¾ã§ããï¼ããã¯\emph{\ \texttt{YokoFeatures},~\texttt{TateFeatures}\ ã«ããfeatureæå®ã¯
-çµæ¹åã«ä¾åããªãfeatureæå®ããå¾ã«è§£éããã}ããã§ããï¼
+ãã¾ã¾ã§ããï¼ããã¯\emph{\ \texttt{YokoFeatures},~\texttt{TateFeatures}\ ã«ãã
+OpenTypeæ©è½æå®ã¯
+çµæ¹åã«ä¾åããªãOpenTypeæ©è½ã®æå®ããå¾ã«è§£éããã}ããã§ããï¼
%
@@ -6556,7 +6819,7 @@ ordinary characters in the following points:
is not performed to these characters.
%
%<*ja>
-\item OpenType featureï¼ä¾ãã°ã°ãªãç½®æãã«ã¼ãã³ã°ï¼ããµãã¼ãããããã®
+\item OpenTypeæ©è½ï¼ä¾ãã°ã°ãªãç½®æãã«ã¼ãã³ã°ï¼ããµãã¼ãããããã®
\Pkg{luaotfload}ããã±ã¼ã¸ã®ã³ã¼ãã¯ãããã®æåã«ã¯åããªãï¼
%
\end{itemize}
@@ -6585,10 +6848,14 @@ JFMã®\texttt{chars}ãã¼ãã«ã®ã¨ã³ããªã¨ã㦠\verb+'AJ1-xxx'+ ã®å½¢
%<*en>
\paragraph{IVS support}
Recent fonts support Ideographic Variation Selector (IVS).
-It seems that \Pkg{luaotfload} and \Pkg{fontspec} packages do not support
-IVS, so we implemented IVS support in \Pkg{luatexja-otf}.
-\emph{IVS support is experimental; if you want to enable this, load
-\Pkg{luatexja-otf} and execute the following:}
+\Pkg{luaotfload} and \Pkg{fontspec} packages used to be not supported IVS,
+so we implemented experimental IVS support in \Pkg{luatexja-otf},
+which is activated by
+\begin{lstlisting}
+\directlua{luatexja.otf.enable_ivs()}
+\end{lstlisting}
+However, recent \Pkg{luaotfload} and \Pkg{fontspec} packages seem to support IVS,
+so we don't execute above command anymore.
%
%<*ja>
\paragraph{IVSãµãã¼ã}
@@ -6597,66 +6864,14 @@ IVS, so we implemented IVS support in \Pkg{luatexja-otf}.
ï¼æ¼¢åç¨ç°ä½åã»ã¬ã¯ã¿ï¼ãå¾ç½®ãããã¨ã«ãã£ã¦
åå½¢ãæå®ããä»çµã¿(IVS)ãå«ã¾ãã¦ããï¼
å·çæç¹ã®2013å¹´12æã§ã¯ï¼\Pkg{luaotfload}ã\Pkg{fontspec}ããã±ã¼ã¸é¡ã¯
-IVSã«å¯¾å¿ãã¦ã¯ããªãããã§ããï¼ãããã®ããã±ã¼ã¸ã§å¯¾å¿ãã¦ãããã®ãçæ³çã ãï¼
-ããã¾ã§ã®ã¤ãªãã¨ãã¦ï¼\Pkg{luatexja-otf}ããã±ã¼ã¸å
ã«IVS対å¿ãä»è¾¼ãã§ãããï¼
-
-\medskip
-
-\emph{IVS対å¿ã¯è©¦é¨çãªãã®ã§ããï¼
-æå¹ã«ããã«ã¯ï¼\Pkg{luatexja-otf}ããã±ã¼ã¸ãèªã¿è¾¼ãã ä¸ã§ä»¥ä¸ã®å½ä»¤ãå®è¡ãã%
-\footnote{ãã®å½ä»¤ã2å以ä¸å®è¡ãã¦ãæå³ããªãï¼}ï¼}
-%
+IVSã«å¯¾å¿ãã¦ã¯ããªãããã§ãã£ãããï¼
+\Pkg{luatexja-otf}ããã±ã¼ã¸å
ã«è©¦é¨çãªIVS対å¿ãå®è£
ããï¼ããã¯ä»¥ä¸ã®å½ä»¤ã®å®è¡ã§æå¹ã«ãªãï¼
\begin{lstlisting}
\directlua{luatexja.otf.enable_ivs()}
\end{lstlisting}
-% ããã¨ï¼ä¸ã®å½ä»¤ãå®è¡ããç®æ以éã§ã¯ï¼ä»¥ä¸ã®ããã«IVSã«ããåå½¢æå®ãæå¹ã¨ãªãï¼
-% After executing the command above, you can use IVS like the following:
-\begin{LTXexample}
-\Large
-\jfontspec{KozMinPr6N-Regular}
-å¥è¯çèó åå¸ã¨ï¼æ±äº¬é½èó 飾åºï¼\\
-ããã«ã¡ã¯ï¼æ¸¡
-éó éó éó éó éó
-éó
éó éó éó éó
-éó éó éó éó éó
-ããï¼
-\end{LTXexample}
-%<*ja>
-å·¦ä¸å´ã®å
¥åã«ããã¦ã¯ï¼æ¼¢åç¨ç°ä½åã»ã¬ã¯ã¿ãæ示ããããï¼
-ä¾ãã°Variation~Selector~18 (\texttt{U+E0101})ã\IVSB{18}ã®ããã«è¡¨è¨ãã¦ããï¼
-%
-\medskip
-
-%<*en>
-Specifying glyph variants by IVS precedes glyph replacement by font features.
-For example, only ``è'' in ``è西'' is changed by font features
-\texttt{jp78}~or~\texttt{jp90}, which does not followed by any variation selector.
-%
-%<*ja>
-ã¾ãï¼IVSã«ããåå½¢æå®ã¯ï¼font featureã«ããããã«åªå
ããããã¨ã¨ããï¼
-ä¸ã®ä¾ã«ããã¦ï¼\texttt{jp78}, \texttt{jp90} æå®ã§åå½¢ãå¤åããæåã¯
-ç°ä½åã»ã¬ã¯ã¿ãç¶ãã¦ããªããè西ãä¸ã®ãèãã®ã¿ã§ããï¼
+ãããï¼ç¾å¨ã®\Pkg{luaotfload}ã\Pkg{fontspec}ããã±ã¼ã¸ã¯
+IVSã«å¯¾å¿ãã¦ããããã§ããã®ã§ï¼ãã¯ãä¸ã®å½ä»¤ãå®è¡ããå¿
è¦ã¯ãªãï¼
%
-\begin{LTXexample}
- \def\TEST#1{%
- {\jfontspec[#1]{KozMinPr6N-Regular}%
- èó åå¸ï¼èó 飾åºï¼è西}\\}
- æå®ãªãï¼\TEST{}
- \texttt{jp78}ï¼\TEST{CJKShape=JIS1978}
- \texttt{jp90}ï¼\TEST{CJKShape=JIS1990}
-\end{LTXexample}
-
-%<*ja>
-ç¾ç¶ã§ã¯ï¼\TeX å´ã®ã¤ã³ã¿ã¼ãã§ã¼ã¹ã¨ãªã \Pkg{luatexja-otf.sty} ã¯ä¸åå¤æ´ãã¦ããªã
-ã®ã§ï¼ZRããã«ãã\Pkg{PXipamjm}ããã±ã¼ã¸%
-\footnote{\url{https://github.com/zr-tex8r/PXipamjm}. 説æã¯å½¼ã®ããã°è¨äº
-ãpxipamjm ããã±ã¼ã¸ã®èª¬ææ¸ã®ãããªä½ã(\url{http://d.hatena.ne.jp/zrbabbler/20131221})ã
-ã«ããï¼}
-ã«ãããããªæ°ã®å©ããå½ä»¤ã¯ã¾ã ãªãï¼
-ç°ä½åã®ä¸è¦§è¡¨ç¤ºãè¡ãããå ´åã¯ï¼gitãªãã¸ããªå
ã® \texttt{test/test19-ivs.tex} ä¸ã«ãã
-Luaã»\TeX ã³ã¼ããåèã«ãªãã ããï¼
-%
-
\subsection{\Pkg{luatexja-adjust}}
\label{ssec-adj}
@@ -6704,38 +6919,106 @@ for making the difference obvious.
(see Japanese version of this manual)
%
%<*ja>
+ãã®è¿½å ããã±ã¼ã¸ã¯ä»¥ä¸ã®æ©è½ãæä¾ããï¼è©³ç´°ãªä»æ§ã«ã¤ãã¦ã¯\ref{sec-adjspec}ç« ãåç
§ãã¦ã»ããï¼
+\begin{description}
+\item[è¡æ«æåã®ä½ç½®èª¿æ´]
+ \pTeX ã§ã¯ï¼ï¼æ¯éã¯ã¨ãããï¼ãè¡æ«ã®èªç¹ã¯ã¶ãä¸ããäºååããå
¨è§åãã®ããããã«ãã®ããã«
+ è¡æ«æåã¨å®éã®è¡æ«ã®ä½ç½®é¢ä¿ã2éã以ä¸ã«ãããã¨ã¯é¢åã§ãã£ãï¼
+ åæãã©ã³ãã¡ããªãã¯ã ãã§ã¯ã常ã«è¡æ«ã®èªç¹ã¯ã¶ãä¸ããã¨ãã£ããã¨ããã§ããï¼
+ åã®æã«æ¸ãããã¨ãå®ç¾ããã«ã¯
+\begin{lstlisting}
+\def\ã{%
+ \penalty10000 % ç¦åããã«ãã£
+ \hbox to0pt{ã\hss}\penalty0 % ã¶ãä¸ãã®å ´å
+ \kern.5\zw\penalty0 % äºååãã®å ´å
+ \kern.5\zw\penalty0 % å
¨è§åãã®å ´å
+}
+\end{lstlisting}
+ ã®ãããªå½ä»¤ãå®ç¾©ãï¼æä¸ã®å
¨ã¦ã®å¥ç¹ã \lstinline+\ã+ ã§æ¸ããã¨ãå¿
è¦ã ã£ãï¼
+
+\Pkg{luatexja-adjust}ããã±ã¼ã¸ã¯ï¼ä¸ã§è¿°ã¹ãè¡æ«æåã¨å®éã®è¡æ«ã¨ã®ä½ç½®é¢ä¿ã
+2éã以ä¸ããèªåçã«é¸æããæ©è½ãæä¾ããï¼
+\pdfTeX ã¨åãããã«ï¼ã\TeX ã«ããè¡åå²ã®å¾ã§è¡æ«æåã®ä½ç½®ãè£æ£ãããæ¹æ³ã¨
+ ãè¡åå²ã®éç¨ã§è¡æ«æåã®ä½ç½®ãèæ
®ã«å
¥ãããæ¹æ³ãé¸ã¹ãããã«ããï¼
+\Pkg{luatexja-adjust}ããã±ã¼ã¸ã®æ¢å®ã§ã¯åè
ï¼ï¼
+
+\item[åªå
é ä½ä»ãã®è¡é·èª¿æ´]
\pTeX ã§ã¯ï¼è¡é·èª¿æ´ã«ããã¦åªå
度ã®æ¦å¿µãåå¨ããªãã£ãããï¼å³
\ref{fig-adj}ä¸æ®µã«ãããåè§åã®å端ã¯ï¼å³\ref{fig-adj}ä¸æ®µã®ããã«ï¼éµ
æ¬å¼§å¨è¾ºã®ç©ºç½ã¨åæé空ç½(\Param{kanjiskip})ã®ä¸¡æ¹ã«ãã£ã¦è² æ
ãããï¼ã
ããï¼ãæ¥æ¬èªçµçå¦çã®è¦ä»¶ã\cite{jlreq}ãJIS~X~4051~\cite{x4051}ã«ãã
ã¦ã¯ï¼ãã®ãããªç¶æ³ã§ã¯å端ã¯éµæ¬å¼§å¨è¾ºã®ç©ºç½ã®ã¿ã§è² æ
ãï¼ãã®ä»ã®åæ
-æåã¯ãã¿çµã§çµã¾ããï¼å³\ref{fig-adj}ä¸æ®µï¼ãã¨ã«ãªã£ã¦ããï¼ãã®è¿½å
-ããã±ã¼ã¸ã¯\cite{jlreq}ã\cite{x4051}ã«ãããè¦å®ã®ãããªï¼åªå
é ä½ä»ã
-ã®è¡é·èª¿æ´ãæä¾ããï¼è©³ç´°ãªä»æ§ã«ã¤ãã¦ã¯\ref{sec-adjspec}ç« ãåç
§ãã¦ã»ããï¼
+æåã¯ãã¿çµã§çµã¾ããï¼å³\ref{fig-adj}ä¸æ®µï¼ãã¨ã«ãªã£ã¦ããï¼
+\Pkg{luatexja-adjust}ããã±ã¼ã¸ã®æä¾ãã第2ã®æ©è½ã¯ï¼
+\cite{jlreq}ã\cite{x4051}ã«ãããè¦å®ã®ãããªï¼åªå
é ä½ä»ã
+ã®è¡é·èª¿æ´ã§ããï¼
\begin{itemize}
\item åªå
度ä»ãè¡é·èª¿æ´ã¯ï¼æ®µè½ãè¡åå²ããå¾ã«åã
ã®è¡ã«ã¤ãã¦è¡ããããã®ã§ããï¼
ãã®ããï¼è¡åå²ã®ä½ç½®ã¯å¤åãããã¨ã¯ãªãï¼
-ã¾ãï¼\verb+\hbox to ... {...}+ ã®ãããªãå¹
ãæå®ãããhboxãã§ã¯ç¡å¹ã§ããï¼
+\verb+\hbox{...}+ ã¨ãã£ããéä¸ã§æ¹è¡ã§ããªãæ°´å¹³ããã¯ã¹ãã§ã¯ï¼ãã¨ãå¹
ãæå®ããã¦ãã¦ãï¼ç¡å¹ã§ããï¼
\item åªå
度ä»ãè¡é·èª¿æ´ãè¡ãã¨ï¼åæå¦çã°ã«ã¼ã®èªç¶é·ã¯å¤åããªããï¼ä¼¸ã³éã縮ã¿éã¯
ä¸è¬ã«å¤åããï¼ãã®ããï¼æ¢ã«çµã¾ãã段è½ã \cs{unhbox} ãªã©ãå©ç¨ãã¦çµã¿ç´ãå¦çã
è¡ãå ´åã«ã¯æ³¨æãå¿
è¦ã§ããï¼
\end{itemize}
+\end{description}
-
-\Pkg{luatexja-adjust} ã¯ï¼ä»¥ä¸ã®å½ä»¤ãæä¾ããï¼ãããã¯ãã¹ã¦ã°ãã¼ãã«ã«å¹åãçºæ®ããï¼
+\Pkg{luatexja-adjust}ããã±ã¼ã¸ã¯ï¼ä¸è¨ã§è¿°ã¹ã2æ©è½ãæå¹å/ç¡å¹åããããã®
+以ä¸ã®å½ä»¤ãæä¾ããï¼ãããã¯ãã¹ã¦ã°ãã¼ãã«ã«å¹åãçºæ®ããï¼
\begin{cslist}
+\item[\cs{ltjenableadjust[...]}]
+\verb+...+ ã«æå®ããkey-valueãªã¹ãã«å¾ãï¼ãè¡æ«æåã®ä½ç½®èª¿æ´ããåªå
é ä½ä»ãã®è¡é·èª¿æ´ããæå¹å/ç¡å¹åããï¼
+æå®ã§ãããã¼ã¯ä»¥ä¸ã®éãï¼
+\begin{description}
+ \item[\texttt{lineend=[false,true,extended]}]
+ è¡æ«æåã®ä½ç½®èª¿æ´ã®æ©è½ãç¡å¹å(\texttt{false})ï¼ãè¡åå²å¾ã«èª¿æ´ãã®å½¢ã§æå¹å(\texttt{true})ï¼
+ ãè¡åå²ã®ä»®å®ã§èæ
®ã(\texttt{extended})ããï¼
+ \item[\texttt{priority=[false,true]}]
+ åªå
é ä½ä»ãã®è¡é·èª¿æ´ãç¡å¹å(\texttt{false})ï¼ã¾ãã¯æå¹å(\texttt{true})ããï¼
+\end{description}
+両ãã¼ã¨ããã¼åã®ã¿ãæå®ããå ´åã¯å¤ã¨ãã¦\texttt{true}ãæå®ããããã®ã¨æ±ãããï¼
+
+äºææ§ã®çºï¼ãªãã·ã§ã³ç¡ãã§ãã \cs{ltjenableadjust}ãå¼ã³åºãããå ´åã¯ï¼
+\begin{lstlisting}
+\ltjenableadjust[lineend=true,priority=true]
+\end{lstlisting}
+ã¨æ±ãããï¼
+
\item[\cs{ltjdisableadjust}]
-åªå
é ä½ä»ãã®è¡é·èª¿æ´ãç¡å¹åããï¼
+\Pkg{luatexja-adjust}ããã±ã¼ã¸ã®æ©è½ãç¡å¹åããï¼
+\begin{lstlisting}
+\ltjenableadjust[lineend=false,priority=false]
+\end{lstlisting}
+ã¨å義ï¼
+\end{cslist}
-\item[\cs{ltjenableadjust}]
-åªå
é ä½ä»ãã®è¡é·èª¿æ´ãæå¹åããï¼
+ã¾ãï¼åªå
é ä½ä»ãã®è¡é·èª¿æ´ã®ããã«ï¼æ¬¡ã®2ãã©ã¡ã¼ã¿ã\cs{ltjsetparameter}å
ã§
+追å ãããï¼ä¸¡ãã©ã¡ã¼ã¿ã¨ãã°ãã¼ãã«ã«å¹åãçºæ®ããï¼
+\begin{cslist}[style=standard]
+\item[\DParam{stretch\_priority}\,=\{\}]
+\Param{kanjiskip}, \Param{xkanjiskip}ï¼ããã³ã\textbf{JAglue}以å¤ã®ã°ã«ã¼ããï¼
+ãè¡ãèªç¶é·ãã伸ã°ããå ´åã®èª¿æ´ã«ç¨ããåªå
度ãæå®ããï¼
-\item[\textsf{adjust}\,=] \cs{ltjsetparameter} ã§æå®å¯è½ãªè¿½å ãã©ã¡ã¼ã¿ã§ããï¼
-ã\textit{true}ãªã \cs{ltjenableadjust} ãï¼
-ããã§ãªããã° \cs{ltjdisableadjust} ãå®è¡ããï¼
+æå®æ¹æ³ã¯ï¼ã®ä¸ã«key-value listã®å½¢ã§
+\begin{lstlisting}
+stretch_priority={kanjiskip=-35,xkanjiskip=-25,others=50}
+\end{lstlisting}
+ã®ããã«ãã¦è¡ãï¼ãã¼å\texttt{kanjiskip},~\texttt{xkanjiskip}ã«ã¤ãã¦ã¯
+ãã®ã¾ã¾ã®æå³ã§ããï¼
+\texttt{others}ãã¼ãã\textbf{JAglue}以å¤ã®ã°ã«ã¼ãã表ãï¼
+åãã¼ã®å¤ã¯ï¼JFMã°ã«ã¼ã«ããããåªå
度$i$ãã$10i$ã«å¯¾å¿ãããæ´æ°å¤ã§ããï¼
+ 大ããæ¹ãå
ã«ä¼¸ã°ããããã¨ãæå³ãã¦ããï¼
+
+\item[\DParam{shrink\_priority}\,=\{\}]
+åæ§ã«ï¼ãè¡ãèªç¶é·ãã縮ãããå ´åã®èª¿æ´ã«ç¨ããåªå
度ãæå®ããï¼
+ãã以å¤ã¯\Param{stretch\_priority}ã¨æå®ã®å½¢å¼ã¯å¤ãããªãï¼
\end{cslist}
+åæå¤ã¯\Param{stretch\_priority}, \Param{shrink\_priority}ã¨ã
+\begin{lstlisting}
+{kanjiskip=-35,xkanjiskip=-25,others=50}
+\end{lstlisting}
+ã§ããï¼ãåªå
度$-4$ãã¨æå®ããã¦ããJFMã°ã«ã¼ãæã伸ã³ï¼ç¸®ã¿ï¼ã«ããããã«ãªã£ã¦ããï¼
%
\subsection{\Pkg{luatexja-ruby}}
@@ -6982,7 +7265,7 @@ In this case, will be aligned \dots
%\section{Storing Parameters}
%\section{ãã©ã¡ã¼ã¿ã®ä¿æ}
\label{sec-para}
-%\subsection{Used Dimensions, Attributes and Whatsit Nodes}
+%\subsection{Used dimensions, attributes and whatsit nodes}
%\subsection{\LuaTeX-jaã§ç¨ããããã¬ã¸ã¹ã¿ã¨whatsitãã¼ã}
%<*en>
@@ -7202,6 +7485,18 @@ $i$ã¯7ããå°ããèªç¶æ°ï¼
\end{description}
% \TeX å´ããè¦ããå¤ï¼ã¤ã¾ã \verb+\the\ltj@dir+ ã®å¤ã¯å¸¸ã«0ã§ããï¼
+\cnt{ltjlineendcomment}
+%<*ja>
+ \LuaTeX-jaã¯\textbf{JAchar}ã§å
¥åè¡ãçµäºããå ´åï¼ãã®ç´å¾ã«ã³ã¡ã³ãæåã
+ ãããã¨ã§ä½è¨ãªç©ºç½ãæ¿å
¥ããããã¨ãé²ãã§ããï¼
+ \cs{ltjlineendcomment}ã¯ãã®éã®ã³ã¡ã³ãæåã®Unicodeã«ããã符å·ä½ç½®ãæå®ãã
+ ï¼è©³ç´°ã¯\ref{ssec:lineend}ç¯ãåç
§ï¼ï¼
+
+ \LuaTeX-jaã«ãããæ¢å®å¤ã¯$\texttt{"FFFFF}=1048575$ã§ããï¼
+ ã¦ã¼ã¶ã¯å
é¨åä½ãçç¥ãã¦ããªãéããã®ã«ã¦ã³ã¿ã®å¤ãå¤æ´ãã¦ã¯ãªããªãï¼
+ \cs{ltjlineendcomment}ã®å¤ãUnicodeã®ç¯å²å¤ï¼è² ãï¼$\texttt{"10FFFF}=1114111$ãè¶
ããå ´åï¼
+ ã«ãããã¨ã¯æ³å®ããã¦ããªãï¼
+%
\end{list}
%<*en>
@@ -7293,7 +7588,7 @@ These whatsits will be removed during the process of inserting \textbf{JAglue}s.
ãããã®whatsitãã¼ãã¯\textbf{JAglue}ã®æ¿å
¥å¦çã®éã«åãé¤ãããï¼
%
-%\subsection{Stack System of \LuaTeX-ja}
+%\subsection{Stack system of \LuaTeX-ja}
%\subsection{\LuaTeX-jaã®ã¹ã¿ãã¯ã·ã¹ãã }
\label{ssec-stack}
@@ -7473,7 +7768,7 @@ To solve this problem, we use another trick: the assignment
%
%<*en>
-\subsection{Lua Functions of the Stack System}
+\subsection{Lua functions of the stack system}
In this subsection, we will see how a user use \LuaTeX-ja's stack system to
store some data which obeys the grouping of \TeX.
%
@@ -7679,7 +7974,7 @@ end
%\section{Linebreak after a Japanese Character}
%\section{åææåç´å¾ã®æ¹è¡}
\label{sec-lbreak}
-%\subsection{Reference: Behavior in \pTeX}
+%\subsection{Reference: behavior in \pTeX}
%\subsection{åèï¼\pTeX ã®åä½}
%<*en>
In~\pTeX, a line break after a Japanese character doesn't emit a space,
@@ -7808,6 +8103,7 @@ to State~$M$ (middle of line) sometimes.
%\subsection{Behavior in \LuaTeX-ja}
%\subsection{\LuaTeX-jaã®åä½}
+ \label{ssec:lineend}
%<*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
@@ -7822,14 +8118,16 @@ space must be done \emph{just before} an input line is read.
Considering these situations, handling of an end-of-line in \LuaTeX-ja are as follows:
\begin{quote}
-A character \texttt{U+FFFFF} (its category code is set to 14~(\textit{comment}) by
-\LuaTeX-ja) is appended to an input line, \emph{before \LuaTeX\ actually
+A character whose character code is \cs{ltjlineendcomment}%
+\footnote{Its default value is \texttt{"FFFFF}, so \texttt{U+FFFFF} is used.
+The category code of \texttt{U+FFFFF} is set to 14~(\textit{comment}) by
+\LuaTeX-ja.} is appended to an input line, \emph{before \LuaTeX\ actually
process it}, if and only if the following three conditions are satisfied:
\begin{enumerate}
\item The category code of \cs{endlinechar}%
\footnote{Usually, it is $\langle$\textit{return}$\rangle$
(whose character code is 13).} is 5~(\textit{end-of-line}).
-\item The category code of \texttt{U+FFFFF} itself is 14~(\textit{comment}).
+\item The category code of \cs{ltjlineendcomment} itself is 14~(\textit{comment}).
\item The input line matches the following ``regular expression'':
\[
(\text{any char})^*(\textbf{JAchar})
@@ -7857,7 +8155,7 @@ there is a space before ``u''. This follows from following reasons:
\item When line~3 is processed by \texttt{process\_input\_buffer} callback,
``ã'' is considered as an \textbf{JAchar}.
Since line~3 ends with an \textbf{JAchar},
-the comment character \texttt{U+FFFFF} is appended to this line,
+the comment character (whose character code is \cs{ltjlineendcomment}) is appended to this line,
and hence the linebreak immediately after this line is ignored.
\item When line~4 is processed by \texttt{process\_input\_buffer} callback,
``ã'' is considered as an \textbf{ALchar}.
@@ -7882,13 +8180,15 @@ emits a space.
\begin{quote}
åå
¥åè¡ã«å¯¾ãï¼\emph{ãã®å
¥åè¡ãèªã¾ããåã®å
é¨ç¶æ
ã§}
-以ä¸ã®3æ¡ä»¶ãæºãããã¦ããå ´åï¼\LuaTeX-jaã¯\texttt{U+FFFFF}ã®æå
-\footnote{ãã®æåã¯ã³ã¡ã³ãæåã¨ãã¦æ±ãããããã«\LuaTeX-jaå
é¨ã§è¨å®ããã¦ããï¼}
+以ä¸ã®3æ¡ä»¶ãæºãããã¦ããå ´åï¼\LuaTeX-jaã¯\cs{ltjlineendcomment}çªã®æå
+\footnote{\cs{ltjlineendcomment}ã®æ¢å®å¤ã¯\texttt{"FFFFF}ã§ããã®ã§ï¼
+ æ¢å®ã§ã¯\texttt{U+FFFFF}ã使ããããã¨ã«ãªãï¼ãã®æåã¯ã³ã¡ã³ãæåã¨ãã¦æ±ãããããã«
+ \LuaTeX-jaå
é¨ã§è¨å®ããã¦ããï¼}%
ãæ«å°¾ã«è¿½å ããï¼ãã£ã¦ï¼ãã®å ´åã«æ¹è¡ã¯ç©ºç½ã¨ã¯è¦åãããªããã¨ã¨ãªãï¼
\begin{enumerate}
\item \cs{endlinechar}ã®æå\footnote{æ®éã¯ï¼æ¹è¡æåï¼æåã³ã¼ã13çªï¼ã§ããï¼}
ã®ã«ãã´ãªã¼ã³ã¼ãã5~(\textit{end-of-line})ã§ããï¼
-\item \texttt{U+FFFFF}ã®ã«ãã´ãªã¼ã³ã¼ãã14~(\textit{comment})ã§ããï¼
+\item \cs{ltjlineendcomment}ã®ã«ãã´ãªã¼ã³ã¼ãã14~(\textit{comment})ã§ããï¼
\item å
¥åè¡ã¯æ¬¡ã®ãæ£è¦è¡¨ç¾ãã«ããããã¦ããï¼
\[
(\text{any char})^*(\textbf{JAchar})
@@ -7918,7 +8218,7 @@ u
\begin{itemize}
\item 3è¡ç®ã \texttt{process\_input\_buffer} ã§å¦çããæç¹ã§ã¯ï¼
ãããã¯\textbf{JAchar}ï¼åææ±ãï¼ã§ããï¼ãã£ã¦3è¡ç®ã¯\textbf{JAchar}ã§çµãããã¨ã«ãªãï¼
- ã³ã¡ã³ãæå \texttt{U+FFFFF} ã追å ãããï¼
+ \cs{ltjlineendcomment}çªã®ã³ã¡ã³ãæåã追å ãããï¼
ãã£ã¦ï¼ç´å¾ã®æ¹è¡æåã¯ç¡è¦ããããã¨ã«ãªãï¼ç©ºç½ã¯å
¥ããªãï¼
\item 4è¡ç®ã \texttt{process\_input\_buffer} ã§å¦çããæç¹ã§ã¯ï¼
ãããã¯\textbf{ALchar}ã§ããï¼ãã£ã¦4è¡ç®ã¯\textbf{ALchar}ã§çµãããã¨ã«ãªãï¼
@@ -8021,11 +8321,11 @@ with the \textit{id} of it:
\Node{glyph}{accent}\\\noalign{\medskip}
\Node{hbox}{accent (shifted vert.)}
\end{array}\right\}\longrightarrow
-\Node{kern}{$\mathit{subtype}=2$}}^{\text{(a)}}
+\Node{kern}{$\mathit{subtype}=2$}}^{\text{(b)}}
\longrightarrow
\Node{glyph}{$p$}\longrightarrow
\overbrace{%
-\Node{kern}{italic corr.}}^{\text{(b)}}
+\Node{kern}{italic corr.}}^{\text{(a)}}
\]
%<*en>
@@ -8691,7 +8991,7 @@ a patch \Pkg{jlisting.sty}~(\cite{jlisting}) resolves the problem forcibly.
%<*en>
In \LuaTeX-ja, the problem is resolved by using the \verb+process_input_buffer+ callback.
-The callback function inserts the output command (active character \texttt{U+FFFFF})
+The callback function inserts the output command (active character \cs{ltjlineendcomment})
before each letter above \texttt{U+0080}.
This method can omits the process to make all Japanese characters active
(most of the activated characters are not used in many cases).
@@ -8699,7 +8999,7 @@ This method can omits the process to make all Japanese characters active
%<*ja>
\LuaTeX-jaã§ã¯ï¼\verb+process_input_buffer+ ã³ã¼ã«ããã¯ãå©ç¨ãããã¨ã§ï¼
ãåè¡ã«åºç¾ãã\texttt{U+0080}以éã®æåã«å¯¾ãã¦ï¼ãããã®åºåå½ä»¤ãåç½®ããã
-ã¨ããæ¹æ³ãã¨ã£ã¦ããï¼åºåå½ä»¤ã¨ãã¦ã¯ï¼ã¢ã¯ãã£ãæååãã \texttt{U+FFFFF} ãç¨ãã¦ããï¼
+ã¨ããæ¹æ³ãã¨ã£ã¦ããï¼åºåå½ä»¤ã¨ãã¦ã¯ï¼ã¢ã¯ãã£ãæååãã\cs{ltjlineendcomment}ãç¨ãã¦ããï¼
ããã«ããï¼ï¼å
¥åã«ã¯ä½¿ç¨ããã¦ããªããããããªãï¼åææåãããã¹ã¦ã¢ã¯ãã£ãåããæéããªãï¼
è¦éããè¯ãå®è£
ã«ãªã£ã¦ããï¼
%
@@ -8718,45 +9018,45 @@ then the patch \Pkg{lltjp-listings} is loaded automatically at \verb+\begin{docu
%\subsection{Notes and additional keys}
%\subsection{注æ}
-%<*en>
-\paragraph{Escaping to \LaTeX}
-We used the \verb+process_input_buffer+ callback to output \textbf{JAchar}s.
-But it has a drawback; any commands whose name contains a \textbf{JAchar}
-cannot be used in any ``escape to \LaTeX''.
+% %<*en>
+% \paragraph{Escaping to \LaTeX}
+% We used the \verb+process_input_buffer+ callback to output \textbf{JAchar}s.
+% But it has a drawback; any commands whose name contains a \textbf{JAchar}
+% cannot be used in any ``escape to \LaTeX''.
-Consider the following input:
-%
-%<*ja>
-\paragraph{\LaTeX ã¸ã®ã¨ã¹ã±ã¼ã}
-æ¥æ¬èªå¯¾å¿ãè¡ãããã« \verb+process_input_buffer+ ã使ç¨ãããã¨ã§ï¼
-\texttt{texcl},~\texttt{escapeinside}ã¨ãã£ã\emph{ã\LaTeX ã¸ã®ã¨ã¹ã±ã¼ããä¸ã§ã¯ï¼
-\textbf{JAchar}ãå称ã®ä¸é¨ã«å«ãå¶å¾¡ç¶´ã¯ä½¿ç¨ä¸å¯è½}ã§ããï¼
-ä¾ãã°æ¬¡ã®ãããªå
¥åãèãããï¼
-%
-\begin{verbatim*}
-\begin{lstlisting}[escapechar=\#]
-#\ã»ã xã´ã#
-\end{lstlisting}
-\end{verbatim*}
-%The line~2 is transformed by the callback to
-%ããã§ï¼2è¡ç®ã¯ \verb+process_input_buffer+ ã®ä½ç¨ã«ããï¼
-\begin{lstlisting}[showspaces, escapechar=\!]
-#\!\IVSA FFFFF!ã»!\IVSA FFFFF!ã x!\IVSA FFFFF!ã´!\IVSA FFFFF!ã#
-\end{lstlisting}
-%<*en>
-before the line is actually processed.
-In the escape (between the character ``\verb+#+''),
-the category code of \texttt{U+FFFFF} is set to 9~(\emph{ignored}).
-Hence the control symbol ``\cs{}\IVSA FFFFF'' will be executed,
-instead of ``\verb+\ã»ã+''.
-%
-%<*ja>
-ã¨å¤æããã¦ããï¼å®éã®å¦çã«åãããï¼
-ã\verb+#+ãã§æã¾ããã\LaTeX ã¸ã®ã¨ã¹ã±ã¼ããä¸ã§ã¯\
-\texttt{U+FFFFF} ã®ã«ãã´ãªã¼ã³ã¼ãã¯9~(\textit{ignored})ã¨ãªãã®ã§ï¼
-çµå±ã\verb+\ã»ã+ãã®ä»£ããã«
-ã\cs{}\IVSA FFFFFãã¨ããcontrol symbolãå®è¡ããããã¨ã«ãªãï¼
-%
+% Consider the following input:
+% %
+% %<*ja>
+% \paragraph{\LaTeX ã¸ã®ã¨ã¹ã±ã¼ã}
+% æ¥æ¬èªå¯¾å¿ãè¡ãããã« \verb+process_input_buffer+ ã使ç¨ãããã¨ã§ï¼
+% \texttt{texcl},~\texttt{escapeinside}ã¨ãã£ã\emph{ã\LaTeX ã¸ã®ã¨ã¹ã±ã¼ããä¸ã§ã¯ï¼
+% \textbf{JAchar}ãå称ã®ä¸é¨ã«å«ãå¶å¾¡ç¶´ã¯ä½¿ç¨ä¸å¯è½}ã§ããï¼
+% ä¾ãã°æ¬¡ã®ãããªå
¥åãèãããï¼
+% %
+% \begin{verbatim*}
+% \begin{lstlisting}[escapechar=\#]
+% #\ã»ã xã´ã#
+% \end{lstlisting}
+% \end{verbatim*}
+% %The line~2 is transformed by the callback to
+% %ããã§ï¼2è¡ç®ã¯ \verb+process_input_buffer+ ã®ä½ç¨ã«ããï¼
+% \begin{lstlisting}[showspaces, escapechar=\!]
+% #\!\IVSA FFFFF!ã»!\IVSA FFFFF!ã x!\IVSA FFFFF!ã´!\IVSA FFFFF!ã#
+% \end{lstlisting}
+% %<*en>
+% before the line is actually processed.
+% In the escape (between the character ``\verb+#+''),
+% the category code of \texttt{U+FFFFF} is set to 9~(\emph{ignored}).
+% Hence the control symbol ``\cs{}\IVSA FFFFF'' will be executed,
+% instead of ``\verb+\ã»ã+''.
+% %
+% %<*ja>
+% ã¨å¤æããã¦ããï¼å®éã®å¦çã«åãããï¼
+% ã\verb+#+ãã§æã¾ããã\LaTeX ã¸ã®ã¨ã¹ã±ã¼ããä¸ã§ã¯\
+% \texttt{U+FFFFF} ã®ã«ãã´ãªã¼ã³ã¼ãã¯9~(\textit{ignored})ã¨ãªãã®ã§ï¼
+% çµå±ã\verb+\ã»ã+ãã®ä»£ããã«
+% ã\cs{}\IVSA FFFFFãã¨ããcontrol symbolãå®è¡ããããã¨ã«ãªãï¼
+% %
%<*en>
\paragraph{Variation selectors}
@@ -8872,7 +9172,7 @@ With this key, the above input now produces better output.
\end{lstlisting}
%
-%\subsection{Class of Characters}
+%\subsection{Class of characters}
%\subsection{æå種}
%Roughly speaking, the \Pkg{listings} package processes input as follows:
@@ -9002,7 +9302,7 @@ Letter, Other, Kanji, Open, Closeã®ã©ãã«å±ãããã¯æ¬¡ã«ãã£ã¦æ±º
%
\begin{itemize}
%\item \textbf{ALchar}s above or equal to~\texttt{U+0080} are classified as Letter.
-%\item ï¼\texttt{U+0080}以éã®ï¼\textbf{ALchar}ã¯ï¼ãã¹ã¦Letteræ±ãã§ããï¼
+%\item \<ï¼\texttt{U+0080}以éã®ï¼\textbf{ALchar}ã¯ï¼ãã¹ã¦Letteræ±ãã§ããï¼
%\item \textbf{JAchar}s are classified in the order as follows:
%\item \textbf{JAchar}ã«ã¤ãã¦ã¯ï¼ä»¥ä¸ã®é åºã«å¾ã£ã¦æå種ã決ããï¼
@@ -9039,93 +9339,148 @@ the \texttt{lstlisting} environment or other environments/commands.
%<*ja>
\section{åæã®è¡é·è£æ£æ¹æ³}
\label{sec-adjspec}
-\Pkg{luatexja-adjust} ã§æä¾ãããåªå
é ä½ä»ãã®è¡é·èª¿æ´ã®è©³ç´°ãè¿°
-ã¹ãï¼å¤§ã¾ãã«è¿°ã¹ãã¨ï¼æ¬¡ã®ããã«ãªãï¼
+\Pkg{luatexja-adjust}ã§æä¾ãããåªå
é ä½ä»ãã®è¡é·èª¿æ´ã®è©³ç´°ã大ã¾ãã«è¿°ã¹ãã¨ï¼æ¬¡ã®ããã«ãªãï¼
\begin{itemize}
+\item ï¼\texttt{lineend=extended}ã®å ´åï¼\textbf{JAglue}ã®æ¿å
¥å¦çã®ã¨ããã§ï¼
+ â¦â¦
\item é常ã®\TeX ã®è¡åå²æ¹æ³ã«å¾ã£ã¦ï¼æ®µè½ãè¡åå²ããï¼ãã®æ®µéã§ã¯ï¼è¡
é·ã«å端ãåºãå ´åï¼ãã®å端åã¯\textbf{JAglue}ï¼\Param{xkanjiskip}ï¼
\Param{kanjiskip}ï¼JFMã°ã«ã¼ï¼ã¨
ãã以å¤ã®ã°ã«ã¼ã®å
¨ã¦ã§ï¼åªå
é ä½ãªãï¼è² æ
ãããï¼
\item ãã®å¾ï¼\texttt{post\_linebreak\_filter} callbackã使ãï¼\emph{段
- è½ä¸ã®åè¡ãã¨ã«}ï¼è¡æ«æåã®ä½ç½®ã調æ´ãããï¼åªå
度ä»ãã®è¡é·èª¿æ´
+ è½ä¸ã®åè¡ãã¨ã«}ï¼è¡æ«æåã®ä½ç½®ã調æ´ï¼\texttt{lineend=true}ã®å ´åï¼ãããï¼åªå
度ä»ãã®è¡é·èª¿æ´
ãå®ç¾ããããã«ã°ã«ã¼ã®ä¼¸ç¸®åº¦ã調æ´ããï¼
ãã®å¦çã«ããã¦ã¯ï¼ã°ã«ã¼ã®èªç¶é·ã¨\textbf{JAglue}以å¤ã®
ã°ã«ã¼ã®ä¼¸ã³éã»ç¸®ã¿éã¯å¤æ´ããï¼å¿
è¦ã«å¿ãã¦\textbf{JAglue}ã®ä¼¸ã³éã»ç¸®ã¿éã®ã¿ã
å¤æ´ããè¨è¨ã¨ããï¼
-
-\Pkg{luatexja-adjust} ã®ä½ç¨ã¯ï¼ãã®å¦çãè¡ãcallbackã追å ããã ãã§ããï¼
- ãã®ç« ã®æ®ãã§ã¯callbackã§ã®å¦çã«ã¤ãã¦è§£èª¬ããï¼
\end{itemize}
+ãã®ç« ã®æ®ãã§ã¯åå¦çã«ã¤ãã¦è§£èª¬ããï¼
\paragraph{æºåï¼åè¨ä¼¸ç¸®éã®è¨ç®}
ã°ã«ã¼ã®ä¼¸ç¸®åº¦ï¼\texttt{plus} ã \texttt{minus} ã§æå®ããã¦ããå¤ï¼ã«ã¯ï¼
æéå¤ã®ä»ã«ï¼\texttt{fi}ï¼\texttt{fil}ï¼\texttt{fill}ï¼\texttt{filll}ã¨
-ãã4ã¤ã®ç¡é大ã¬ãã«ï¼å¾ãã®æ¹ã»ã©å¤§ããï¼ãããï¼è¡ã®èª¿æ´ã«
-\texttt{fi} ãªã©ã®\emph{ç¡é大ã¬ãã«ã®ä¼¸ç¸®åº¦ãç¨ãããã¦ããå ´åã¯ï¼ã
-ã®è¡ã«å¯¾ãã¦ã®å¦çãä¸æ¢}ããï¼
-
-ãã£ã¦ï¼ä»¥éï¼åé¡ã«ãã¦ããè¡ã®è¡é·èª¿æ´ã¯ä¼¸ç¸®åº¦ãæéé·ã®ã°ã«ã¼ãç¨ãã¦
-è¡ããã¦ããã¨ãã¦è¯ãï¼ããã«ï¼ç°¡åã®ããï¼ãã®è¡ã¯ã°ã«ã¼ãåºãããã¦ãã
-ï¼èªç¶é·ã§çµãã¨æã¾ããè¡é·ããã®çãï¼å ´åããæ±ããªãï¼
+ãã4ã¤ã®ç¡é大ã¬ãã«ï¼å¾ãã®æ¹ã»ã©å¤§ããï¼ãããï¼è¡ã®èª¿æ´ã«
+\texttt{fi} ãªã©ã®\emph{ç¡é大ã¬ãã«ã®ä¼¸ç¸®åº¦ãç¨ãããã¦ããè¡ã§ã¯ï¼
+ãè¡æ«æåã®ä½ç½®èª¿æ´ãã®ã¿è¡ãï¼ãã°ã«ã¼ã®èª¿æ´ãã¯è¡ããªãï¼}
ã¾ãï¼æ®µè½ä¸ã®è¡ä¸ã®ã°ã«ã¼ã
\begin{itemize}
\item \textbf{JAglue}ã§ã¯ãªãã°ã«ã¼
\item JFMã°ã«ã¼ï¼åªå
度\footnote{%
\ref{ssec-jfm-str}ç¯ã«ããããã«ï¼
- åJFMã°ã«ã¼ã«ã¯$-2$ãã2ã¾ã§ã®åªå
度ãã¤ãã¦ããï¼}%
+ åJFMã°ã«ã¼ã«ã¯$-4$ãã3ã¾ã§ã®åªå
度ãã¤ãã¦ããï¼å ´åã«ãã£ã¦ã¯
+ 伸ã³ã¨ç¸®ã¿ã§ç°ãªãåªå
度ãä»ãã¦ãããããããªãï¼}%
å¥ã«ã¾ã¨ããããï¼
\item å欧æé空ç½(\Param{xkanjiskip})
\item åæé空ç½(\Param{kanjiskip})
\end{itemize}
-ã®$1+1+5+1=8$ã¤ã«é¡å¥ãï¼ããããã®ç¨®å¥ãã¨ã«
-許容ããã¦ãã伸ã³éï¼\texttt{stretch}ã®å¤ï¼ã®åè¨ãè¨ç®ããï¼
-ã¾ãï¼è¡é·ã¨èªç¶é·ã¨ã®å·®ã\textit{total}ã¨ããï¼
-
+ã®$1+1+8+1=10$ã¤ã«é¡å¥ããï¼
+ããã¦è¨±å®¹ããã¦ãã伸ã³éï¼\texttt{stretch}ã®å¤ï¼ã®åè¨ã
+ç¡éã®ã¬ãã«ãã¨ã«
+\begin{align*}
+ T^{+}_{l}&:= \sum_{\text{$\texttt{stretch\_order}(p) = l$}} \texttt{stretch}(p),&
+ l\in \{\text{(finite)}, \texttt{fi}, \texttt{fil}, \texttt{fill}, \texttt{filll}\}
+\end{align*}
+ã¨è¨ç®ããï¼ããã«ï¼
+\begin{align*}
+T^{+}&:=T^{+}_{L^+},&L^{+} = \max \{l\in
+ \{\text{(finite)}, \texttt{fi}, \texttt{fil}, \texttt{fill}, \texttt{filll}\}:
+ T^{+}_l\neq 0\}
+\end{align*}
+ã¨ããï¼æéã®ä¼¸ã³éã«ã¤ãã¦ã¯ï¼ä¸è¨ã®8種é¡ã®é¡å¥ãã¨ã«ãåè¨ãè¨ç®ããï¼
+ããã«ç¸®ã¿éï¼\texttt{shrink}ã®å¤ï¼ã«ã¤ãã¦ãåæ§ã®å¦çãè¡ãï¼$T^{-}$ãè¨ç®ããï¼
+
+ã¾ãï¼è¡é·ããèªç¶é·ãå¼ããå¤ã\textit{total}ã¨ããï¼
+
+\subsection{è¡æ«æåã®ä½ç½®èª¿æ´ï¼è¡åå²å¾ã®å ´åï¼}
+è¡æ«ã\textbf{JAchar}ã§ããï¼ãã®æåã®å±ããæåã¯ã©ã¹ã§ã¯
+\begin{quote}
+ \texttt{end\_adjust = \{$a_{1}$, $a_{2}$, ..., $a_{n}$\}}
+\end{quote}
+ã§ãã£ãã¨ããï¼
+ãã®ã¨ãï¼ä»¥ä¸ã®æ¡ä»¶ãæºãããå ´åï¼
+ãã®æåã¯ã©ã¹ã«å¯¾ãã\texttt{end\_adjust}ã®å¤ã®ããããã ããã®æåã®ä½ç½®ã移åãããï¼
+\begin{description}
+ \item[æçµè¡ä»¥å¤] è¡é·èª¿æ´ã«ç¡é大ã®ä¼¸ç¸®åº¦ãç¨ãããã¦ããªãï¼
+ ããªãã¡ï¼$\textit{total}>0$ãªãã°$L^{+}=(\text{finite})$ã§ããï¼
+ $\textit{total}>0$ãªãã°$L^{-}=(\text{finite})$ã§ããï¼
+ \item[æçµè¡] è¡é·èª¿æ´ã«ç¡é大ã«ä¼¸ã³ç¸®ã¿ããã°ã«ã¼ãç¨ãããããªãï¼ããã¯\cs{parfillskip}ã®ã¿ã§ããï¼
+ ãã¤ï¼æ¬¡ã®ä¸çå¼ãæç«ããï¼
+ \[
+ \min\{0,a_{1}\}\text{\cs{zw}}\leq (\text{\cs{parfillskip}ã®å®éã®é·ã}) \leq \max\{0,a_{n}\}\text{\cs{zw}}
+ \]
+\end{description}
-\subsection{è¡æ«æåã®ä½ç½®èª¿æ´}
-è¡æ«ãæåã¯ã©ã¹$n$ã®\textbf{JAchar}ã§ãã£ãå ´åï¼
-ãããåãããã¨ã«ãã£ã¦ï¼\textit{total}ã®ãã¡
-\textbf{JAglue}ãè² æ
ããåãå°ãªããããã¨ããï¼
-ãã®è¡æ«æåã®å·¦å³ã®ç§»åå¯è½éã¯ï¼
-JFMä¸ã«ããæåã¯ã©ã¹$n$ã®å®ç¾©ã®
-\texttt{end\_stretch},~\texttt{end\_shrink}ãã£ã¼ã«ãã«
-å
¨è§åä½ã®å¤ã¨ãã¦è¨è¿°ããã¦ããï¼
+å$1\leq i\leq n$ã«å¯¾ãã¦ï¼
+ãè¡æ«ã«$a_{i}$å
¨è§ã ãã®ã«ã¼ã³ã追å ããæã®ï¼\textit{glue\_set}ã®å¤ãã
+$b_{i}$ã¨ããï¼å¼ã§æ¸ãã¨ï¼
+\[
+\catcode`\<=12
+b_{i} = \begin{cases}
+ |\textit{total}-a_{i}\text{\cs{zw}}|/T^{+}
+ &(\textit{total}-a_{i}\text{\cs{zw}}\geq 0)\\
+ |\textit{total}-a_{i}\text{\cs{zw}}|/T^{-}
+ &(\textit{total}-a_{i}\text{\cs{zw}}<0)
+\end{cases}.
+\]
+$b_{i}$éã®æå°å¤ãä¸ãããããª$i$ã$j$ã¨ããã¨ã\footnote{%
+ ãã®ãããª$i$ã2ã¤ä»¥ä¸ããã¨ãã¯ï¼$|\textit{total}-a_{i}\cdot \text{\cs{zw}}|$,
+ $|a_{i}|$, $a_i$ã®é ã§æ¯è¼ãã¦ä¸çªå°ãããªããã®ãé¸ã°ããï¼
+}ï¼
+è¡æ«ã«å¤§ãã$a_{j}$ã®ã«ã¼ã³ã追å ããï¼
+\textit{total}ãã$a_{j}$å
¨è§ã®å¤§ããã ãå¼ãã¦ããï¼
-ä¾ãã°ï¼è¡æ«æåãå¥ç¹ãããã§ããï¼ããã§ç¨ãããã¦ããJFMä¸ã«
-\begin{lstlisting}
- [2] = {
- chars = { 'ã', ... }, width = 0.5, ...,
- end_stretch = 0.5, end_shrink = 0.5,
- },
-\end{lstlisting}
-ã¨ããæå®ããã£ãå ´åï¼ãã®è¡æ«ã®å¥ç¹ã¯
-\begin{itemize}
-\item é常ã®\TeX ã®è¡åå²å¦çã§ãåè§ä»¥ä¸ã®è©°ãããè¡ããã¦ããå ´åï¼
-ãã®è¡ä¸ã®\textbf{JAglue}ã®è² æ
ã軽æ¸ããããï¼
-è¡æ«ã®å¥ç¹ãåè§ã ãå³ã«ç§»åããï¼ã¶ãä¸ãçµãè¡ãï¼ï¼
-\item é常ã®\TeX ã®è¡åå²å¦çã§ãåè§ä»¥ä¸ã®ç©ºãããè¡ããã¦ããå ´åï¼
-éã«è¡æ«å¥ç¹ãåè§å·¦ã«ç§»åãããï¼è¦ãç®çã«å
¨è§åãã¨ãªãï¼ï¼
-\item 以ä¸ã®ã©ã¡ãã§ããªãå ´åï¼è¡æ«å¥ç¹ã®ä½ç½®èª¿æ´ã¯è¡ããªãï¼
-\end{itemize}
-ã¨ãªãï¼
+\subsection{è¡æ«æåã®ä½ç½®èª¿æ´ï¼è¡åå²ã§ã®èæ
®ï¼}
+\texttt{lineend=extended}ãæå®ããã¦ããå ´åï¼\TeX ã«ããè¡åå²ãè¡ãããåã«
+å\textbf{JAchar}ã®ç´å¾ã«ï¼ãã®æåãè¡æ«ã«æ¥ãã¨ãã®ä½ç½®è£æ£ç¨ã®ãã¼ããæ¿å
¥ãã¦ããï¼
-è¡æ«æåã移åããå ´åï¼ãã®åã ã\textit{total}ã®å¤ãå¼ãã¦ããï¼
+\ref{sec-jfmglue}ç« ã®ç¨èªã使ã£ã¦è¿°ã¹ãï¼
+åå´ã®ã¯ã©ã¹ã¿\textit{Nq}ããåæAããåæBãã§ããï¼
+JFMã«ãã£ã¦\texttt{end\_adjust}ã®å¤ã
+\begin{quote}
+ \texttt{end\_adjust = \{$a_{1}$, $a_{2}$, ..., $a_{n}$\}}
+\end{quote}
+ã§ãã£ãã¨ããï¼ãã®ã¨ãï¼æ¬¡ã®ã¯ã©ã¹ã¿\textit{Np}ã®ç´åã«ä»¥ä¸ã®ãã¼ãåãæ¿å
¥ããï¼
+\textbf{JAglue}ã®æ¿å
¥éç¨ã§ç¦åå¦çã®ããã«ã\textit{Nq}ã¨\textit{Np}ã®éã®ããã«ãã£å¤ãå¢ããããã¨ã
+è¡ããããã¨ããããï¼ä»¥ä¸ã§è¿°ã¹ããã¦ãã$(n+1)$åã®ããã«ãã£ã¯ã¿ãªãã®å¦ç対象ã«ãªã£ã¦ããï¼
+\begin{align*}
+ \Node{kern}{$a_{1}\text{\cs{zw}}$}
+ &\longrightarrow \Node{penalty}{$0$} \longrightarrow\Node{kern}{$(a_{2}-a_{1})\text{\cs{zw}}$}
+ \longrightarrow \Node{penalty}{$0$} \longrightarrow\Node{kern}{$(a_{3}-a_{2})\text{\cs{zw}}$}\\
+ &\longrightarrow
+ \cdots \longrightarrow\Node{penalty}{$0$} \longrightarrow
+ \Node{kern}{$(a_{n}-a_{n-1})\text{\cs{zw}}$}
+ \longrightarrow \Node{penalty}{$0$} \longrightarrow
+ \Node{kern}{$-a_{n}\text{\cs{zw}}$} \longrightarrow \Node{penalty}{$10000$}
+\end{align*}
+$n$åããããã«ãã£ã®ç®æãæ¹è¡å¯è½ç®æã§ããï¼ããããã§æ¹è¡ãããå ´åã¯ï¼
+ãã®åã«ããã«ã¼ã³ï¼$n$ç®æã®ãã¡ã©ãã§æ¹è¡ãã¦ãï¼åè¨ã®é·ãã¯$a_{i}$ã®å½¢ï¼ã¯è¡æ«ã«æ®ããï¼
+å¾ãã®ããã«ãã£ã»ã«ã¼ã³ã¯é¤å»ãããï¼ãªãï¼$a_1=0$ã®ã¨ãã¯æåã®å¹
ã$a_{1}\text{\cs{zw}}$ã®ã«ã¼ã³ã¯ä¸è¦ãªã®ã§æ¿å
¥ãããï¼
+ããã«ãã¤$n=1$ã§ãã£ãå ´åã¯å¾ãã®ããã«ãã£ãæ¿å
¥ãããªãï¼
+
+ãªãï¼æ®µè½ã®æ«å°¾ã«ã¯\cs{penalty10000}ã¨\cs{parfillskip}ç±æ¥ã®ã°ã«ã¼ãèªåçã«å
¥ããï¼
+ãããã¨ã®å
¼ãåãã®ãã\emph{æå¾ã®ã¯ã©ã¹ã¿ã«ã¤ãã¦ã¯ä¸è¨ã®ãã¼ãæ¿å
¥å¦çã¯è¡ãããªã}ï¼
+段è½æçµè¡ã®è¡æ«æåã®ä½ç½®èª¿æ´ã¯ï¼ãã§ã«è¿°ã¹ããè¡åå²å¾ã®å ´åãã«ãããæçµè¡ã®å¦çããã®ã¾ã¾ç¨ãã¦ããï¼
\subsection{ã°ã«ã¼ã®èª¿æ´}
-\textit{total}ã®åã ããï¼è¡ä¸ã®ã°ã«ã¼ã®ä¼¸ã³éã«å¿ãã¦è² æ
ããããã¨ã«ãªãï¼
-è² æ
ããã°ã«ã¼ã®åªå
度ã¯ä»¥ä¸ã®é ã§ããï¼
-ã§ããã ã\Param{kanjiskip}ãèªç¶é·ã®ã¾ã¾ã«ãããã¨ã
-試ã¿ã¦ããï¼
+$|\textit{total}|$ã®åã ããï¼è¡ä¸ã®ã°ã«ã¼ã®ä¼¸ã³éï¼ãããã¯ç¸®ã¿éã«å¿ãã¦è² æ
ããããã¨ã«ãªãï¼
+以ä¸ï¼$\textit{total}\geq 0$ã§ããã¨ä»®å®ãã¦è©±ãé²ãããï¼è² ã®ã¨ããåæ§ã§ããï¼
+\Pkg{luatexja-adjust}ã®åæå¤ã§ã¯ä»¥ä¸ã®é ã«ä¼¸ã³éãè² æ
ããããã«ãªã£ã¦ããï¼
+ï¼åªå
度$-4$ã®JFMã°ã«ã¼ã¯ä¾å¤ã¨ãã¦ï¼ã§ããã ã\Param{kanjiskip}ãèªç¶é·ã®ã¾ã¾ã«ãããã¨ã
+試ã¿ã¦ããï¼ãã®é çªã¯\Param{stretch\_priority}ï¼ç¸®ã¿éã«ã¤ãã¦ã¯\Param{shrink\_priority}ï¼
+ãã©ã¡ã¼ã¿ã§å¤æ´å¯è½ã§ããï¼
\begin{enumerate}\def\labelenumi{(\Alph{enumi})}
\item \textbf{JAglue}以å¤ã®ã°ã«ã¼
+ \item åªå
度3ã®JFMã°ã«ã¼
\item åªå
度2ã®JFMã°ã«ã¼
\item åªå
度1ã®JFMã°ã«ã¼
\item åªå
度0ã®JFMã°ã«ã¼
\item åªå
度$-1$ã®JFMã°ã«ã¼
\item åªå
度$-2$ã®JFMã°ã«ã¼
\item \Param{xkanjiskip}
+ \item åªå
度$-3$ã®JFMã°ã«ã¼
\item \Param{kanjiskip}
+ \item åªå
度$-4$ã®JFMã°ã«ã¼
\end{enumerate}
\begin{enumerate}
\item è¡æ«ã®\textbf{JAchar}ã移åãããã¨ã§$\textit{total}=0$ã¨ãªãã°ï¼
@@ -9142,7 +9497,7 @@ JFMä¸ã«ããæåã¯ã©ã¹$n$ã®å®ç¾©ã®
\texttt{glue\_set}, \texttt{glue\_sign}, \texttt{glue\_order}ãåè¨ç®ããï¼
ããã«ãã£ã¦ï¼\textit{total}ã¯\textbf{JAglue}以å¤ã®ã°ã«ã¼ã«ãã£ã¦è² æ
ãããï¼
\end{enumerate}
-\item \textit{total}ãã(A)ã®ä¼¸ã³éã®åè¨ã以ä¸ãªãã°ï¼(A)--(H)ã®ã©ãã¾ã§è² æ
ããã°
+\item \textit{total}ãã(A)ã®ä¼¸ã³éã®åè¨ã以ä¸ãªãã°ï¼(A)--(K)ã®ã©ãã¾ã§è² æ
ããã°
\textit{total}以ä¸ã«ãªãããè¨ç®ããï¼
ä¾ãã°ï¼
\[\catcode`\<=12
@@ -9153,17 +9508,17 @@ JFMä¸ã«ããæåã¯ã©ã¹$n$ã®å®ç¾©ã®
\begin{itemize}
\item (A),~(B)ã«å±ããã°ã«ã¼ã¯åã°ã«ã¼ã§è¨±ããã伸ã³éã¾ã§ä¼¸ã°ãï¼
\item (C)ã«å±ããã°ã«ã¼ã¯ãããã$p\times (\text{伸ã³é})$ã ã伸ã³ãï¼
- \item (D)--(H)ã«å±ããã°ã«ã¼ã¯èªç¶é·ã®ã¾ã¾ï¼
+ \item (D)--(K)ã«å±ããã°ã«ã¼ã¯èªç¶é·ã®ã¾ã¾ï¼
\end{itemize}
å®éã«ã¯ï¼åã«è¿°ã¹ããè¨è¨ãã«å¾ãï¼æ¬¡ã®ããã«å¦çãã¦ããï¼
\begin{enumerate}
\item (C)ã«å±ããã°ã«ã¼ã®ä¼¸ã³éã$p$åããï¼
-\item (D)--(H)ã«å±ããã°ã«ã¼ã®ä¼¸ã³éã0ã¨ããï¼
+\item (D)--(K)ã«å±ããã°ã«ã¼ã®ä¼¸ã³éã0ã¨ããï¼
\item è¡ãæ ¼ç´ããã¦ããhboxã®
\texttt{glue\_set}, \texttt{glue\_sign}, \texttt{glue\_order}ãåè¨ç®ããï¼
ããã«ãã£ã¦ï¼\textit{total}ã¯\textbf{JAglue}以å¤ã®ã°ã«ã¼ã«ãã£ã¦è² æ
ãããï¼
\end{enumerate}
-\item \textit{total}ã(A)--(H)ã®ä¼¸ã³éã®åè¨ããã大ããå ´åï¼ã©ããããããªãã®ã§
+\item \textit{total}ã(A)--(K)ã®ä¼¸ã³éã®åè¨ããã大ããå ´åï¼ã©ããããããªãã®ã§
\verb+^^;+ä½ãããªãï¼
\end{enumerate}
@@ -9179,13 +9534,13 @@ JFMä¸ã«ããæåã¯ã©ã¹$n$ã®å®ç¾©ã®
ãé£ç¶ããå ´åã«ï¼$p$ã®ãã©ã³ãã«å¯¾å¿ãããæã¤ãç°ä½åæ
å ±ãã«å¾ã£ã¦åºåããã°ãªããå¤ããï¼
ãããï¼åã«$p.\textit{char}$ãå¤æ´ããã ãã§ã¯ï¼å¾ãã
-font featureã®é©ç¨ï¼ããä¸ï¼ã«ããç½®æãããå¯è½æ§ãããï¼ãã®ããï¼
+OpenTypeæ©è½ã®é©ç¨ï¼ããä¸ï¼ã«ããç½®æãããå¯è½æ§ãããï¼ãã®ããï¼
\cs{CID} ã \cs{UTF} ã¨åãããã«ï¼\textit{glyph\_node}~$p$ã®ä»£ããã«
\texttt{user\_id} ã\textit{char\_by\_cid}ã§ãããããªuser-defined whatsitãç¨ãã¦ããï¼
\item[ï¼\Pkg{luaotfload} ã«ããfont featureã®é©ç¨ï¼]
\item[\tt ltj.otf] \texttt{user\_id} ã\textit{char\_by\_cid}ã§ãããããªuser-defined whatsitã
ãã¡ãã¨\textit{glyph\_node}ã«å¤æããï¼ãã®å¦çã¯ï¼\cs{CID}, \cs{UTF}ãIVSã«ããç½®æãï¼
-font featureã®é©ç¨ã§ä¸æ¸ãããã¦ãã¾ãã®ãé²æ¢ããããã§ããï¼
+OpenTypeæ©è½ã®é©ç¨ã§ä¸æ¸ãããã¦ãã¾ãã®ãé²æ¢ããããã§ããï¼
\item[\tt ltj.main\_process] \textbf{JAglue}ã®æ¿å
¥å¦çï¼\ref{sec-jfmglue}ç« ï¼ã¨ï¼
JFMã®æå®ã«å¾ã£ã¦å\textbf{JAchar}ã®ã寸æ³ãè£æ£ããããã¨ãè¡ãï¼
\end{description}
@@ -9281,7 +9636,7 @@ CMapãå¿
è¦ã§ããï¼
縦çµæã«ãããå¹
ãæ ¼ç´ãã¦ããï¼æ§é ã¯ä»¥ä¸ã®éãï¼
%
%<*en>
-\subsection{Use of Cache}
+\subsection{Use of cache}
\LuaTeX-ja uses the following cache:
\begin{cslist}
@@ -9337,12 +9692,16 @@ return {
[0]=37001, -- <9089 E0100>
991049, -- <9089 E0101>
...
- ["vert"]=995025, -- vertical variant
+ ["vform"]=995025, -- vertical variant
},
...
+ ["unicodes"]={
+ ["aj102.pe.vert"]=984163, -- glyph name to unicode
+ ...
+ }
},
["chksum"]="FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF", -- checksum of the fontfile
- ["version"]=2, -- version of the cache
+ ["version"]=11, -- version of the cache
}
\end{lstlisting}
%<*ja>