圏点のずれ

圏点のずれ

- y y の投稿
返信数: 3
添付した sample.pdf は,以下のソース(sample.tex)を処理(ptex2pdf.exe -l sample.tex)してできたものです。
圏点の位置がずれてしまいます。

% --- sample.tex ここから ---
\documentclass{jsarticle}
\usepackage{okumacro}

\begin{document}

晴れ\kenten{のち}曇り

\end{document}
% --- sample.tex ここまで ---

2017年9月28日の時点での W32TeX を使用しています。
以前(少なくとも1年以上前)は問題ありませんでした。
何かのバグのような気がしますが,何が原因なのか私にはわかりません。

パッケージ等のバージョンは,
・This is e-pTeX, Version 3.14159265-p3.7.2-170924-2.6 (sjis) (TeX Live 2017/W32TeX) (preloaded format=platex)
・pLaTeX2e <2017/09/26> (based on LaTeX2e <2017-04-15>)
・Document Class: jsarticle 2017/09/03 jsclasses (okumura, texjporg)
・\ProvidesPackage{okumacro}[2017/08/31 okumura, texjporg]
のようになっています。

y y への返信

Re: 圏点のずれ

- aminophen の投稿
まだ試していませんが、おそらく pTeX 本体側 (-p3.7.2) で
「\hbox{・} の左側の JFM グルーが入ってしまうバグ」
に対処したこと(今年 9/18 の r45329)が原因と思われます。バグの詳細は
https://github.com/texjporg/tex-jp-build/issues/25
に書かれている通りです。
TeX Live 2017 の公式バージョン (-p3.7.1) はこの改修より前なので、
問題は発生しないと思います。

okumacro の圏点マクロを改修する必要がある、ということだと思います。
→ https://github.com/texjporg/jsclasses/issues/60 で検討を開始します。

追記:pTeX の修正前後の挙動の違いは、以下のソースでわかるはず。
\documentclass{article}
\begin{document}
あ\hbox{・}い
\end{document}
従来は中黒の左にだけアキが入っていましたが、新しいものは入りません。
aminophen への返信

Re: 圏点のずれ

- aminophen の投稿
簡単な対処はこれです: (\kenten の定義に \hskip.25zw\inhibitglue を足した。)
\documentclass{article}
\usepackage{okumacro}
\makeatletter
%\chardef\okumacro@zsp=\jis"2121\relax
\def\kenten#1{%
  \okumacro@zsp
  \kern-1zw\relax
  \setbox1=\hbox to \z@{\hskip.25zw\inhibitglue・\hss}%
  \ht1=.63zw
  \@kenten#1\end\relax
  \kern-1zw\relax\okumacro@zsp}
\def\@kenten#1#2{%
  \ifx#1\end \let\next=\relax \else
    \raise.75zw\copy1\nobreak #1\ifx#2\end\else\hskip\kanjiskip\relax\fi
    \let\next=\@kenten
  \fi\next#2}
\makeatother
\begin{document}
ここが\kenten{圏点}です。
\end{document}
pTeX p3.7.1 でも p3.7.2 でも同じ結果になるべきなので,これで安全かどうか,
もう少し考えてみます。