[expl3 / e(u)ptex] 2015/07/15 版 expl3 パッケージが、(u)platex で通らない

[expl3 / e(u)ptex] 2015/07/15 版 expl3 パッケージが、(u)platex で通らない

- tat tsan の投稿
返信数: 9
TeXLive で expl3 が 2015/07/15 版に更新されたあと、 (u)platex ではこのパッケージでエラーが出ます。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass{minimal}
\usepackage{expl3}
\begin{document}
hoge
\end{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
! You can't use `\unless' before `\relax'.
<to be read again>
\pdftex_ifprimitive:D
l.1272 \etex_unless:D \pdftex_ifprimitive:D
\pdftex_mapfile:D
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
他のエンジンでは特にエラーは出ないようです。
tat tsan への返信

Re: [expl3 / e(u)ptex] 2015/07/15 版 expl3 パッケージが、(u)platex で通らない

- KUROKI Yusuke の投稿
一昨昨日くらいに,Boris (+ Frank) から,(u)ptex 対応確認の issue を立ち上げておかないとね,という申し出を受けました.まさにその類の話のようですね.
今回いただいたメッセージを翻訳して,Frankに伝えました.
KUROKI Yusuke への返信

Re: [expl3 / e(u)ptex] 2015/07/15 版 expl3 パッケージが、(u)platex で通らない

- tat tsan の投稿
素早い御対応、ありがとうございます。

https://github.com/latex3/svn-mirror/issues

issue が立ち上がるとすれば、↑ここでしょうか。
KUROKI Yusuke への返信

Re: [expl3 / e(u)ptex] 2015/07/15 版 expl3 パッケージが、(u)platex で通らない

- KUROKI Yusuke の投稿
s/Boris/Bruno/ でした.訂正します.

% issue の上がる場所はよく知らないのですが,まずはメールベースで議論が始まったので,報告すべきことができたらこちらにも報告します.primitive で何が用意されているかによって if 文をたくさん噛ませているので,そこのところについて議論しています(数日前の議論もすぐにその話になっていました.)
tat tsan への返信

Re: [expl3 / e(u)ptex] 2015/07/15 版 expl3 パッケージが、(u)platex で通らない

- Akira Kakuto の投稿
> 他のエンジンでは特にエラーは出ないようです。

lamed では

! Package expl3 Error: Required primitives not found.^^J^^JSee the expl3 packag
e documentation for explanation.^^JType  H <return>  for immediate help.
...                                             
                                                 
l.343 \next
         
? )

となりました。
Akira Kakuto への返信

Re: [expl3 / e(u)ptex] 2015/07/15 版 expl3 パッケージが、(u)platex で通らない

- Akira Kakuto の投稿
> lamed では

失礼しました。
Aleph は e-TeX 2.1 なので,サポート対象外
なのでしょう。
tat tsan への返信

Re: [expl3 / e(u)ptex] 2015/07/15 版 expl3 パッケージが、(u)platex で通らない

- 北川 弘典 の投稿
(オフトピ気味ですが)

> \pdftex_ifprimitive:D
pdfTeX で定義されている \ifpdfprimitive ですね.

\ifpdfprimitive\CS が真になるのは,\CS の意味が
(同じ名前の)プリミティブになっているときです.例えば,
  \let\font\relax
  \def\jfont{\message{S}}
  \ifpdfprimitive\font\message{T}\else\message{F}\fi
  \ifpdfprimitive\relax\message{T}\else\message{F}\fi
  \ifpdfprimitive\jfont\message{T}\else\message{F}\fi
  \ifpdfprimitive\xfont\message{T}\else\message{F}\fi
を実行すると結果は F T F F となります.

対になるものとして,pdfTeX には \pdfprimitive というものがあり,
プリミティブを再定義していても,「本来の意味で」使うことができます.
  \let\font\let
  \pdfprimitive\font\X=cmbx10      % \X -> select font cmbx10
  \font\Y=cmbx10                  % \Y -> the letter c

\ifpdfprimitive, \pdfprimitive はこのように面白い命令なのですが,
* どういう場面で有用になってくるのか〔私には)よくわからない
* この 2 命令のためのコードが多く,TeX の内部にまで関わる
という理由から,(手元では一応形になっているのですが)
今すぐ e-(u)pTeX に追加するのにはちょっとためらいがあります.
tat tsan への返信

Re: [expl3 / e(u)ptex] 2015/07/15 版 expl3 パッケージが、(u)platex で通らない

- Akira Kakuto の投稿
最新の l3 (7/28) では,エラーにならないように
なっているようです。