diff options
Diffstat (limited to 'Master/texmf-doc/doc/english/FAQ-en/html/FAQ-edef.html')
-rw-r--r-- | Master/texmf-doc/doc/english/FAQ-en/html/FAQ-edef.html | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/Master/texmf-doc/doc/english/FAQ-en/html/FAQ-edef.html b/Master/texmf-doc/doc/english/FAQ-en/html/FAQ-edef.html new file mode 100644 index 00000000000..133d217bc84 --- /dev/null +++ b/Master/texmf-doc/doc/english/FAQ-en/html/FAQ-edef.html @@ -0,0 +1,20 @@ +<head> +<title>UK TeX FAQ -- question label edef</title> +</head><body> +<h3><code>\</code><code>edef</code> does not work with <code>\</code><code>protect</code></h3> +<p>Robust LaTeX commands are either "naturally robust" - meaning that +they never need <code>\</code><code>protect</code>, or "self-protected" - meaning that +they have <code>\</code><code>protect</code> built in to their definition in some +way. Self-protected commands are robust only in a context where the +<code>\</code><code>protect</code> mechanism is properly handled. The body of an +<code>\</code><code>edef</code> definition doesn't handle <code>\</code><code>protect</code> properly, since +<code>\</code><code>edef</code> is a TeX primitive rather than a LaTeX command. +<p>This problem is resolved by a LaTeX internal command +<code>\</code><code>protected@edef</code>, which does the job of <code>\</code><code>edef</code> while keeping the +<code>\</code><code>protect</code> mechanism working. There's a corresponding +<code>\</code><code>protected@xdef</code> which does the job of <code>\</code><code>xdef</code>. +<p>Of course, these commands need to be tended carefully, since they're + +internal: see <a href="FAQ-atsigns.html">'@' in control sequence names</a>. +<p><p>This question on the Web: <a href="http://www.tex.ac.uk/cgi-bin/texfaq2html?label=edef">http://www.tex.ac.uk/cgi-bin/texfaq2html?label=edef</a> +</body> |