summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-09-02 21:42:29 +0000
committerKarl Berry <karl@freefriends.org>2017-09-02 21:42:29 +0000
commit5ec14a45caec6cf280a15720b306cbfd85f45dca (patch)
tree599614fa84b6442189832260f28479abcde4c1e0 /Master/texmf-dist/doc
parentdadcd91ebbd36582ed905c008bcf90b8f3a6c551 (diff)
ifxptex (2sep17)
git-svn-id: svn://tug.org/texlive/trunk@45195 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc')
-rw-r--r--Master/texmf-dist/doc/generic/ifxptex/README.txt16
-rw-r--r--Master/texmf-dist/doc/generic/ifxptex/ifxptex-doc.pdfbin0 -> 196395 bytes
-rw-r--r--Master/texmf-dist/doc/generic/ifxptex/ifxptex-doc.tex197
3 files changed, 213 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/generic/ifxptex/README.txt b/Master/texmf-dist/doc/generic/ifxptex/README.txt
new file mode 100644
index 00000000000..93962fa6dbe
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/ifxptex/README.txt
@@ -0,0 +1,16 @@
+
+
+The ifxptex package --- Detect pTeX and its derivatives
+
+CTAN Homepage: https://ctan.org/pkg/ifxptex
+
+Repository: https://github.com/Man-Ting-Fang/ifxptex
+
+Version: 2017-09-02 v0.1a
+
+Copyright 2017 Yue ZHANG
+
+License: Knuth License (https://ctan.org/license/knuth)
+
+This package provides commands for detecting pTeX and its derivatives (e-pTeX,
+upTeX, e-upTeX, and ApTeX). Both LaTeX and plain TeX are supported.
diff --git a/Master/texmf-dist/doc/generic/ifxptex/ifxptex-doc.pdf b/Master/texmf-dist/doc/generic/ifxptex/ifxptex-doc.pdf
new file mode 100644
index 00000000000..e52a3d071d9
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/ifxptex/ifxptex-doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/generic/ifxptex/ifxptex-doc.tex b/Master/texmf-dist/doc/generic/ifxptex/ifxptex-doc.tex
new file mode 100644
index 00000000000..239f09c4e1f
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/ifxptex/ifxptex-doc.tex
@@ -0,0 +1,197 @@
+
+
+% ifxptex-doc.tex
+
+% !TeX encoding = UTF-8
+% !TeX program = pdfLaTeX
+
+\RequirePackage{fix-cm}
+
+\documentclass[a4paper]{article}
+
+\usepackage{amsfonts}
+\usepackage[OT1]{fontenc}
+\usepackage[utf8]{inputenc}
+\usepackage[UKenglish]{babel}
+\usepackage[babel]{microtype}
+\usepackage{etoolbox}
+\usepackage{amstext}
+\usepackage{booktabs}
+
+\AtBeginEnvironment{verbatim}{\microtypesetup{activate=false}}
+
+\newcommand\NormalSans{\normalfont\sffamily}
+\newcommand\pkg[1]{{\protect\NormalSans#1}}
+
+\newcommand\pTeX{p\kern-0.15em\TeX}
+\newcommand\e{\ensuremath{\varepsilon}}
+\newcommand\eTeX{\e-\TeX}
+\newcommand\epTeX{\e-\pTeX}
+\newcommand\upTeX{u\pTeX}
+\newcommand\eupTeX{\e-\upTeX}
+\newcommand\ApTeX{A\kern-0.1em\pTeX}
+\newcommand\dpx{DVIPDFM\ensuremath{x}}
+\newcommand\FooTeX{Foo\kern-0.1em\TeX}
+
+\newcommand\yes{\checkmark}
+\newcommand\UNI{(Unicode)}
+\newcommand\uni{{\footnotesize\UNI}}
+
+\begin{document}
+
+\title{The \pkg{ifxptex} package%
+ \thanks{CTAN Homepage: \texttt{https://ctan.org/pkg/ifxptex}}
+ \thanks{Repository: \texttt{https://github.com/Man-Ting-Fang/ifxptex}}}
+\author{Yue \textsc{Zhang}}
+\date{2017-09-02\quad v0.1a}
+
+\maketitle
+
+\begin{abstract}
+This package provides commands for detecting \pTeX\ and its derivatives (\epTeX,
+\upTeX, \eupTeX, and \ApTeX).
+\end{abstract}
+
+\section{Introduction}
+
+\pTeX\ is an extension of \TeX. It has several derivatives:
+\begin{itemize}
+\item \epTeX: \( \text{\pTeX} + \text{\eTeX} + \cdots \)
+\item \upTeX: \( \text{\pTeX} + \text{native Unicode support} + \cdots \)
+\item \eupTeX: \( \text{\epTeX} + \text{\upTeX} \)
+\item \ApTeX:\footnote{Full name: Asiatic \pTeX; synonym: \pTeX-ng; obsolete
+ names: Asian \pTeX, toua-\pTeX, toua-\TeX, toua\TeX, \ldots}
+ \( \text{\upTeX} + \text{\eTeX} + \cdots \)
+\end{itemize}
+Table \ref{tab:cmds} shows the command line commands for invoking them.%
+\footnote{Old implementations and other \TeX\ formats are not taken into
+consideration.}
+\vskip-10pt\relax
+\begin{table}[ht]\centering
+\caption{Commands for invoking *\pTeX}
+\label{tab:cmds}
+\medskip
+\begin{tabular}{cccc}
+\toprule
+ & \multicolumn{2}{c}{Command} & \\
+ \cmidrule(lr){2-3}
+Engine & Plain \TeX & \LaTeX & Output format(s)\footnotemark \\
+\midrule
+\pTeX & \verb|ptex| & n/a & DVI (extended) \\
+\epTeX & \verb|eptex| & \verb|platex| & DVI (extended) \\
+\upTeX & \verb|uptex| & n/a & DVI (extended) \\
+\eupTeX & \verb|euptex| & \verb|uplatex| & DVI (extended) \\
+\ApTeX & \verb|ptex-ng| & \verb|platex-ng| & DVI (extended) and PDF \\
+\bottomrule
+\end{tabular}
+\end{table}
+\footnotetext{DVI files produced by *\pTeX\ can be converted to PDF files by
+\dpx, or some scripts for convenience (also use \dpx\ internally), but this
+subject is outside the scope of this document. (Note that \ApTeX\ outputs both
+DVI and PDF files directly.)}
+\noindent Both \LaTeX3 and the \pkg{ifptex} package (and its alias, the
+\pkg{ifuptex} package) have already provided commands for detecting some *\pTeX\
+engines. However, they do not satisfy the author, thus this package is written.
+For compatibility, all user commands provided by this package have an extra
+letter ``\verb|x|'' or ``\verb|X|''.
+
+\section{Naming conventions}
+
+There are two more naming conventions in this package:
+\begin{itemize}
+\item Suppose that there is a \TeX\ engine called \FooTeX, then both
+ \verb|FooTeX| and \verb|footex| are used in commands' names, but they refer to
+ different things: \verb|FooTeX| stands for the \FooTeX\ engine itself, while
+ \verb|footex| stands for all engines (mostly) compatible with \FooTeX.
+\item Furthermore, \verb|UniFooTeX| and \verb|unifootex| stand respectively for
+ \verb|FooTeX| and \verb|footex| when using Unicode as the internal encoding.
+ (Similarly, ``\UNI'' used in the following tables indicates that the engine
+ should be the corresponding \verb|UniFooTeX|.) (Note that \ApTeX\ always uses
+ Unicode as its internal encoding.)
+\end{itemize}
+
+\section{Usage}
+
+This package has no options, just load it as usual:
+\begin{itemize}
+\item \LaTeX: \verb|\usepackage{ifxptex}|
+\item Plain \TeX: \verb|\input ifxptex.sty|
+\end{itemize}
+
+\subsection{Conditionals}
+
+Table \ref{tab:cond} lists the conditionals provided by this package.
+\vskip-10pt\relax
+\begin{table}[ht]\centering
+\caption{Conditionals provided by this package}
+\label{tab:cond}
+\medskip
+\begin{tabular}{lccccc}
+\toprule
+ & \multicolumn{5}{c}{True when using (one of)} \\
+ \cmidrule(lr){2-6}
+Conditional & \pTeX & \epTeX & \upTeX & \eupTeX & \ApTeX \\
+\midrule
+\verb|\ifxpTeX| & \yes & & & & \\
+\verb|\ifxepTeX| & & \yes & & & \\
+\verb|\ifxupTeX| & & & \yes & & \\
+\verb|\ifxeupTeX| & & & & \yes & \\
+\verb|\ifxApTeX| & & & & & \yes \\
+\verb|\ifxUniupTeX| & & & \yes\ \uni & & \\
+\verb|\ifxUnieupTeX| & & & & \yes\ \uni & \\
+\verb|\ifxptex| & \yes & \yes & \yes & \yes & \yes \\
+\verb|\ifxeptex| & & \yes & & \yes & \\
+\verb|\ifxuptex| & & & \yes & \yes & \yes \\
+\verb|\ifxeuptex| & & & & \yes & \\
+\verb|\ifxaptex| & & & & & \yes \\
+\verb|\ifxuniuptex| & & & \yes\ \uni & \yes\ \uni & \yes \\
+\verb|\ifxunieuptex| & & & & \yes\ \uni & \\
+\bottomrule
+\end{tabular}
+\end{table}
+\noindent These conditionals can be used as usual. For example:
+
+\medskip
+
+\noindent{\ttfamily\hskip2em}%
+\verb|\ifxeupTeX|%
+ \ensuremath{\langle}material for \eupTeX\ensuremath{\rangle}%
+\verb|\else|%
+ \ensuremath{\langle}material not for \eupTeX\ensuremath{\rangle}%
+\verb|\fi|
+
+\subsection{Declarations}
+
+Table \ref{tab:decl} lists the declarations provided by this package. (This
+table is very similar to Table \ref{tab:cond}.)
+\vskip-10pt\relax
+\begin{table}[ht]\centering\advance\tabcolsep by -0.1pt\relax
+\caption{Declarations provided by this package}
+\label{tab:decl}
+\medskip
+\begin{tabular}{lccccc}
+\toprule
+ & \multicolumn{5}{c}{Reports an error if the engine in
+ use is not (one of)} \\
+ \cmidrule(lr){2-6}
+Declaration & \pTeX & \epTeX & \upTeX & \eupTeX & \ApTeX \\
+\midrule
+\verb|\RequireXpTeX| & \yes & & & & \\
+\verb|\RequireXepTeX| & & \yes & & & \\
+\verb|\RequireXupTeX| & & & \yes & & \\
+\verb|\RequireXeupTeX| & & & & \yes & \\
+\verb|\RequireXApTeX| & & & & & \yes \\
+\verb|\RequireXUniupTeX| & & & \yes\ \uni & & \\
+\verb|\RequireXUnieupTeX| & & & & \yes\ \uni & \\
+\verb|\RequireXptex| & \yes & \yes & \yes & \yes & \yes \\
+\verb|\RequireXeptex| & & \yes & & \yes & \\
+\verb|\RequireXuptex| & & & \yes & \yes & \yes \\
+\verb|\RequireXeuptex| & & & & \yes & \\
+\verb|\RequireXaptex| & & & & & \yes \\
+\verb|\RequireXuniuptex| & & & \yes\ \uni & \yes\ \uni & \yes \\
+\verb|\RequireXunieuptex| & & & & \yes\ \uni & \\
+\bottomrule
+\end{tabular}
+\end{table}
+
+\end{document}