\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,
%<ja> leftmargin=2\zw,
%<en> leftmargin=2em,
}
\label{fig-pos-tate}
\end{figure}
-\item[kern={\{[$j$]=<kern>, [$j'$]=\{<kern>, [<ratio>]\}, ...\}}]
+\item[kern={\{[$j$]=<kern>, [$j'$]=\{<kern>, [ratio=<ratio>]\}, ...\}}]
-\item[glue={\{[$j$]=\{<width>, <stretch>, <shrink>, [<priority>], [<ratio>]\}, ...\}}]\
+\item[glue={\{[$j$]=\{<width>, <stretch>, <shrink>, [ratio=<ratio>, ...]\}, ...\}}]\leavevmode
%<*ja>
-文字クラス$i$の文字と$j$の文字の間に挿入されるkernやglueの量を指定する.
+文字クラス$i$の文字と$j$の文字の間に挿入されるカーンやグルーの量を指定する.
- <priority>は \Pkg{luatexja-adjust} による優先順位付き
- 行長調整(\ref{ssec-adj}節)が有効なときのみ意味を持つ.
-このフィールドは省略可能であり,行調整処理におけるこのglueの優先
- 度を$-2$から$+2$の間の整数で指定する.大きい値ほど「伸びやすく,縮みやすい」
- ことを意味する.省略時の値
- は0であり,範囲外の値が指定されたときの動作は未定義である.
-
-<ratio>も省略可能フィールドであり,$-1$から$+1$の実数値をとる.省略時の値は0である.
-\begin{itemize}
-\item $-1$はこのグルーが「前の文字」由来であることを示す.
-\item $+1$はこのグルーが「後の文字」由来であることを示す.
-\item それ以外の値は,「前の文字」由来のグルーと「後の文字」由来の
-グルーが混合されていることを示す.
-\end{itemize}
-なお,このフィールドの値は\Param{differentjfm}の値が
+<ratio>は,グルーの自然長のうちどれだけの割合が「後の文字」由来かを示す量で,
+$0$から$+1$の実数値をとる.省略時の値は$0.5$である.
+このフィールドの値は\Param{differentjfm}の値が
\texttt{pleft},~\texttt{pright},~\texttt{paverage}の値のときのみ実際に用いられる.
例えば,\cite{x4051}では,句点と中点の間には,
句点由来の二分空きと中点由来の四分空きが挿入されるが,この場合には
\begin{itemize}
\item <width>には$0.5+0.25=0.75$を指定する.
-\item <ratio>には次の値を指定する.
-\[
- -1\cdot \frac{0.5}{0.5+0.25} + 1 \cdot \frac{0.25}{0.5+0.25} = -\frac13
-\]
+\item <ratio>には$0.25/(0.5+0.25)=1/3$を指定する.
\end{itemize}
%</ja>
%<*en>
Specifies the width of kern or glue which will be inserted
between characters in character class~$i$ and those in character class~$j$.
-<priority> 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.
-
-<ratio> is also an optional value between $-1$ and 1. For example,
+<ratio> 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 <ratio> to
-\[
- -1\cdot \frac{0.5}{0.5+0.25} + 1 \cdot \frac{0.25}{0.5+0.25} = -\frac13.
-\]
+we specify <ratio> to $0.25/(0.5+0.25)=1/3$.
%</en>
+%<*ja>
+グルーの指定においては,上記に加えて各 \texttt{[$j$]} の各サブテーブル内に
+次のキーを指定できる,
+\begin{cslist}[style=standard]
+\item[priority=<priority>]
+ \Pkg{luatexja-adjust} による優先順位付き
+ 行長調整(\ref{ssec-adj}節)の際に使われる値であり,
+行調整処理におけるこのglueの優先
+ 度を$-2$から$+2$の間の整数で指定する.大きい値ほど「伸びやすく,縮みやすい」
+ ことを意味する.省略時の値
+ は0であり,範囲外の値が指定されたときの動作は未定義である.
+\item[ksp\_natural=<bool>]
+\item[ksp\_stretch=<bool>]
+\item[ksp\_shrink=<bool>]
+\end{cslist}
+%</ja>
+%<*en>
+In case of glue, one can specify following additional keys in each \texttt{[$j$]}
+ subtable:
+\begin{cslist}[style=standard]
+\item[priority=<priority>]
+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 stretch,
+and is also easy to shrink.
+\item[ksp\_natural=<bool>]
+\item[ksp\_stretch=<bool>]
+\item[ksp\_shrink=<bool>]
+\end{cslist}
+%</en>
\item[end\_stretch=<kern>, end\_shrink=<kern>]
%<*ja>
luatexja.jfont.define_jfm {
dir = 'yoko',
zw = 1.0, zh = 1.0,
- kanjiskip = {0.0, 0.25, 0},
- xkanjiskip = {0.25, 0.25, .125},
+ kanjiskip = { 0.0, 0.25, 0 },
+ xkanjiskip = { 0.25, 0.25, .125 },
[0] = {
align = 'left', left = 0.0, down = 0.0,
width = 1.0, height = 0.88, depth = 0.12, italic=0.0,
glue = {
-- [index] = { width, stretch, shrink, [priority, [ratio]],
-- ksp_nat=t/f, ksp_stretch=t/f, ksp_shrink=t/f }
- [1] = { 0.5 , 0.0, 0.5, 0, 1, ksp_stretch=true },
- [2] = { 0, 0, 0 , ksp_shrink=true },
- [3] = { 0.25, 0.0, 0.25, 1, 1 },
- [4] = {0, 0, 0},
- [6] = {0, 0, 0},
- [7] = {0, 0, 0},
- [8] = {0, 0, 0},
- [9] = {0, 0, 0},
+ [1] = { 0.5 , 0.0, 0.5, rario=1, ksp_stretch=true },
+ [2] = { 0, 0, 0, ksp_shrink=true },
+ [3] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [4] = { 0, 0, 0, ksp_shrink=true },
+ [6] = { 0, 0, 0, ksp_shrink=true },
+ [7] = { 0, 0, 0, ksp_shrink=true },
+ [8] = { 0, 0, 0, ksp_shrink=true },
+ [99] = { 0, 0, 0 },
}
},
width = 0.5, height = 0.88, depth = 0.12, italic=0.0,
glue = {
-- 3 のみ四分,あとは0
- [0] = {0, 0, 0, ksp_shrink=true },
- [1] = {0, 0, 0},
- [2] = {0, 0, 0},
- [3] = { 0.25, 0.0, 0.25, 1 },
- [4] = {0, 0, 0},
- [5] = {0, 0, 0},
- [6] = {0, 0, 0},
- [7] = {0, 0, 0},
- [8] = {0, 0, 0},
- [9] = {0, 0, 0},
+ [0] = { 0, 0, 0, ksp_shrink=true },
+ [1] = { 0, 0, 0, ksp_shrink=true },
+ [2] = { 0, 0, 0, ksp_shrink=true },
+ [3] = { 0.25, 0.0, 0.25, priority=1 },
+ [4] = { 0, 0, 0, ksp_shrink=true },
+ [5] = { 0, 0, 0, ksp_shrink=true },
+ [6] = { 0, 0, 0, ksp_shrink=true },
+ [7] = { 0, 0, 0, ksp_shrink=true },
+ [8] = { 0, 0, 0, ksp_shrink=true },
+ [99] = { 0, 0, 0 },
}
},
width = 0.5, height = 0.88, depth = 0.12, italic=0.0,
glue = {
-- 3 は四分, 2, 4, 9 は0, あとは0.5
- [0] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [1] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [2] = {0, 0, 0},
- [3] = { 0.25, 0.0, 0.25, 1, 1 },
- [4] = {0, 0, 0},
- [5] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [6] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [7] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [8] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [9] = {0, 0, 0},
+ [0] = { 0.5 , 0.0, 0.5, rario=0, ksp_stretch=true },
+ [1] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
+ [2] = { 0, 0, 0, ksp_shrink=true},
+ [3] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [4] = { 0, 0, 0, ksp_shrink=true },
+ [5] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
+ [6] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
+ [7] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
+ [8] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
+ [99] = { 0, 0, 0 },
}
},
--end_stretch = 0.25,
glue = {
-- 3 のみ 0.5,あとは0.25
- [0] = { 0.25, 0.0, 0.25, 1, 1 },
- [1] = { 0.25, 0.0, 0.25, 1, 1 },
- [2] = { 0.25, 0.0, 0.25, 1, 1 },
- [3] = { 0.5 , 0.0, 0.5 , 1, 0 },
- [4] = { 0.25, 0.0, 0.25, 1, 1 },
- [5] = { 0.25, 0.0, 0.25, 1, 1 },
- [6] = { 0.25, 0.0, 0.25, 1, 1 },
- [7] = { 0.25, 0.0, 0.25, 1, 1 },
- [8] = { 0.25, 0.0, 0.25, 1, 1 },
- [9] = { 0.25, 0.0, 0.25, 1, 1 },
+ [0] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [1] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [2] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [3] = { 0.5 , 0.0, 0.5 , priority=1 },
+ [4] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [5] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [6] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [7] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [8] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [99] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
}
},
width = 0.5, height = 0.88, depth = 0.12, italic=0.0,
glue = {
-- 3 は.75, 2, 4 は0, あとは0.5
- [0] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [1] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [3] = { 0.75, 0.0, 0.25, 1, -1/3 },
- [5] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [6] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [7] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [8] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
- [9] = { 0.5 , 0.0, 0.5, 0, -1, ksp_stretch=true },
+ [0] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
+ [1] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
+ [3] = { 0.75, 0.0, 0.25, priority=1, ratio=1/3, ksp_stretch=true },
+ [5] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
+ [6] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
+ [7] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
+ [8] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
+ [99] = { 0.5 , 0.0, 0.5, ratio=0, ksp_stretch=true },
}
},
align = 'left', left = 0.0, down = 0.0,
width = 1.0, height = 0.88, depth = 0.12, italic=0.0,
glue = {
- [1] = { 0.5 , 0.0, 0.5, 0, 1, ksp_stretch=true },
- [2] = {0, 0, 0},
- [3] = { 0.25, 0.0, 0.25, 1, 1 },
- [4] = {0, 0, 0},
- [6] = {0, 0, 0},
- [9] = {0, 0, 0},
+ [1] = { 0.5 , 0.0, 0.5, ratio=1, ksp_stretch=true },
+ [2] = { 0, 0, 0, ksp_shrink=true },
+ [3] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [4] = { 0, 0, 0, ksp_shrink=true },
+ [6] = { 0, 0, 0, ksp_shrink=true },
+ [99] = { 0, 0, 0 },
},
kern = {
[5] = 0.0
align = 'left', left = 0.0, down = 0.0,
width = 1.0, height = 0.88, depth = 0.12, italic=0.0,
glue = {
- [0] = { 0.5 , 0.0, 0.5, 0, 1, ksp_stretch=true },
- [1] = { 0.5 , 0.0, 0.5, 0, 1, ksp_stretch=true },
- [2] = {0, 0, 0},
- [3] = { 0.75, 0.0, 0.25, 1, 1 },
- [4] = {0, 0, 0},
- [6] = {0, 0, 0},
- [7] = { 0.5 , 0.0, 0.5, 0, 1, ksp_stretch=true},
- [8] = {0, 0, 0},
- [9] = {0, 0, 0},
+ [0] = { 0.5 , 0.0, 0.5, ratio=1, ksp_stretch=true },
+ [1] = { 0.5 , 0.0, 0.5, ratio=1, ksp_stretch=true },
+ [2] = { 0, 0, 0, ksp_shrink=true },
+ [3] = { 0.75, 0.0, 0.25, priority=1, ratio=1 },
+ [4] = { 0, 0, 0, ksp_shrink=true },
+ [6] = { 0, 0, 0, ksp_shrink=true },
+ [7] = { 0.5 , 0.0, 0.5, ratio=1, ksp_stretch=true },
+ [8] = { 0, 0, 0, ksp_shrink=true },
+ [99] = { 0, 0, 0 },
},
kern = {
[5] = 0.0
align = 'left', left = 0.0, down = 0.0,
width = 0.5, height = 0.88, depth = 0.12, italic=0.0,
glue = {
- [1] = { 0.5 , 0.0, 0.5, 0, 1, ksp_stretch=true },
- [2] = {0, 0, 0},
- [3] = { 0.25, 0.0, 0.25, 1, 1 },
- [4] = {0, 0, 0},
- [6] = {0, 0, 0},
- [7] = {0, 0, 0},
- [8] = {0, 0, 0},
- [9] = {0, 0, 0},
+ [1] = { 0.5 , 0.0, 0.5, ratio=1, ksp_stretch=true },
+ [2] = { 0, 0, 0, ksp_shrink=true },
+ [3] = { 0.25, 0.0, 0.25, priority=1, ratio=1 },
+ [4] = { 0, 0, 0, ksp_shrink=true },
+ [6] = { 0, 0, 0, ksp_shrink=true},
+ [7] = { 0, 0, 0, ksp_shrink=true },
+ [8] = { 0, 0, 0, ksp_shrink=true},
+ [99] = { 0, 0, 0 },
}
},
width = 1.0, height = 0.88, depth = 0.12, italic=0.0,
glue = {
[1] = { 0.5 , 0.0, 0.5, 0, 1, ksp_stretch=true },
- [2] = {0, 0, 0},
+ [2] = { 0, 0, 0, ksp_shrink=true },
[3] = { 0.25, 0.0, 0.25, 1, 1 },
- [4] = {0, 0, 0},
- [6] = {0, 0, 0},
- [9] = {0, 0, 0},
+ [4] = { 0, 0, 0, ksp_shrink=true },
+ [6] = { 0, 0, 0, ksp_shrink=true },
+ [99] = {0, 0, 0},
},
kern = {
[8] = 0.0
[99] = { -- box末尾
chars = {'boxbdd', 'parbdd'},
glue = {
- [3] = { 0.25, 0.0, 0.25, 1 },
+ [3] = { 0.25, 0.0, 0.25, priority=1 },
}
},