summaryrefslogtreecommitdiff
path: root/macros/generic/ifptex/README.md
blob: 4b09b0baff72a3848b819a08075fabf1e90c3928 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
ifptex Package Bundle
=====================

TeX: To check the engine is pTeX (or its derivatives)

The ifptex package is a counterpart of ifxetex, ifluatex, etc. for
the pTeX engine. The ifuptex package is an alises to ifptex provided
for backward compatibility.

### System Requirements

  * TeX format: plain TeX, LaTeX, and INI mode.
  * TeX engine: Anything.
  * DVI driver (in DVI mode): Anything.
  * Dependent packages:
      - iftex

### Installation

In a system compliant to TDS 1.1, move the files as follows:

  - `*.sty` → $TEXMF/tex/generic/ifptex

And rehash your TEXMF trees if necessary.

### License

This package is distributed under the MIT License.

ifptex Package ― Test for pTeX engine
--------------------------------------

### Package Loading

In plain TeX:

    \input ifptex.sty

In LaTeX:

    \usepackage{ifptex}

### Usage

NB: Here “e-TeX-ness” is not considered.

  * `\ifptex` (or `\ifpTeX`)  [if-token]  
    Whether the engine is pTeX (including upTeX or pTeX-ng).
  * `\ifstrictptex` (or `\ifstrictpTeX`) [if-token]  
    Whether the engine is pTeX but *not* upTeX or pTeX-ng.
  * `\ifuptex` (or `\ifupTeX`) [if-token]  
    Whether the engine is upTeX (including pTeX-ng).
  * `\ifstrictuptex` (or `\ifstrictupTeX`) [if-token]  
    Whether the engine is upTeX but *not* pTeX-ng.
  * `\ifnativeuptex` (or `\ifnativeupTeX`) [if-token]  
    Whether the engine is upTeX and its internal encoding is Unicode.
  * `\ifptexng` (or `\ifpTeXng`) [if-token]  
    Whether the engine is pTeX-ng.
  * `\RequirepTeX`  
    Issues an error if `\ifpTeX` fails.
  * `\RequireStrictpTeX`  
    Issues an error if `\ifstrictpTeX` fails.
  * `\RequireupTeX`  
    Issues an error if `\ifupTeX` fails.
  * `\RequireStrictupTeX`  
    Issues an error if `\ifstrictupTeX` fails.
  * `\RequireNativeupTeX`  
    Issues an error if `\ifnativeupTeX` fails.
  * `\RequirepTeXng`  
    Issues an error if `\ifpTeXng` fails.


ifuptex Package ― Alias of ifptex
----------------------------------

The ifuptex package does nothing but loading ifptex internally. It is
provided for backward compatibility.

### Package Loading

In plain TeX:

    \input ifuptex.sty

In LaTeX:

    \usepackage{ifuptex}

### Usage

Just the same as the ifptex package.


Revision History
----------------

  * Version 2.1  〈2021/07/01〉 
      - Adjust for the future version of pTeX.
      - Drop an undocumented feature.
  * Version 2.0  〈2019/11/01〉
      - Adjust to work better with the new iftex package maintanined
        by the LaTeX3 Project.
          - Now iftex is loaded inside ifptex.
          - Provide always all-lowercase `\if...tex` commands.
      - Support for loading in INI mode.
  * Version 1.2c 〈2017/10/04〉
  * Version 1.2b 〈2017/09/20〉
  * Version 1.2a 〈2017/09/15〉
  * Version 1.2  〈2017/09/09〉
      - Add `\ifstrictupTeX` and `RequireStrictupTeX`.
  * Version 1.1  〈2017/05/04〉
      - Minor fix.
  * Version 1.0  〈2013/04/29〉
      - Move to a separate bundle.
      - Change the package name to ifptex, and added the test
        for pTeX (besides upTeX).
  * Version 0.2  〈2008/03/14〉
      - First public version.

--------------------
Takayuki YATO (aka. "ZR")  
https://github.com/zr-tex8r