/usr/share/doc/texinfo/html/HTML-Xref-Node-Name-Expansion.html is in texinfo-doc-nonfree 6.5.0-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This manual is for GNU Texinfo (version 6.5, 25 August 2017),
a documentation system that can produce both online information and a
printed manual from a single source using semantic markup.
Copyright (C) 1988, 1990, 1991, 1992, 1993, 1995, 1996, 1997,
1998, 1999, 2001, 2001, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
2010, 2011, 2012, 2013, 2014, 2015, 2016 Free Software Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, with the Front-Cover Texts being "A GNU Manual",
and with the Back-Cover Texts as in (a) below. A copy of the license
is included in the section entitled "GNU Free Documentation
License".
(a) The FSF's Back-Cover Text is: "You have the freedom to copy and
modify this GNU manual. Buying copies from the FSF supports it in
developing GNU and promoting software freedom." -->
<!-- Created by GNU Texinfo 6.4.90, http://www.gnu.org/software/texinfo/ -->
<head>
<title>HTML Xref Node Name Expansion (GNU Texinfo 6.5)</title>
<meta name="description" content="HTML Xref Node Name Expansion (GNU Texinfo 6.5)">
<meta name="keywords" content="HTML Xref Node Name Expansion (GNU Texinfo 6.5)">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Command-and-Variable-Index.html#Command-and-Variable-Index" rel="index" title="Command and Variable Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="HTML-Xref.html#HTML-Xref" rel="up" title="HTML Xref">
<link href="HTML-Xref-Command-Expansion.html#HTML-Xref-Command-Expansion" rel="next" title="HTML Xref Command Expansion">
<link href="HTML-Xref-Link-Basics.html#HTML-Xref-Link-Basics" rel="prev" title="HTML Xref Link Basics">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en">
<a name="HTML-Xref-Node-Name-Expansion"></a>
<div class="header">
<p>
Next: <a href="HTML-Xref-Command-Expansion.html#HTML-Xref-Command-Expansion" accesskey="n" rel="next">HTML Xref Command Expansion</a>, Previous: <a href="HTML-Xref-Link-Basics.html#HTML-Xref-Link-Basics" accesskey="p" rel="prev">HTML Xref Link Basics</a>, Up: <a href="HTML-Xref.html#HTML-Xref" accesskey="u" rel="up">HTML Xref</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Command-and-Variable-Index.html#Command-and-Variable-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="HTML-Cross_002dreference-Node-Name-Expansion"></a>
<h4 class="subsection">22.4.2 HTML Cross-reference Node Name Expansion</h4>
<a name="index-HTML-cross_002dreference-node-name-expansion"></a>
<a name="index-node-name-expansion_002c-in-HTML-cross_002dreferences"></a>
<a name="index-expansion_002c-of-node-names-in-HTML-cross_002dreferences"></a>
<p>As mentioned in the previous section, the key part of the HTML cross
reference algorithm is the conversion of node names in the Texinfo
source into strings suitable for XHTML identifiers and filenames. The
restrictions are similar for each: plain ASCII letters, numbers, and
the ‘<samp>-</samp>’ and ‘<samp>_</samp>’ characters are all that can be used.
(Although HTML anchors can contain most characters, XHTML is more
restrictive.)
</p>
<p>Cross-references in Texinfo can refer either to nodes or anchors
(see <a href="_0040anchor.html#g_t_0040anchor"><code>@anchor</code></a>). However, anchors are treated identically
to nodes in this context, so we’ll continue to say “node” names for
simplicity.
</p>
<p>A special exception: the Top node (see <a href="The-Top-Node.html#The-Top-Node">The Top Node</a>) is always
mapped to the file <samp>index.html</samp>, to match web server software.
However, the HTML <em>target</em> is ‘<samp>Top</samp>’. Thus (in the split case):
</p>
<div class="example">
<pre class="example">@xref{Top,,, emacs, The GNU Emacs Manual}.
⇒ <a href="emacs/index.html#Top">
</pre></div>
<ol>
<li> The standard ASCII letters (a-z and A-Z) are not modified. All other
characters may be changed as specified below.
</li><li> The standard ASCII numbers (0-9) are not modified except when a number
is the first character of the node name. In that case, see below.
</li><li> Multiple consecutive space, tab and newline characters are transformed
into just one space. (It’s not possible to have newlines in node
names with the current implementation, but we specify it anyway, just
in case.)
</li><li> Leading and trailing spaces are removed.
</li><li> After the above has been applied, each remaining space character is
converted into a ‘<samp>-</samp>’ character.
</li><li> Other ASCII 7-bit characters are transformed into ‘<samp>_00<var>xx</var></samp>’,
where <var>xx</var> is the ASCII character code in (lowercase) hexadecimal.
This includes ‘<samp>_</samp>’, which is mapped to ‘<samp>_005f</samp>’.
</li><li> If the node name does not begin with a letter, the literal string
‘<samp>g_t</samp>’ is prefixed to the result. (Due to the rules above, that
string can never occur otherwise; it is an arbitrary choice, standing
for “GNU Texinfo”.) This is necessary because XHTML requires that
identifiers begin with a letter.
</li></ol>
<p>For example:
</p>
<div class="example">
<pre class="example">@node A node --- with _'%
⇒ A-node-_002d_002d_002d-with-_005f_0027_0025
</pre></div>
<p>Example translations of common characters:
</p>
<ul>
<li> ‘<samp>_</samp>’ ⇒ ‘<samp>_005f</samp>’
</li><li> ‘<samp>-</samp>’ ⇒ ‘<samp>_002d</samp>’
</li><li> ‘<samp>A node</samp>’ ⇒ ‘<samp>A-node</samp>’
</li></ul>
<p>On case-folding computer systems, nodes differing only by case will be
mapped to the same file. In particular, as mentioned above, Top
always maps to the file <samp>index.html</samp>. Thus, on a case-folding
system, Top and a node named ‘Index’ will both be written to
<samp>index.html</samp>. Fortunately, the targets serve to distinguish
these cases, since HTML target names are always case-sensitive,
independent of operating system.
</p>
<hr>
<div class="header">
<p>
Next: <a href="HTML-Xref-Command-Expansion.html#HTML-Xref-Command-Expansion" accesskey="n" rel="next">HTML Xref Command Expansion</a>, Previous: <a href="HTML-Xref-Link-Basics.html#HTML-Xref-Link-Basics" accesskey="p" rel="prev">HTML Xref Link Basics</a>, Up: <a href="HTML-Xref.html#HTML-Xref" accesskey="u" rel="up">HTML Xref</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Command-and-Variable-Index.html#Command-and-Variable-Index" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>
|