diff options
Diffstat (limited to 'Master/texmf-dist/doc/generic/FAQ-en/html/FAQ-compjobnam.html')
-rw-r--r-- | Master/texmf-dist/doc/generic/FAQ-en/html/FAQ-compjobnam.html | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/generic/FAQ-en/html/FAQ-compjobnam.html b/Master/texmf-dist/doc/generic/FAQ-en/html/FAQ-compjobnam.html new file mode 100644 index 00000000000..616e7d9ecc0 --- /dev/null +++ b/Master/texmf-dist/doc/generic/FAQ-en/html/FAQ-compjobnam.html @@ -0,0 +1,40 @@ +<head> +<title>UK TeX FAQ -- question label compjobnam</title> +</head><body> +<h3>Comparing the “job name”</h3> +<p/>The token <code>\</code><code>jobname</code> amusingly produces a sequence of characters +whose category code is 12 (‘other’), regardless of what the characters +actually are. Since one inevitably has to compare a macro with the +contents of another macro (using <code>\</code><code>ifx</code>, somewhere) one needs to +create a macro whose expansion looks the same as the expansion of +<code>\</code><code>jobname</code>. We find we can do this with <code>\</code><code>meaning</code>, if we strip +the “<code>\</code><code>show</code> command” prefix. +<p/>The full command looks like: +<blockquote> +<pre> +\def\StripPrefix#1>{} +\def\jobis#1{FF\fi + \def\predicate{#1}% + \edef\predicate{\expandafter\StripPrefix\meaning\predicate}% + \edef\job{\jobname}% + \ifx\job\predicate +} +</pre> + +</blockquote><p> +And it’s used as: +<blockquote> +<pre> +\if\jobis{mainfile}% + \message{YES}% +\else + \message{NO}% +\fi +</pre> +</blockquote><p> +Note that the command <code>\</code><code>StripPrefix</code> need not be defined if you’re +using LaTeX — there’s already an +<a href="FAQ-atsigns.html">internal command</a> <code>\</code><code>strip@prefix</code> that you can +use. +<p/><p>This question on the Web: <a href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=compjobnam">http://www.tex.ac.uk/cgi-bin/texfaq2html?label=compjobnam</a> +</body> |