diff options
author | Karl Berry <karl@freefriends.org> | 2023-04-09 19:45:14 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-04-09 19:45:14 +0000 |
commit | ff3b2a89ec36aa462e38987d09d6ef8ba25c0bbd (patch) | |
tree | b15c55e1530ac3b24a33092a04af88a5fc3095a2 /Master/texmf-dist/doc | |
parent | 556a719cebe24900f0c2bcec3c554e7c7a8ad3f9 (diff) |
luatexja (9apr23)
git-svn-id: svn://tug.org/texlive/trunk@66814 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc')
-rw-r--r-- | Master/texmf-dist/doc/luatex/luatexja/README | 8 | ||||
-rw-r--r-- | Master/texmf-dist/doc/luatex/luatexja/luatexja-en.pdf | bin | 717552 -> 701830 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/luatex/luatexja/luatexja-ja.pdf | bin | 1149508 -> 1148687 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/luatex/luatexja/luatexja.dtx | 168 |
4 files changed, 68 insertions, 108 deletions
diff --git a/Master/texmf-dist/doc/luatex/luatexja/README b/Master/texmf-dist/doc/luatex/luatexja/README index 3d22e5b9899..8f5f0431449 100644 --- a/Master/texmf-dist/doc/luatex/luatexja/README +++ b/Master/texmf-dist/doc/luatex/luatexja/README @@ -1,4 +1,4 @@ -The LuaTeX-ja Package 20230211.0 +The LuaTeX-ja Package 20230409.0 -------------------------------- Copyright (c) 2011--2023 The LuaTeX-ja project License: modified BSD (see COPYING) @@ -42,9 +42,9 @@ Installation 2. If you must/want to install manually: a. Download the source archive from CTAN, - or tagged as 20230211.0 in the Git repository by + or tagged as 20230409.0 in the Git repository by <http://git.osdn.jp/view?p=luatex-ja/luatexja.git - ;a=snapshot;h=refs/tags/20230211.0;sf=tgz> + ;a=snapshot;h=refs/tags/20230409.0;sf=tgz> b. Extract the archive and process following three files by LuaLaTeX to generate classes for Japanese typesetting: @@ -93,4 +93,4 @@ Notes This file and ltj-kinsoku.lua are not used anymore. (Do not remove ltj-kinsoku.tex.) -Last commit date: Sat Feb 11 18:49:41 2023 +0900 +Last commit date: Sun Apr 9 08:12:48 2023 +0900 diff --git a/Master/texmf-dist/doc/luatex/luatexja/luatexja-en.pdf b/Master/texmf-dist/doc/luatex/luatexja/luatexja-en.pdf Binary files differindex eefcf7ec7e3..47df10cd7d3 100644 --- a/Master/texmf-dist/doc/luatex/luatexja/luatexja-en.pdf +++ b/Master/texmf-dist/doc/luatex/luatexja/luatexja-en.pdf diff --git a/Master/texmf-dist/doc/luatex/luatexja/luatexja-ja.pdf b/Master/texmf-dist/doc/luatex/luatexja/luatexja-ja.pdf Binary files differindex f073b1b74c7..0cad34ccec9 100644 --- a/Master/texmf-dist/doc/luatex/luatexja/luatexja-ja.pdf +++ b/Master/texmf-dist/doc/luatex/luatexja/luatexja-ja.pdf diff --git a/Master/texmf-dist/doc/luatex/luatexja/luatexja.dtx b/Master/texmf-dist/doc/luatex/luatexja/luatexja.dtx index 864306f9167..a6139ec9c29 100644 --- a/Master/texmf-dist/doc/luatex/luatexja/luatexja.dtx +++ b/Master/texmf-dist/doc/luatex/luatexja/luatexja.dtx @@ -3526,7 +3526,10 @@ causes a error. We denote control sequences which are defined in %<*en> \begin{description} \item[\meta{JFM name}] - The name of a (horizontal) JFM. \LuaTeX-ja searches and loads \texttt{jfm-\meta{JFM name}.lua}. + The name of a (horizontal) JFM. \LuaTeX-ja searches and loads \texttt{jfm-\meta{JFM name}.lua} + \footnote{When \LuaTeX-ja (version~20230409 or later) + is used under \LaTeXe, \LuaTeX-ja searches a JFM also in directories + which are specified in \cs{input@path}.}. \item[\meta{JFM features}] An optional comma-separated list of JFM options. Enclosing braces (\verb+{}+) are optional, but this does not escape any characters. @@ -3552,7 +3555,9 @@ because their \meta{identifier} are different. %<*ja> \begin{description} \item[\meta{JFM name}] - (横組用)JFMの名称.\LuaTeX-jaは\texttt{jfm-\meta{JFM name}.lua}というファイルを探索して読み込む. + (横組用)JFMの名称.\LuaTeX-jaは\texttt{jfm-\meta{JFM name}.lua}というファイルを探索して読み込む + \footnote{\LuaTeX-ja 20230409.0以降では,\LaTeXe 下で読み込まれた場合には + \cs{input@path}で指定された箇所も加えてJFMを探索する.}. \item[\meta{JFM features}] 省略可能なコンマ区切りリスト.全体を囲む \verb+{}+ は省略可能であるが, 囲ったからといって\meta{JFM features}の中で使用可能な文字が増えるわけではない. @@ -3859,7 +3864,7 @@ JFM中における\texttt{kanjiskip\_natural}, \texttt{kanjiskip\_stretch},\ 「JFM由来のグルーの他に,\Param{kanjiskip}の自然長/伸び量/縮み量の一部が 同じ場所に挿入される」という状況が起こりうる. この機能を無効化し,バージョン20150922.0以前と同じような組版を得るためには, -他のOpenType機能と同じように\texttt{-ltjksp}指定を行えば良い(\autoref{fig:ltjksp}参照). +他のOpenType機能と同じように\>\mbox{\texttt{-ltjksp}}\>指定を行えば良い(\autoref{fig:ltjksp}参照). なお, \begin{lstlisting} \jfont\G=HaranoAjiMincho-Regular:jfm=ujis;-ltjksp;+ltjksp at \zw @@ -3875,7 +3880,7 @@ JFM中における\texttt{kanjiskip\_natural}, \texttt{kanjiskip\_stretch},\ \texttt{kanjiskip\_shrink} keys (Page~\pageref{pg:ksp_nat}) makes tha \LuaTeX-ja inserts not only a glue which is specified by a JFM, and also the natural width/stretch part/shrink part of \Param{kanjiskip}. -This functionality is disabled by \texttt{-ltjksp} specification, +This functionality is disabled by \mbox{\texttt{-ltjksp}} specification, as shown in~\autoref{fig:ltjksp}. %</en> \begin{figure} @@ -3888,10 +3893,56 @@ as shown in~\autoref{fig:ltjksp}. \G\leavevmode% \vrule\hbox to 15\zw{あ「い」う,えお}\vrule \end{LTXexample} -\caption{\texttt{ltjksp} `feature''} +\caption{\texttt{ltjksp} ``feature''} \label{fig:ltjksp} \end{figure} +%<*ja> +\paragraph{\texttt{ltjpci}「機能」} +\label{pg:ltjpci} +\Pkg{luaotfload}~v3.19以降では,標準でUnicode(文字から作られるノードたち)がNFCに正規化される +ようになっている.これにより,ソース中でたとえば「か」と合成用濁点(\texttt{U+3099})を続けて入力した場合, +両者それぞれからノードが生成されるが,結果的には「が」を表す1ノードになるわけである. + +しかし,NFCに正規化することで, +たとえば「\UTF{FA19}」(\texttt{U+FA19})が「神」(\texttt{U+795E})にというふうに, +CJK互換漢字がCJK統合漢字に変換されてしまうという問題がある. +異体字セレクタを用いればこのようなことは起きないが,古くからあるフォントでは異体字セレクタをサポートしていない. + +以上の事情に対応するため,\LuaTeX-jaでは,標準で +\emph{CJK互換漢字・CJK互換漢字補助の文字には\Pkg{luaotfload}パッケージによる処理は働かない}ようにしている. +この機能を無効化するには,他のOpenType機能と同じように\texttt{-ltjpci}指定を行えば良い(\autoref{fig:ltjpci}参照). +\texttt{ltjksp}と同様に,\texttt{-ltjpci}, \texttt{+ltjpci}を複数回指定した場合は, +最後に指定したものが有効となる. +%</ja> +%<*en> +\paragraph{\texttt{ltjpci} ``feature''} +\label{pg:ltjpci} +By default, The \Pkg{luaotfload} package (since v3.19) normalizes Unicode sequences to NFC. +However, this normalization converts CJK compatibility ideographs to their canonical equivalents, +such as ``\UTF{FA19}''~(\texttt{U+FA19}) to ``神''. One can use variation selectors, +but old fonts does not support them. + +So, \emph{\LuaTeX-ja now protects CJK compatibility ideographs from processing + by the \Pkg{luaotfload} package by defualt}. +This functionality is disabled by \mbox{\texttt{-ltjpci}} specification, +as shown in~\autoref{fig:ltjpci}. +%</en> +\begin{figure} +\begin{LTXexample}[width=12\zw] +\def\TEST{\leavevmode\char"FA10\char"FA12\char"FA15 + \char"FA19.か\char"3099.は\char"309A.\par} +\jfont\A=HaranoAjiMincho-Regular:jfm=ujis; at 15pt +\A\TEST % default +\jfont\G=HaranoAjiMincho-Regular:jfm=ujis;-ltjpci at 15pt +\G\TEST % ltjpci off +\jfont\H=HaranoAjiMincho-Regular:jfm=ujis;-normalize at 15pt +\H\TEST % normalization off +\end{LTXexample} +\caption{\texttt{ltjpci} ``feature''} +\label{fig:ltjpci} +\end{figure} + %<en>\subsection{\cs{tfont}} %<ja>\subsection{\cs{tfont} 命令} \label{ssec:tfont} @@ -9978,101 +10029,10 @@ u その行はそこで改行するようにした方がいいだろう. %</ja> -\begin{table}[t] -%<ja> \caption{「基底文字+合成用濁点・半濁点」から合成済み文字への変換をサポートする組み合わせ} -%<en> \caption{Normalization of Kana Character Sequences with Combining (Semi)-voiced Sound Mark}\medskip - \label{tab:kana_composite} - \def\D#1{% - {\fboxsep0pt\fcolorbox{cyan}{white}% - {\hbox to 1\zw{\hss#1}}}} %" - \def\DC#1{\D{\unitlength=1\zw - \begin{picture}(1,0) - \put(0.5,0.38){\arc[0,15]{0.25}}\put(0.5,0.38){\arc[30,45]{0.25}}\put(0.5,0.38){\arc[60,75]{0.25}} - \put(0.5,0.38){\arc[90,105]{0.25}}\put(0.5,0.38){\arc[120,135]{0.25}}\put(0.5,0.38){\arc[150,165]{0.25}} - \put(0.5,0.38){\arc[180,195]{0.25}}\put(0.5,0.38){\arc[210,225]{0.25}}\put(0.5,0.38){\arc[240,255]{0.25}} - \put(0.5,0.38){\arc[270,285]{0.25}}\put(0.5,0.38){\arc[300,315]{0.25}}\put(0.5,0.38){\arc[330,345]{0.25}} - \end{picture}\llap{#1\kern-.7\zw}}} - \def\CDJ#1#2{$\mbox{\D{\char"#1}}+\mbox{\DC{゛}}\rightarrow \mbox{\D{\char"#2}}$} - \def\CHJ#1#2{$\mbox{\D{\char"#1}}+\mbox{\DC{゜}}\rightarrow \mbox{\D{\char"#2}}$} - \small\centering - \begin{tabular}{@{}llllll@{}} - \CDJ{3046}{3094}& - \CDJ{304B}{304C}& - \CDJ{304D}{304E}& - \CDJ{304F}{3050}& - \CDJ{3051}{3052}& - \CDJ{3053}{3054}\\ - \CDJ{3055}{3056}& - \CDJ{3057}{3058}& - \CDJ{3059}{305A}& - \CDJ{305B}{305C}& - \CDJ{305D}{305E}& - \CDJ{305F}{3060}\\ - \CDJ{3061}{3062}& - \CDJ{3064}{3065}& - \CDJ{3066}{3067}& - \CDJ{3068}{3069}& - \CDJ{306F}{3070}& - \CDJ{3072}{3073}\\ - \CDJ{3075}{3076}& - \CDJ{3078}{3079}& - \CDJ{307B}{307C}& - \CDJ{309D}{309E}& - \CDJ{30A6}{30F4}& - \CDJ{30AB}{30AC}\\ - \CDJ{30AD}{30AE}& - \CDJ{30AF}{30B0}& - \CDJ{30B1}{30B2}& - \CDJ{30B3}{30B4}& - \CDJ{30B5}{30B6}& - \CDJ{30B7}{30B8}\\ - \CDJ{30B9}{30BA}& - \CDJ{30BB}{30BC}& - \CDJ{30BD}{30BE}& - \CDJ{30BF}{30C0}& - \CDJ{30C1}{30C2}& - \CDJ{30C4}{30C5}\\ - \CDJ{30C6}{30C7}& - \CDJ{30C8}{30C9}& - \CDJ{30CF}{30D0}& - \CDJ{30D2}{30D3}& - \CDJ{30D5}{30D6}& - \CDJ{30D8}{30D9}\\ - \CDJ{30DB}{30DC}& - \CDJ{30EF}{30F7}& - \CDJ{30F0}{30F8}& - \CDJ{30F1}{30F9}& - \CDJ{30F2}{30FA}& - \CDJ{30FD}{30FE}\\ - \CHJ{306F}{3071}& - \CHJ{3072}{3074}& - \CHJ{3075}{3077}& - \CHJ{3078}{307A}& - \CHJ{307B}{307D}& - \CHJ{30CF}{30D1}\\ - \CHJ{30D2}{30D4}& - \CHJ{30D5}{30D7}& - \CHJ{30D8}{30DA}& - \CHJ{30DB}{30DD} - \end{tabular} -\end{table} -%<*en> -\subsection{Composition of Kana from Combining Character Sequences} -In (u)\pTeX, Hiragana and Katakana in the NFD form% -\footnote{namely, character sequences which contains - ``COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK''~(\texttt{U+3099}) and - ``COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK''~(\texttt{U+309A}).} -are normalized to precomposed characters before (u)\pTeX\ looks into the input line. -Character sequences which are involved in this normalization are shown in \autoref{tab:kana_composite}. - -The above normalization process is also performed in \LuaTeX-ja version~20220103.0 or later, because -fonts might not have these transformation as an OpenType feature. -%</en> - %<*ja> -\subsection{濁点・半濁点付き仮名文字の正規化} +\subsection{濁点・半濁点付き仮名の正規化→\Pkg{luaotfload}~v3.19以降ではそちらで} \TeX~Live~2016以降の(u)\pTeX では,合成用濁点(\texttt{U+3099})・合成用半濁点(\texttt{U+309A})を用いて -表現された平仮名・片仮名を合成済み文字に変換する(具体的には\autoref{tab:kana_composite}の組み合わせ)という処理を行っている. +表現された平仮名・片仮名を合成済み文字に変換するという処理を行っている. この処理を行っている要因としては, \begin{itemize} \item 無用なトラブルを避けるため. @@ -10082,14 +10042,14 @@ fonts might not have these transformation as an OpenType feature. 合成用濁点・半濁点は利用できない.そのため上記の変換処理はさらに前から行われていた. \end{itemize} -一方,\LuaTeX(-ja)では入力の変換は基本的に行わず,文字の合成は使用しているフォントのOpenType機能に委ねるという立場である. -しかし,\autoref{tab:kana_composite}に挙げた変換はUnicode正規化の範疇であり,この内容を持っているフォントは多くない. -よって,前段落で述べた2つの理由(と\upTeX との互換性という意味も込めて)も考慮して, -バージョン20220103.0以降では,\LuaTeX-jaは入力行に対して\autoref{tab:kana_composite}の変換を行う. +\LuaTeX(-ja)では入力の変換は基本的に行わず, +文字の合成は使用しているフォントのOpenType機能に委ねるという立場であったが, +\Pkg{luaotfload}~v3.19以降では,標準でNFCへのUnicode正規化を行っている. +そのため,バージョン2023****.0以降では,\LuaTeX-jaによる自前の変換\footnote{バージョン20220103.0で実装した.}は +行わないようにしている. %</ja> - -%<*ja> +%<*ja> %<en>\section{Insertion of JFM glues, \Param{kanjiskip} and \Param{xkanjiskip}} %<ja>\section{JFMグルーの挿入,\Param{kanjiskip}と\Param{xkanjiskip}} \label{sec-jfmglue} |