blob: 4f964302b031d8fadfe1137af306fed4d66ab094 [file] [log] [blame]
<!DOCTYPE html>
<html>
<!-- Created by Texinfo 6.8dev+dev, http://www.gnu.org/software/texinfo/ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<!-- This manual is for GNU Texinfo (version 6.8dev, 23 February 2022),
a documentation system that can produce both online information and a
printed manual from a single source using semantic markup.
Copyright (C) 1988, 1990-1993, 1995-1999, 2001-2022 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 no Front-Cover Texts, and with no Back-Cover
Texts. A copy of the license is included in the section entitled
"GNU Free Documentation License". -->
<title>Indexing Commands (GNU Texinfo 6.8dev)</title>
<meta name="description" content="Indexing Commands (GNU Texinfo 6.8dev)">
<meta name="keywords" content="Indexing Commands (GNU Texinfo 6.8dev)">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="texi2any">
<meta name="viewport" content="width=device-width,initial-scale=1">
<link href="index.html" rel="start" title="Top">
<link href="Command-and-Variable-Index.html" rel="index" title="Command and Variable Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Indices.html" rel="up" title="Indices">
<link href="Advanced-Indexing.html" rel="next" title="Advanced Indexing">
<link href="Predefined-Indices.html" rel="prev" title="Predefined Indices">
<style type="text/css">
<!--
div.example {margin-left: 3.2em}
-->
</style>
</head>
<body lang="en">
<div class="section-level-extent" id="Indexing-Commands">
<div class="nav-panel">
<p>
Next: <a href="Advanced-Indexing.html" accesskey="n" rel="next">Advanced Indexing Commands</a>, Previous: <a href="Predefined-Indices.html" accesskey="p" rel="prev">Predefined Indices</a>, Up: <a href="Indices.html" accesskey="u" rel="up">Indices</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Command-and-Variable-Index.html" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<h3 class="section" id="Defining-the-Entries-of-an-Index">10.2 Defining the Entries of an Index</h3>
<a class="index-entry-id" id="index-Defining-indexing-entries"></a>
<a class="index-entry-id" id="index-Index-entries"></a>
<a class="index-entry-id" id="index-Entries-for-an-index"></a>
<a class="index-entry-id" id="index-Specifying-index-entries"></a>
<a class="index-entry-id" id="index-Creating-index-entries"></a>
<p>The data to make an index come from many individual indexing commands
scattered throughout the Texinfo source file. Each command says to add
one entry to a particular index; after formatting, the index will give
the current page number or node name as the reference.
</p>
<p>An index entry consists of an indexing command at the beginning of a
line followed, on the rest of the line, by the entry.
</p>
<p>For example, this section begins with the following five entries for
the concept index:
</p>
<div class="example">
<pre class="example-preformatted">@cindex Defining indexing entries
@cindex Index entries, defining
@cindex Entries for an index
@cindex Specifying index entries
@cindex Creating index entries
</pre></div>
<p>Each predefined index has its own indexing command&mdash;<code class="code">@cindex</code>
for the concept index, <code class="code">@findex</code> for the function index, and so
on, as listed in the previous section.
</p>
<p>Index entries should precede the visible material that is being
indexed. For instance:
</p>
<div class="example">
<pre class="example-preformatted">@cindex hello
Hello, there!
</pre></div>
<p>Among other reasons, that way following indexing links (in
whatever context) ends up before the material, where readers want to
be, instead of after.
</p>
<p>Try to avoid using a colon in index entries, as this may confuse some
Info readers. See <a class="xref" href="Menu-Parts.html">The Parts of a Menu</a> for more information about the
structure of a menu entry.
</p>
<a class="index-entry-id" id="index-Index-font-types"></a>
<p>By default, entries for a concept index are printed in a small roman
font and entries for the other indices are printed in a small
<code class="code">@code</code> font. You may change the way part of an entry is
printed with the usual Texinfo commands, such as <code class="code">@file</code> for
file names (see <a class="pxref" href="Marking-Text.html">Marking Text, Words and Phrases</a>), and <code class="code">@r</code> for the normal roman
font (see <a class="pxref" href="Fonts.html">Fonts for Printing</a>).
</p>
<a class="index-entry-id" id="index-sortas"></a>
<a class="index-entry-id" id="index-sort-keys-for-index-entries"></a>
<a class="index-entry-id" id="index-index-sorting"></a>
<p>For the printed output, you may specify an explicit sort key for an
index entry using <code class="code">@sortas</code> following either the index command
or the text of the entry. For example: &lsquo;<samp class="samp">@findex @sortas{\}
\ @r{(literal \ in @code{@@math})</samp>&rsquo; sorts the index entry this
produces under backslash.
</p>
<a class="index-entry-id" id="index-txiindexbackslashignore"></a>
<a class="index-entry-id" id="index-txiindexhyphenignore"></a>
<a class="index-entry-id" id="index-txiindexlessthanignore"></a>
<a class="index-entry-id" id="index-txiindexatsignignore"></a>
<p>To reduce the quantity of sort keys you need to provide explicitly,
you may choose to ignore certain characters in index entries
for the purposes of sorting. The characters that you can
currently choose to ignore are &lsquo;<samp class="samp">\</samp>&rsquo;, &lsquo;<samp class="samp">-</samp>&rsquo;, &lsquo;<samp class="samp">&lt;</samp>&rsquo;
and &lsquo;<samp class="samp">@</samp>&rsquo;, which are ignored by giving as an argument to the
<code class="code">@set</code> command, respectively, <code class="code">txiindexbackslashignore</code>,
<code class="code">txiindexhyphenignore</code>, <code class="code">txiindexlessthanignore</code> and
<code class="code">txiindexatsignignore</code>. For example, specifying &lsquo;<samp class="samp">@set
txiindexbackslashignore</samp>&rsquo; causes the &lsquo;<samp class="samp">\mathopsup</samp>&rsquo; entry in the
index for this manual to be sorted as if it were &lsquo;<samp class="samp">mathopsup</samp>&rsquo;,
so that it appears among the other entries beginning with &lsquo;M&rsquo;.
</p>
</div>
<hr>
<div class="nav-panel">
<p>
Next: <a href="Advanced-Indexing.html">Advanced Indexing Commands</a>, Previous: <a href="Predefined-Indices.html">Predefined Indices</a>, Up: <a href="Indices.html">Indices</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Command-and-Variable-Index.html" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>