X

Do your readers a favor: give them an index

Indexing

Serious works of reference need a good index, something that goes beyond simple word searching.

Blue-phrase has indexmark notation which is used to mark passages for inclusion in an index. The notation for this uses special square-bracket doppelmarks that look like this [[ ... ]].

Inside the doppelmarks, there are four types index entries: defining entries, unmarked entries, secondary entries, and cross-reference entries. All four begin with a metatopic, which is an arbitrary name beginning with a dot. In the examples that follow, the metatopic is .bees.

The four types of indexmarks use the following notation:

  1. A defining entry consists of a metatopic and the word or phrase that is to be added to the index, delimited with single-quotes, like ' ... '.
  2. An unmarked entry consists solely of the metatopic.
  3. A secondary entry consists of a metatopic and an alternate word or phrase, which is to be added to the index as a "see also" item, and which is delimited with parentheses, like ( ... ).
  4. A cross-reference entry consists of two metatopics.

Here's an example of each type of indexmark:

defining entry [[.bees 'Bees']]
unmarked entry [[.bees]]
secondary entry [[.bees (army)]]
cross-reference entry [[.bees .honey]]

Honey [[.honey 'Honey']]

Building the index

The indexmark entries are coalesced into an index where a build pragma occurs. Here's what it might look like:

div {
h1 Index
!build-index
}

Then, the relevant portion of the emitted output (ignoring all other indexmarks, for brevity) would look like this:

<div>
<h1>Index</h1>
...
<div class='bees'>
<dfn><a id=ix25 class='defining' href='#ix20'>Bees</a></dfn>
<ul>
<li>also <a id=ix26 class='unmarked' href='#ix21'>1</a></li>
<li><a id=ix27 class='secondary' href='#ix22'>army</a></li>
<li><a id=ix28 class='crossref' href='#ix24'>(see also Honey)</a></li>
</ul>
</div>
...
<div class='honey'>
<dfn><a id=ix29 class='defining' href='#ix24'>Honey</a></dfn>
</div>
...
</div>

Each entry in the index is hyperlinked back to the original place in the body matter where the indexmark was placed.

Further Reading

BLUE-PHRASE Basics Getting started with symbolic endophrasing. Learn how to author documents with many of the commonly used typographic techniques found in word processors, by using BLUE-PHRASE symbolic endophrasing. There are only a few basic rules to learn.

BLUE-PHRASE Essentials A primer for effectively using BLUE-PHRASE. Learn the essentials necessary to effectively use BLUE-PHRASE, and discover techniques to perform commonly occurring tasks with greater ease using shorthand notation.

BLUE-PHRASE + CSS The fundamentals of styling Learn how to style BLUE-PHRASE with Cascading Style Sheets.

BLUE-PHRASE Quick Ref Syntax cheat sheet A quick reference to BLUE-PHRASE syntax.

Related Sites

BLUE-PHRASE HTML templating and blogging. A computer language for solving problems related to reading, writing, and publishing.

RWSERVE Caching HTTP/2 server with dynamic JavaScript plugins. HTTP/2 is all about speed: fewer bytes, reduced latency, longer connections, multiplexing and prioritization.

READ WRITE GROK A different take on a tech blog. Follow along as Tangled Web Services boldly goes where tech has gone before.

Contact Us

Read Write Tools is able to offer free and low-cost software products because it has low overhead and limited staff. We are happy to answer your customer service and technical support questions when our self-service options aren't able to meet your needs.

Many of the most common customer service issues can be resolved without our help. Check the licensing and accounts pages for ways to resolve issues related to registration, customer numbers, passwords and access keys.

Technical support issues can sometimes be resolved using one of the public forums like Stack Overflow, so search for error messages, blue-phrase syntax questions, and technical problems there. For best results include the name of the product in your search, like rwdoc, rwreuse, rwserve, etc.

For problems that you can't resolve yourself, ask for help.

Connections

Twitter @ReadWriteTools Latest announcements from our developer advocate.

Medium @joehonton Using distraction-free tools for better reading, writing and publishing, and loving it!

Copyright

Copyright © 2020 Read Write Tools, All Rights Reserved.

Software Licensing

Read Write Tools Software License Agreement. The ReadWriteView, ReadWriteNote, ReadWriteDoc, and ReadWriteReuse desktop applications; and the ReadWriteServe server software may be used only in conjunction with the purchase of a software license.

BLUE PHRASE Software License Agreement. The Blue-phrase processor and Blue-phrase symbolic endophrasing may be used only in conjunction with the purchase of a software license.

Read Write Tools Open Source Software. Read Write Tools publishes some of its software portfolio under open source licenses, including RWSERVE plugins, web components, CSS style sheets, editor themes, command line build tools, and Node.js libraries. These are covered by two different open source licenses: the MIT license or the Creative Commons CC-BY-NC-ND 4.0 (Attribution-NonCommercial-NoDerivatives 4.0 International). See each individual file or its associated README file to learn which applies.

Privacy Policy

Data We Obtain From You

  • While you are browsing our website, we log all HTTPS requests from your browser and all responses by our servers.
  • Each time you use our software, we verify the authenticity of your license key using the device address of your computer, and the IP address of your computer network. We use this data to prevent piracy, and to block unlicensed use of our software.

Data Retention

  • We store site visitor log data for a minimum of 90 days.
  • We retain your customer number, license keys and purchase history for a minimum of three years.

Obtaining a copy of your data

  • You may login to your account using the customer number we assigned to you, and the password chosen by you, to view and print all of the data we retain about you.

Data sharing

  • When you purchase a license to any of our software products, we forward payment information from you to a PCI DSS compliant payment processing gateway.
  • We do not sell or share any information with third parties for the purpose of marketing.
Refund Policy

Refund Policy Our goal is customer satisfaction. If, in your opinion, we haven't met our goal, we will refund the unused, pro-rated portion of your license fee.

Do your readers a favor: give them an index

🔎