iftexパッケージが古い?

iftexパッケージが古い?

- 浮亭 夢介 の投稿
返信数: 6
次のソースをコンパイルすると
■■■■■■■■■■■■■■■
\documentclass{jsarticle}
\begin{document}
あああ
\end{document}
■■■■■■■■■■■■■■■
以下のエラーが出てストップします.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
! Undefined control sequence.
l.472 \ifpdf
?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

そこで,CTANより最新のパッケージ(2019-11-06 – CTAN update: iftex)
をダウンロードし,現在の C:\w32tex\share\texmf-dist\tex\generic\iftex
の中味(ifetex.sty,ifluatex.sty,ifpdf.sty,iftex.sty,ifvtex.sty,ifxetex.sty)を
全部差替えると,正常にコンパイルできました.

これで良いと考えますが,調査していただければ幸いです.

浮亭 夢介 への返信

Re: iftexパッケージが古い?

- Akira Kakuto の投稿
> これで良いと考えますが,調査していただければ幸いです.

W32TeX における generic/iftex の内容は,最新の一つ前になっています。
近いうちに最新のものに入れ替えます。エラーが解消したのであれば
それで良いのだと思います。

なお,ChangeLog に書いたのですが,以下に注意して下さい:

    Many if* packages are now installed in
    $TEXMFDIST/tex/generic/iftex.
    If the following 6 commands find files in other directories,
    then plese delete found files.
    kpsewhich --all ifetex.sty
    kpsewhich --all ifluatex.sty
    kpsewhich --all ifpdf.sty
    kpsewhich --all iftex.sty
    kpsewhich --all ifvtex.sty
    kpsewhich --all ifxetex.sty
Akira Kakuto への返信

Re: iftexパッケージが古い?

- Akira Kakuto の投稿
> ! Undefined control sequence.
> l.472 \ifpdf
> ?

以下のファイルを探しても ifpdf なる文字列が
見当たらないのですが,どのファイルなんでしょうか?

*File List*
  pldefs.ltx    2019/09/16 v1.6t pLaTeX Kernel (Default settings)
  jy1mc.fd    2018/07/03 v1.6q KANJI font defines
  jy1gt.fd    2018/07/03 v1.6q KANJI font defines
  jt1mc.fd    2018/07/03 v1.6q KANJI font defines
  jt1gt.fd    2018/07/03 v1.6q KANJI font defines
kinsoku.tex
jsarticle.cls    2019/07/25 jsclasses (okumura, texjporg)
  jslogo.sty    2019/07/25 okumura, texjporg
***********
Akira Kakuto への返信

Re: iftexパッケージが古い?

- 浮亭 夢介 の投稿
古い iftex を使うと上記のエラーがでます.
そこで if* packages を調べてみましたが
\ifpdf なる文字列は見当たりませんでした.
誠に申し訳ございません.
浮亭 夢介 への返信

Re: iftexパッケージが古い?

- Akira Kakuto の投稿
私の疑問は,if* パッケージは \listfiles に出ないし,
\listfiles に表示される全てのファイルに ifpdf が含まれない
ことです。こちらでは generic/iftex ディレクトリを全部
消去しても,

\documentclass{jsarticle}
\begin{document}
あああ
\end{document}

は問題なく処理できます。(platex)。
Akira Kakuto への返信

Re: iftexパッケージが古い?

- 浮亭 夢介 の投稿
失礼しました.
冒頭に掲げましたソースは簡略したものでした.
次が正しいソースです.

\documentclass[a5paper,9pt,nomag]{jsarticle}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{bxpapersize}
\begin{document}
あああ
\end{document}


これをコンパイルしますと,例のエラーがでます.
そこで,
\usepackage{bxpapersize}をコメントアウトしますとコンパイルは
問題なく通ります.

bxpapersize.sty を眺めますと\ifpdf がつかわれていました.
これが原因の一つかどうかはわかりません.
浮亭 夢介 への返信

Re: iftexパッケージが古い?

- 浮亭 夢介 の投稿
自分のミスでした.
色々テストしているうちに,
新しいiftex.sty(v1.0b)を使うところを,
古いiftex.sty(v0.2)を使っていました.
bxpapersize.styは無関係のようです.
大変失礼しました.