From 9b25d514e38a322ca702b78f5f9880b85127c4a2 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 27 Aug 2017 23:51:19 +0000 Subject: platex (27aug17) git-svn-id: svn://tug.org/texlive/trunk@45139 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/source/platex/base/kinsoku.dtx | 16 +- Master/texmf-dist/source/platex/base/plcore.dtx | 31 ++- Master/texmf-dist/source/platex/base/plfonts.dtx | 165 ++++++++----- Master/texmf-dist/source/platex/base/plnewsc07.tex | 274 +++++++++++++++++++++ Master/texmf-dist/source/platex/base/plvers.dtx | 2 +- 5 files changed, 419 insertions(+), 69 deletions(-) create mode 100644 Master/texmf-dist/source/platex/base/plnewsc07.tex (limited to 'Master/texmf-dist/source/platex') diff --git a/Master/texmf-dist/source/platex/base/kinsoku.dtx b/Master/texmf-dist/source/platex/base/kinsoku.dtx index 0afe83fd253..e59aa35056d 100644 --- a/Master/texmf-dist/source/platex/base/kinsoku.dtx +++ b/Master/texmf-dist/source/platex/base/kinsoku.dtx @@ -3,7 +3,7 @@ % % Copyright 1995 ASCII Corporation. % Copyright (c) 2010 ASCII MEDIA WORKS -% Copyright (c) 2016 Japanese TeX Development Community +% Copyright (c) 2016-2017 Japanese TeX Development Community % % This file is part of the pLaTeX2e system (community edition). % ------------------------------------------------------------- @@ -15,6 +15,8 @@ % \changes{v1.0}{1995/04/01}{first edition} % \changes{v1.0a}{2016/06/08}{T1などの8ビットフォントエンコーディング % のために128--256の文字を\texttt{\cs{xspcode}=3}に設定} +% \changes{v1.0b}{2017/08/05}{%、&、\%、\&の禁則ペナルティが +% 誤っていたのを修正(post $\rightarrow$ pre)} % \fi % % \setcounter{StandardModuleDepth}{1} @@ -24,7 +26,7 @@ %<*driver> \NeedsTeXFormat{pLaTeX2e} % \fi -\ProvidesFile{kinsoku.dtx}[2016/06/08 v1.0a pLaTeX Kernel (community edition)] +\ProvidesFile{kinsoku.dtx}[2017/08/05 v1.0b pLaTeX Kernel (community edition)] % \iffalse \documentclass{jltxdoc} \GetFileInfo{kinsoku.dtx} @@ -57,14 +59,16 @@ % % \subsection{半角文字に対する禁則} % ここでは、半角文字に対する禁則の設定を行なっています。 +% \changes{v1.0b}{2017/08/05}{%、&、\%、\&の禁則ペナルティが +% 誤っていたのを修正(post $\rightarrow$ pre)} % % \begin{macrocode} \prebreakpenalty`!=10000 \prebreakpenalty`"=10000 \postbreakpenalty`\#=500 \postbreakpenalty`\$=500 -\postbreakpenalty`\%=500 -\postbreakpenalty`\&=500 +\prebreakpenalty`\%=500 +\prebreakpenalty`\&=500 \postbreakpenalty`\`=10000 \prebreakpenalty`'=10000 \prebreakpenalty`)=10000 @@ -132,8 +136,8 @@ \prebreakpenalty`==200 \postbreakpenalty`#=200 \postbreakpenalty`$=200 -\postbreakpenalty`%=200 -\postbreakpenalty`&=200 +\prebreakpenalty`%=200 +\prebreakpenalty`&=200 \prebreakpenalty`ぁ=150 \prebreakpenalty`ぃ=150 \prebreakpenalty`ぅ=150 diff --git a/Master/texmf-dist/source/platex/base/plcore.dtx b/Master/texmf-dist/source/platex/base/plcore.dtx index 5cdc2337634..bac04240e68 100644 --- a/Master/texmf-dist/source/platex/base/plcore.dtx +++ b/Master/texmf-dist/source/platex/base/plcore.dtx @@ -68,13 +68,15 @@ % \changes{v1.2n}{2017/04/23}{ドキュメントの追加} % \changes{v1.2o}{2017/05/03}{行頭禁則文字の直前でも改行するようにした} % \changes{v1.2p}{2017/07/21}{tabular環境のセル内のJFMグル―を削除} +% \changes{v1.2q}{2017/08/25}{\cs{nolinebreak}の場合に\cs{(x)kanjiskip}が +% 入らなくなっていたのを修正} % \fi % % \iffalse %<*driver> \NeedsTeXFormat{pLaTeX2e} % \fi -\ProvidesFile{plcore.dtx}[2017/07/21 v1.2p pLaTeX core file] +\ProvidesFile{plcore.dtx}[2017/08/25 v1.2q pLaTeX core file] % \iffalse \documentclass{jltxdoc} \GetFileInfo{plcore.dtx} @@ -269,8 +271,15 @@ % 行分割が起きた場合、新しい行頭のJFMグル―は消えるという従来の % p\LaTeX{}の挙動も維持しています。 % \changes{v1.2o}{2017/05/03}{行頭禁則文字の直前でも改行するようにした} +% +% 前回の|\hskip\z@\relax|の追加では、|\nolinebreak|の場合に|\kanjiskip|や +% |\xkanjiskip|が入らない問題が起きてしまいました。そこで、 +% |\penalty\z@\relax|に変更しました。これは、明示的な|\penalty|プリミティブ +% 同士の合算は行われないことを利用しています。 +% \changes{v1.2q}{2017/08/25}{\cs{nolinebreak}の場合に\cs{(x)kanjiskip}が +% 入らなくなっていたのを修正} % \begin{macrocode} -%\plIncludeInRelease{2017/05/05}{\@no@lnbk} +%\plIncludeInRelease{2017/07/29}{\@no@lnbk} % {Break before prebreakpenalty}% %<*plcore|platexrelease> \def\@no@lnbk #1[#2]{% @@ -280,7 +289,7 @@ \@tempskipa\lastskip \unskip \penalty #1\@getpen{#2}% - \hskip\z@\relax %% added (2017/05/03) + \penalty\z@\relax %% added (2017/08/25) \ifdim\@tempskipa>\z@ \hskip\@tempskipa \ignorespaces @@ -288,6 +297,22 @@ \fi} % %\plEndIncludeInRelease +%\plIncludeInRelease{2017/05/05}{\@no@lnbk} +% {Break before prebreakpenalty}% +%\def\@no@lnbk #1[#2]{% +% \ifvmode +% \@nolnerr +% \else +% \@tempskipa\lastskip +% \unskip +% \penalty #1\@getpen{#2}% +% \hskip\z@\relax %% added (2017/05/03) +% \ifdim\@tempskipa>\z@ +% \hskip\@tempskipa +% \ignorespaces +% \fi +% \fi} +%\plEndIncludeInRelease %\plIncludeInRelease{0000/00/00}{\@no@lnbk} % {Break before prebreakpenalty}% %\def\@no@lnbk #1[#2]{% diff --git a/Master/texmf-dist/source/platex/base/plfonts.dtx b/Master/texmf-dist/source/platex/base/plfonts.dtx index 7e116ebb358..66ee0ead1e7 100644 --- a/Master/texmf-dist/source/platex/base/plfonts.dtx +++ b/Master/texmf-dist/source/platex/base/plfonts.dtx @@ -34,7 +34,7 @@ % 入らないのを修正} % \changes{v1.3j}{2000/10/24}{\cs{adjustbaseline}で余分なアキが入らない % ようにした} -% \changes{v1.3k}{2001/05/10}{\cs{adjustbaseline}の調整量} +% \changes{v1.3k}{2001/05/10}{欧文書体の基準を再び`/`から`M'に変更} % \changes{v1.3l}{2002/04/05}{\cs{adjustbaseline}でフォントの基準値が縦書き % 以外では設定されないのを修正} % \changes{v1.3m}{2004/06/14}{\cs{fontfamily}コマンド内部フラグ変更} @@ -64,13 +64,15 @@ % \changes{v1.6f}{2017/02/20}{\cs{ystrut}を追加} % \changes{v1.6f}{2017/02/20}{\cs{ystrutbox}を組み立てるように} % \changes{v1.6g}{2017/03/07}{ベースライン補正量を修正} +% \changes{v1.6h}{2017/08/05}{和文書体の基準を全角空白から「漢」に変更} +% \changes{v1.6h}{2017/08/05}{traceのコードの\texttt{\%}忘れを修正} % \fi % % \iffalse %<*driver> \NeedsTeXFormat{pLaTeX2e} % \fi -\ProvidesFile{plfonts.dtx}[2017/03/07 v1.6g pLaTeX New Font Selection Scheme] +\ProvidesFile{plfonts.dtx}[2017/08/05 v1.6h pLaTeX New Font Selection Scheme] % \iffalse \documentclass{jltxdoc} \GetFileInfo{plfonts.dtx} @@ -144,7 +146,7 @@ %<*trace> \NeedsTeXFormat{pLaTeX2e} \ProvidesPackage{ptrace} - [2017/02/20 v1.6f Standard pLaTeX package (font tracing)] + [2017/08/05 v1.6h Standard pLaTeX package (font tracing)] \RequirePackageWithOptions{tracefnt} % % \end{macrocode} @@ -1145,6 +1147,8 @@ \set@fontsize\baselinestretch\f@size\f@baselineskip \fi \size@update} +% +%<*plcore> % \end{macrocode} % \end{macro} % @@ -1163,7 +1167,7 @@ % |\fontsize|コマンドの内部形式です。 % ベースラインの設定と、支柱の設定を行ないます。 % \begin{macrocode} -% +% %\plIncludeInRelease{2017/04/08}{\set@fontsize} % {Construct \ystrutbox}% %<*plcore|platexrelease|trace> @@ -1247,7 +1251,7 @@ % % \let\size@update\relax}} %\plEndIncludeInRelease -%<*plcore|trace> +%<*plcore> % \end{macrocode} % \end{macro} % @@ -1257,30 +1261,41 @@ % 現在の欧文フォントの``/''の中央がくるようにベースラインシフトを設定します。 % \changes{v1.0c}{1995/08/31}{欧文書体の基準を`M'から`/'に変更} % \changes{v1.2}{1995/11/21}{縦組時のみ調整するようにした} -% \changes{v1.3j}{2000/10/24}{文頭に鈎括弧などがあるときに余計なアキがで -% る問題に対処} -% \changes{v1.3l}{2002/04/05}{\cs{adjustbaseline}でフォントの基準値が縦書き -% 以外では設定されないのを修正} % % 当初はまずベースラインシフト量をゼロにしていましたが、 % \cs{tbaselineshift}を連続して変更した後に鈎括弧類を使うと余計なアキが % でる問題が起こるため、\cs{tbaselineshift}をゼロクリアする処理を削除し % ました。 +% \changes{v1.3j}{2000/10/24}{文頭に鈎括弧などがあるときに余計なアキがで +% る問題に対処} % % しかし、それではベースラインシフトを調整済みの欧文ボックスと比較して % しまうため、計算した値が大きくなってしまいます。そこで、このボックス % の中でゼロにするようにしました。また、``/''と比較していたのを``M''に % しました。 -% \changes{v1.3k}{2001/05/10}{\cs{adjustbaseline}の調整量 -% (再び`M'を基準にした)} +% \changes{v1.3k}{2001/05/10}{欧文書体の基準を再び`/`から`M'に変更} +% \changes{v1.3l}{2002/04/05}{\cs{adjustbaseline}でフォントの基準値が縦書き +% 以外では設定されないのを修正} +% +% 全角空白(EUCコード\texttt{0xA1A1})はJFMで特殊なタイプに分類される可能性 +% があるため、和文書体の基準を「漢」(JISコード\texttt{0x3441})へ変更しました。 +% \changes{v1.6h}{2017/08/05}{和文書体の基準を全角空白から「漢」に変更} +% % \begin{macrocode} \newbox\adjust@box \newdimen\adjust@dimen +% \end{macrocode} +% +% \begin{macrocode} +% +%\plIncludeInRelease{2017/07/29}{\adjustbaseline} +% {Change zenkaku reference}% +%<*plcore|platexrelease|trace> \def\adjustbaseline{% % \end{macrocode} % 和文フォントの基準値を設定します。 % \begin{macrocode} - \setbox\adjust@box\hbox{\char\euc"A1A1}%" + \setbox\adjust@box\hbox{\char\jis"3441}%" \cht\ht\adjust@box \cdp\dp\adjust@box \cwd\wd\adjust@box @@ -1294,10 +1309,11 @@ % % \begin{eqnarray*} % \textmc{ベースラインシフト量} &=& -% \{ (\textmc{全角空白の深さ}) - (\textmc{Mの深さ}) \} \\ -% &&- \frac{(\textmc{全角空白の高さ$+$深さ}) +% \{ (\textmc{漢の深さ}) - (\textmc{Mの深さ}) \} \\ +% &&- \frac{(\textmc{漢の高さ$+$深さ}) % - (\textmc{Mの高さ$+$深さ})}{2} % \end{eqnarray*} +% \changes{v1.6h}{2017/08/05}{traceのコードの\texttt{\%}忘れを修正} % % \begin{macrocode} \iftdir @@ -1309,11 +1325,38 @@ \advance\adjust@dimen\cdp \advance\adjust@dimen-\dp\adjust@box \tbaselineshift\adjust@dimen -% \ifnum \tracingfonts>\tw@ -% \typeout{baselineshift:\the\tbaselineshift} -% \fi +% \ifnum \tracingfonts>\tw@ +% \typeout{baselineshift:\the\tbaselineshift}% +% \fi \fi} -% +% +%\plEndIncludeInRelease +%\plIncludeInRelease{0000/00/00}{\adjustbaseline} +% {Change zenkaku reference}% +%\def\adjustbaseline{% +% \setbox\adjust@box\hbox{\char\euc"A1A1}%" +% \cht\ht\adjust@box +% \cdp\dp\adjust@box +% \cwd\wd\adjust@box +% \cvs\normalbaselineskip +% \chs\cwd +% \cHT\cht \advance\cHT\cdp +% \iftdir +% \setbox\adjust@box\hbox{\tbaselineshift\z@ M}% +% \adjust@dimen\ht\adjust@box +% \advance\adjust@dimen\dp\adjust@box +% \advance\adjust@dimen-\cHT +% \divide\adjust@dimen\tw@ +% \advance\adjust@dimen\cdp +% \advance\adjust@dimen-\dp\adjust@box +% \tbaselineshift\adjust@dimen +%<*trace> +% \ifnum \tracingfonts>\tw@ +% \typeout{baselineshift:\the\tbaselineshift} +% \fi +% +% \fi} +%\plEndIncludeInRelease %<*plcore> % \end{macrocode} % \end{macro} @@ -1407,7 +1450,9 @@ } \let\kenc@update\relax % \end{macrocode} +% \end{macro} % +% \begin{macro}{\@changed@kcmd} % |\@changed@cmd|の和文エンコーディングバージョン。 % \changes{v1.3n}{2004/08/10}{和文エンコーディングの切り替えを有効化} % \begin{macrocode} @@ -1754,42 +1799,6 @@ % \end{macro} % % -% -% \subsection{デフォルト設定ファイルの読み込み} -% 最後に、デフォルト設定ファイルである、\file{pldefs.ltx}を読み込みます。 -% このファイルについての詳細は、第\ref{plfonts:pldefs}節を参照してください。 -% \TeX{}の入力ファイル検索パスに設定されているディレクトリに\file{pldefs.cfg}% -% ファイルがある場合は、そのファイルを使います。 -% \begin{macrocode} -\InputIfFileExists{pldefs.cfg} - {\typeout{*************************************^^J% - * Local config file pldefs.cfg used^^J% - *************************************}}% - {\input{pldefs.ltx}} -% -% \end{macrocode} -% -% -% -% -% \section{デフォルト設定ファイル}\label{plfonts:pldefs} -% ここでは、フォーマットファイルに読み込まれるデフォルト値を設定しています。 -% この節での内容は\file{pldefs.ltx}に出力されます。 -% このファイルの内容を\file{plcore.ltx}に含めてもよいのですが、 -% デフォルトの設定を参照しやすいように、別ファイルにしてあります。 -% \file{pldefs.ltx}は\file{plcore.ltx}から読み込まれます。 -% -% プリロードサイズは、\dst{}プログラムのオプションで変更することができます。 -% これ以外の設定を変更したい場合は、\file{pldefs.ltx}を -% 直接、修正するのではなく、このファイルを\file{pldefs.cfg}という名前で -% コピーをして、そのファイルに対して修正を加えるようにしてください。 -% \begin{macrocode} -%<*pldefs> -\ProvidesFile{pldefs.ltx} - [2016/06/26 v1.6e pLaTeX Kernel (Default settings)] -% -% \end{macrocode} -% % \subsection{合成文字} % \LaTeXe{}のカーネルのコードをそのまま使うと、p\TeX{}のベースライン % 補正量がゼロでないときに合成文字がおかしくなっていたため、対策します。 @@ -1800,11 +1809,12 @@ % $-1$が返ります。 % \changes{v1.6c}{2016/06/06}{マクロ追加} % \begin{macrocode} +% %\plIncludeInRelease{2016/06/10}{\g@tlastchart@} % {Added \g@tlastchart@}% -%<*pldefs|platexrelease> +%<*plcore|platexrelease> \def\g@tlastchart@#1{#1\ifx\lastnodechar\@undefined\m@ne\else\lastnodechar\fi} -% +% %\plEndIncludeInRelease %\plIncludeInRelease{0000/00/00}{\g@tlastchart@} % {Added \g@tlastchart@}% @@ -1821,7 +1831,7 @@ % \begin{macrocode} %\plIncludeInRelease{2016/06/10}{\pltx@isletter} % {Added \pltx@isletter}% -%<*pldefs|platexrelease> +%<*plcore|platexrelease> \def\pltx@mark{\pltx@mark@} \let\pltx@scanstop\relax \long\def\pltx@cond#1\fi{% @@ -1840,7 +1850,7 @@ \pltx@cond{\ifnum0\ifcat A\noexpand#21\fi\ifcat=\noexpand#21\fi>\z@}\fi {\@firstoftwo}{\@secondoftwo}% }{\@secondoftwo}} -% +% %\plEndIncludeInRelease %\plIncludeInRelease{0000/00/00}{\pltx@isletter} % {Added \pltx@isletter}% @@ -1979,10 +1989,46 @@ % \fi % #1} %\plEndIncludeInRelease -%<*pldefs> +%<*plcore> % \end{macrocode} % \end{macro} % +% +% \subsection{デフォルト設定ファイルの読み込み} +% 最後に、デフォルト設定ファイルである、\file{pldefs.ltx}を読み込みます。 +% このファイルについての詳細は、第\ref{plfonts:pldefs}節を参照してください。 +% \TeX{}の入力ファイル検索パスに設定されているディレクトリに\file{pldefs.cfg}% +% ファイルがある場合は、そのファイルを使います。 +% \begin{macrocode} +\InputIfFileExists{pldefs.cfg} + {\typeout{*************************************^^J% + * Local config file pldefs.cfg used^^J% + *************************************}}% + {\input{pldefs.ltx}} +% +% \end{macrocode} +% +% +% +% +% \section{デフォルト設定ファイル}\label{plfonts:pldefs} +% ここでは、フォーマットファイルに読み込まれるデフォルト値を設定しています。 +% この節での内容は\file{pldefs.ltx}に出力されます。 +% このファイルの内容を\file{plcore.ltx}に含めてもよいのですが、 +% デフォルトの設定を参照しやすいように、別ファイルにしてあります。 +% \file{pldefs.ltx}は\file{plcore.ltx}から読み込まれます。 +% +% プリロードサイズは、\dst{}プログラムのオプションで変更することができます。 +% これ以外の設定を変更したい場合は、\file{pldefs.ltx}を +% 直接、修正するのではなく、このファイルを\file{pldefs.cfg}という名前で +% コピーをして、そのファイルに対して修正を加えるようにしてください。 +% \begin{macrocode} +%<*pldefs> +\ProvidesFile{pldefs.ltx} + [2017/08/05 v1.6h pLaTeX Kernel (Default settings)] +% +% \end{macrocode} +% % \subsection{イタリック補正} % \changes{v1.3i}{2000/07/13}{\cs{text..}コマンドの左側に\cs{xkanjiskip}が % 入らないのを修正(ありがとう、乙部@東大さん)} @@ -1990,6 +2036,7 @@ % 「\verb|あ\texttt{abc}い|」としたとき、書体の変更を指定された欧文の左側に % 和欧文間スペースが入らないのを修正します。 % \begin{macrocode} +%<*pldefs> \def \check@nocorr@ #1#2\nocorr#3\@nil {% \let \check@icl \relax% \maybe@ic から変更 \def \check@icr {\ifvmode \else \aftergroup \maybe@ic \fi}% diff --git a/Master/texmf-dist/source/platex/base/plnewsc07.tex b/Master/texmf-dist/source/platex/base/plnewsc07.tex new file mode 100644 index 00000000000..20bcefa13df --- /dev/null +++ b/Master/texmf-dist/source/platex/base/plnewsc07.tex @@ -0,0 +1,274 @@ +%% <2017/07/29> +\documentclass{plnews} + +\publicationyear{2017}% 発行年 +\publicationmonth{07}% 発行月 +\publicationissue{c7}% 番号 +\author{日本語\TeX{}開発コミュニティ(\texttt{https://texjp.org/})} + +\def\cs#1{\texttt{\char92 #1}} +\def\pTeX{p\kern-.15em\TeX} +\def\eTeX{$\varepsilon$-\TeX} +\def\epTeX{$\varepsilon$-\pTeX} +\def\pLaTeX{p\kern-.05em\LaTeX} +\def\pLaTeXe{p\kern-.05em\LaTeXe} + +% ==== specific to 2017/07/29 ==== +\usepackage{booktabs} +\let\origfootnoterule\footnoterule +\usepackage{pxftnright} +\let\footnoterule\origfootnoterule +\makeatletter +\renewcommand{\section}{% + \@startsection{section}{1}{\z@} + {1.5\Cvs \@plus.6\Cvs \@minus.2\Cvs}% + {.5\Cvs \@plus.3\Cvs}{\reset@font\large\bfseries}% \Large -> \large +} +\renewcommand{\maketitle}{% + \twocolumn[{% + \parbox[t][6\baselineskip]{\textwidth}{% + \@titlefont\@title\hspace{3mm}% + \normalsize 第{\@issue}号\\[\medskipamount] + \normalfont{\@year}年{\@month}月~発行\\ + 作成者:\begin{tabular}[t]{l} + \@author + \end{tabular}% + } + \parbox[t][3\baselineskip]{\textwidth}{% +この文書はコミュニティ版\pLaTeXe\ \texttt{<2017/07/29>}について、 +\pLaTeXe\ \texttt{<2017/05/05>}からの更新箇所をまとめたものです\footnotemark。 + }% + }]% +} +\makeatother +% ==== end ==== + +\begin{document} + +\maketitle +\footnotetext{修正リリース\texttt{<2017/07/29>+1}での更新箇所を含みます。} + +\section{表のセル要素周囲のJFMグルーを抑制} +表を作る|tabular|環境で、セルの要素が括弧類などで始まる、または括弧類 +などで終わる場合、余分なスペースが入ることがありました。 +また、スペースが入るかどうかは、「ソース中でアラインメント文字 |&| の +前後に半角空白を書いたかどうか」で変化していました。この余分なスペース +は、\pTeX{}のメトリックから挿入されるJFMグルーに由来します。 + +\begin{verbatim} + \begin{tabular}{|l|c|r|} + (左揃え)&(中央揃え)&(右揃え)\\ + (左) & (中) & (右)\\ + \end{tabular} +\end{verbatim} + +\makeatletter +\def\@tabclassz{% + \ifcase\@lastchclass + \@acolampacol + \or + \@ampacol + \or + \or + \or + \@addamp + \or + \@acolampacol + \or + \@firstampfalse\@acol + \fi + \edef\@preamble{% + \@preamble{% + \ifcase\@chnum + \hfil\ignorespaces\@sharp\unskip\hfil + \or + \hskip1sp\ignorespaces\@sharp\unskip\hfil + \or + \hfil\hskip1sp\ignorespaces\@sharp\unskip + \fi}}} +\makeatother +\DeleteShortVerb{\|} + \begin{tabular}{|l|c|r|} + (左揃え)&(中央揃え)&(右揃え)\\ + (左) & (中) & (右)\\ + \end{tabular} +\MakeShortVerb{\|} +\medskip + +ソースを見やすくするために半角空白を入れることはよくありますので、 +半角空白の有無によって結果が変わるのは困ります。そのためか、本家の +\LaTeX{}では、アラインメント文字 |&| の前後に半角空白を書いたかどうか +にかかわらず、同じ出力が得られるような対処が従来から入っていました。 + +\pLaTeX{}の場合、この対処が\pTeX{}のJFMグルーには効いていませんでした。 +この問題を修正し、中央揃え(|c|)や左揃え(|l|)、右揃え(|r|)がずれて +見えないようになりました。 + +\medskip +\makeatletter +\def\@tabclassz{% + \ifcase\@lastchclass + \@acolampacol + \or + \@ampacol + \or + \or + \or + \@addamp + \or + \@acolampacol + \or + \@firstampfalse\@acol + \fi + \edef\@preamble{% + \@preamble{% + \ifcase\@chnum + \hfil\inhibitglue\ignorespaces\@sharp\unskip\unskip\hfil % c + \or + \hskip1sp\inhibitglue\ignorespaces\@sharp\unskip\unskip\hfil % l + \or + \hfil\hskip1sp\inhibitglue\ignorespaces\@sharp\unskip\unskip % r + \fi}}} +\makeatother +\DeleteShortVerb{\|} + \begin{tabular}{|l|c|r|} + (左揃え)&(中央揃え)&(右揃え)\\ + (左) & (中) & (右)\\ + \end{tabular} +\MakeShortVerb{\|} +\medskip + +なお、この修正は\file{array}パッケージ(\LaTeX3 Teamによる +\file{latex-tools}バンドルに収録)を読み込むと無効になってしまいます。 +\pLaTeX{}/u\pLaTeX{}で\file{array}パッケージを使いたい場合は、 +\file{plarray}パッケージ(2017/07/29以降の\file{platex-tools}バンドルに +収録)を追加もしくは代わりに読み込んでください。 + + +\section{\file{plext}の揃え位置} +\file{plext}パッケージが拡張する表組(|tabular|環境と|array|環境)、 +および|\parbox|命令と|minipage|環境の「組方向オプション」 +(||, ||, ||)を使用した場合の、罫線やベースラインの揃え方の +仕様を新たに策定しました。 + +\medskip + \begin{tabular}{lcccc} + \toprule + ↓中身\周囲→ & 横 & 縦 & 縦数式 \\ + \midrule + 横 & A & B & B \\ + 縦 & B & A & D \\ + 縦数式 & B & D & A \\ + \bottomrule + \end{tabular} +\bigskip + +A, B, Dはそれぞれ以下のとおりです(なお、この表記は +Lua\TeX-jaパッケージのドキュメントでの表記と一致させてあります)。 + +\begin{itemize} + \item[A] 周囲の組方向と中身の組方向が同じ場合 + (=横組での||, ||、縦組での||) + \begin{itemize}\itemindent-18pt + \item \texttt{[t]}指定のとき: + 中身の先頭行のベースラインが周囲のベースラインと一致する。 + 表組で先頭行の上に罫線があった場合は、それが和文ベースラインの位置となる。 + \item \texttt{[c]}指定のとき: + 中身の上下の中心が周囲の数式の軸を通る。 + \item \texttt{[b]}指定のとき: + 中身の最終行のベースラインが周囲のベースラインと一致する。 + 表組で最終行の下に罫線があった場合は、それが和文ベースラインの位置となる。 + \end{itemize} + \item[B] 周囲の組方向と中身の組方向が90度ずれている場合 + (=横組での||、縦組での||) + \begin{itemize}\itemindent-18pt + \item \texttt{[t]}指定のとき: + 表組においては、上端が周囲の和文ベースラインと一致する。 + |\parbox|や|minipage|環境においては、上端が周囲の和文文字の上端と一致する。 + \item \texttt{[c]}指定のとき: + 中身の上下の中心が周囲の数式の軸を通る。 + \item \texttt{[b]}指定のとき: + 表組においては、下端が周囲の和文ベースラインと一致する。 + |\parbox|や|minipage|環境においては、下端が周囲の和文文字の下端と一致する。 + \end{itemize} + \item[D] 通常の縦組と縦数式ディレクションが絡んだ場合 + (=縦組での||) \\ + |\parbox|や|minipage|環境においては、上のBの場合と同じ。 + 表組においては、 + \begin{itemize}\itemindent-18pt + \item \texttt{[t]}指定のとき: + 中身の先頭行の欧文ベースラインが周囲の欧文ベースラインと一致する。 + \item \texttt{[c]}指定のとき: + 中身の上下の中心が周囲の数式の軸を通る。 + \item \texttt{[b]}指定のとき: + 中身の最終行の欧文ベースラインが周囲の欧文ベースラインと一致する。 + \end{itemize} +\end{itemize} + + +\section{\file{ascmac}のリターン記号命令の衝突対策} +\file{ascmac}パッケージが提供する|\Return|という命令が、ほかの +パッケージと衝突することがありました(例:\file{algorithm2e}パッケージ)。 +従来の\file{ascmac}パッケージでは、既に|\Return|という命令が定義されて +いても関係なく上書きしていましたが、新しい版では|\Return|が定義済みか +どうかチェックするようにしました。そして、 +「定義済みでかつ\file{ascmac}パッケージの定義と非互換な場合」 +にエラーを出します。 + + +\section{禁則ペナルティの修正} +昔のアスキー日本語\TeX{}の頃からペナルティ設定が誤っていた文字(|%&%&|)を +修正しました。 +u\pLaTeX{}ではさらに、中国語や韓国語で〈・〉の字形として\texttt{U+30FB}でなく +\texttt{U+00B7}が使われることから、新たに|\prebreakpenalty|を設定しました +\footnote{u\pLaTeX{}の場合は従来から、\texttt{U+00A0}--\texttt{U+00FF}の範囲 +にある文字について「これが約物であって、かつJIS X 0213に定義されている場合」は +禁則ペナルティを設定していました。\texttt{U+00B7}もこれに該当するので、 +単に漏れていた可能性があります。一方で、この範囲の文字は8-bit Latinとも重複 +するので\textbf{「和文文字の前後に(半角空白を挟まず)連続するT1エンコードの +文字」などが予期せず禁則対象になる可能性があることに注意が必要}です。}。 + + +\section{その他のバグ修正} +旧版で混入したバグの修正: +\begin{itemize} +\item 行頭禁則文字の直前で|\linebreak|による強制改行が効かない問題に + 対処した2017/05/05版で、今度は逆に|\nolinebreak|を挿入したその箇所で + |\(x)kanjiskip|が入らなくなった問題に対処。 +\end{itemize} +その他の\pLaTeXe{}カーネルの修正点: +\begin{itemize} +\item |\adjustbaseline|の全角文字基準を、全角空白文字から「漢」という + 文字に変更。 +\end{itemize} + + +\section{開発版のテストのお願い} +今後\pLaTeX{}に導入するかもしれない修正パッチや仕様変更のテストにご協力くだ +さい。\TeX{}ファイルの冒頭(|\documentclass|より前)で +\begin{verbatim} + \RequirePackage{exppl2e} +\end{verbatim} +と書くことで、開発版をテストすることができます。 +現在は以下の修正が含まれ、特に最後の3つは欧文の\LaTeX{}との +組版結果の互換性向上を目指しています。 +\begin{itemize} +\item アクセント合成文字の前後に|\xkanjiskip|が入らない問題の修正 +\item |\<|という命令を段落頭でも効くようにする修正 + \footnote{2010年の\pTeX{}の修正により\cs{inhibitglue}が垂直モード + で効かなくなったことへの対応。} +\item tabbing環境の行の最初の項目だけ括弧類のJFMグルーが入る現象への対処 +\item |\verb|の中身が半角空白で始まる場合にそれが消滅する問題の修正 +\item |\ref|の結果が``A''のような英大文字の場合のスペースファクター + \footnote{文末空白か単語間空白かを決める因子。}の補正 +\item |\emph{f\textrm{a}}|のような場合の|\text..|命令の左側でイタリック補正 + が効かない問題の修正 +\end{itemize} +バグ報告やご意見を歓迎します。 +\TeX\ ForumやGitHubのIssueシステムが利用できます。 +\begin{itemize} +\item \texttt{https://github.com/texjporg/platex} +\item \texttt{https://github.com/texjporg/uplatex} +\end{itemize} + +\end{document} diff --git a/Master/texmf-dist/source/platex/base/plvers.dtx b/Master/texmf-dist/source/platex/base/plvers.dtx index 2f494586ec1..6143a5ee9a6 100644 --- a/Master/texmf-dist/source/platex/base/plvers.dtx +++ b/Master/texmf-dist/source/platex/base/plvers.dtx @@ -130,7 +130,7 @@ {2017/07/29} % %<*plcore> -\def\ppatch@level{0} +\def\ppatch@level{1} % % \end{macrocode} % \end{macro} -- cgit v1.2.3