Skip to main content

The PreTeXt Guide

Section 4.1 Paragraphs

Much of your writing will happen in paragraphs, delimited by the simple tag, <p>. You are reading one right now. They are a basic building block of divisions, and also a basic building block of other structures. For example, an ordered list, <ol>, contains a sequence of list items, <li>, and a typical list item might be a sequence of paragraphs. (Do not confuse this element with the anomalous <paragraphs> subdivision, Section 4.6).
Paragraphs are a choke-point of sorts. Many tags can only be used within paragraphs, and many others cannot be used within paragraphs. Notice too, that we do a certain amount of manipulation of whitespace in a paragraph, in ways that you may not even notice.
The following subsections together contain allowed, or encouraged, markup within a paragraph. Many of these may be used in captions and titles, but some of the more complicated constructions (which appear later here) cannot be used in captions or titles.
One more comment: typewriters, computer keyboards, and the ASCII character set have together conspired to limit the full range of characters that typographers and printers have used historically. A case in point is the hyphen, which is a single key on a keyboard. However, there are at least three common dashes of differing lengths (hyphen, en dash, and em dash), and in the context of mathematics or a computer program, the hyphen might be the binary operation of subtraction or the unary operation of negation. Another example is the “upright”, or “dumb”, quote mark that is a single key on a keyboard, while careful typography will employ “smart”, or “curly”, quote marks that have left and right variants. (Sometimes called “66” and “99” based on their shape.) PreTeXt will help you navigate this complexity, but you will want to use keyboard characters or markup appropriately. So if you care about communicating clearly, and making your writing easy for a reader to use, absorb the details that follow and the philosophy they implement.
We will say it again. PreTeXt is a markup language, and our various output formats (, HTML, EPUB, Jupyter notebooks) in turn employ markup languages. These use different escape characters and give different characters special meanings. Our job is to insulate you from this variety, so you can concentrate on authoring your ideas.
We begin with some simple “grouping” elements which contain several excellent examples of the importance and utility of careful markup. There is a plethora of empty tags for individual characters, and these are very important (see Subsection 4.1.4). We defer them to the end of this section, since they are not as instructive, but do not think this means they are an afterthought. They can be extremely critical for successful conversions. Also do not miss Best Practice 4.1.8 in the conclusion of this section.

Subsection 4.1.1 Simple Markup in Paragraphs

Beyond empty tags that translate to various characters, there are relatively simple tags that can call attention to various portions of a sentence, or generate more complicated constructions than described above.
Most, if not all, of the markup in this subsection may also be used within titles and captions, though they might lose some of their features when used in a title, especially when the title is duplicated in other contexts, such as a Table of Contents.

<q>, quotes, “group”.

This is the first of several grouping tags, using characters with left and right variants, and some of the most common markup in your writing. Presentation uses double quote marks that are smart quotes, meaning that they look different in their opening and closing variants. (See <blockquote> for extensive runs of quoted text that can stand alone, and which can carry an attribution.)

<sq>, single quotes, ‘group’.

Perhaps less-often used than <q>, so a couple more characters to type. Presentation is paired single-quotes, opening and closing.

<angles>, angle brackets, 〈group〉.

Left and right angle brackets to enclose a phrase. This is not for creating a set of generators in mathematics, use the appropriate mathematics tag and syntax for that. Note also that the characters used here are definitely distinct from the inequality symbols, < and >.

<dblbrackets>, double square brackets, ⟦group⟧.

Double left and right square brackets to enclose a phrase. This is not for grouping expressions in mathematics, use the appropriate mathematics tag and syntax for that. These are used in the analysis of texts to note various restorations or deletions. Inquire if you feel there should be more semantic markup for this purpose.

<em>, emphasis, important.

Use this element to surround characters in a phrase that is to be emphasized. This will typically be rendered in italics, though this choice is left to the implementation of a particular conversion. See also, <alert>.
If you are new to using a markup language, this is a place to stop and think. As a PreTeXt author you are never able to say, “I want this text to appear in italics.” Rather, you specify that certain text has a certain purpose or meaning. Emphasis is a way of calling attention to a portion of a sentence or paragraph. A font change (to italic) is a common and effective device. But a particular format might have a better, or different, way to achieve this. Perhaps in an electronic format, the letters are animated and dance up and down. (Just kidding. But you may be reminded of frequent blinking text in the early days of web design, supported by a non-standard <blink> element.) Seriously, now would be a good time to review Section 1.1.

<alert>, alert, critical.

Use this to heavily emphasize something to a greater degree than just emphasis. Maybe think of it as SHOUTING. Bold italic font, or a bright color, or both, would be normal choices for presentation. Overuse of this tag will dilute its effectiveness.

<term>, terminology, larvae.

Use this to identify a word or phrase that is being defined, in contrast to actually using a structured <definition>. Typical presentation is a bold font. Caution: the use of this tag is to communicate a defined term and converters may make use of this interpretation, given the importance of definitions in scholarly work. It would be considered tag abuse to use this tag to simply bold a word or phrase for some other reason, perhaps as an alternative to <em> or <alert>.

<foreign>, foreign words, idioms, phrases, Hola.

This tag is used to identify words or phrases from a language other than the main one used for the overall document. It is best practice to use a @xml:lang attribute to identify the language, since this will assist screen readers and hyphenation algorithms. We may also recognize the need for a different script (font). Usual presentation is italics for languages using a Latin script. This should not be used for entire paragraphs as a way of assisting with a translation of an entire document.
Note that when we use italics for emphasis and to point out foreign words or phrases, there is a loss of information in our output. In other words, we can no longer reliably (in an automated way) convert our output back to equivalent PreTeXt source from its visual representations. C’est la vie. See Section 1.1 again.

<pubtitle>, <articletitle>, titles of books and articles.

These provide the ability to typographically distinguish the title of another work, and are not a replacement for careful bibliographies and citations. Use <pubtitle> for longer, complete works, such as books, plays, or entire websites. Use <articletitle> for shorter, component works, such as a chapter of a book, a research article, or a single webpage.
Presentation for a longer work will be italics or an oblique (slanted) font, and for a shorter work, the title will simply be quoted.

<abbr>, <init>, <acro>, abbreviation, initialism, acronym, Mr., XML, SCUBA.

An abbreviation is a condensed or shortened version of some word or phrase, such as Mr. for “Mister.” Converters should take care with periods (full stop) inside an <abbr> as distinguished from the end of a sentence (which may not always be clear given the absence of a tag delimiting sentences). An initialism is an abbreviation read as a sequence of letters, often the first letter of words in a phrase, such as HTML for “HyperText Markup Language.” An acronym is much like an initialism, but the letters are read as a pronounceable word (which sometimes actually enters the language as a word, such as “radar” which began as RAdio Detection And Ranging). An example is SCUBA which stands for “Self-Contained Underwater Breathing Apparatus.” Initialisms and acronyms may be presented in a small-capitals font or as regular capitals reduced in size.

<delete>, <insert>, <stale>, editing assistance, gone, new, old.

These denote portions of a text that is being changed in some way, presumably as part of an editing process. Conceivably, they could be managed by some other tool acting on your source. Stale text is that which is slated for removal eventually, but is left in place so that it may be consulted. There is no support presently for actually deleting or incorporating text, though that would be a reasonable feature request.
Red and green, for leaving and entering, are natural choices for presentation. But in consideration of those readers who cannot always distinguish different colors, other devices, such as strikethrough or underlining, should also be employed.

<tag>, <tage>, <attr>, tag, empty tag, attribute, <section>, <hash/>, @width.

These are PreTeXt tags for when we write about PreTeXt and need to discuss tags, empty tags, and attributes. Given how we design PreTeXt tags the content of these elements should only be the 26 lower-case letters and a dash/hyphen. These should render in ways that make the three types of language elements obvious without much further discussion. Just a bit self-serving, but not unjustified.

<taxon>, scientific names, Escherichia coli.

This element may surround a full scientific name, resulting in presentation in italics. There are subelements <genus> and <species> which may be used to delineate those components.
A @ncbi attribute on <taxon> accepts an identifier from the National Center for Biotechnology Information
 1 
www.ncbi.nlm.nih.gov
. Feature requests for ways to make this more useful are welcome.

<fn>, footnotes.

A footnote can be inserted in a paragraph and a mark will be left behind. Where the content of the footnote goes depends on the capabilities of the output format. Because a footnote allows you to begin a new piece of text anywhere, it can be difficult to handle technically. For this reason it is banned from places like titles and its possible content is limited (for openers, no paragraphs).
A footnote is the farthest thing from structured writing that we can think of. It can go anywhere. Resist the temptation to use it, and your writing will improve. We frequently entertain the thought of making footnotes impossible in PreTeXt. See the <aside> element for a possible alternative.

<m>, mathematics, \(x^2+y^2\).

Simple, inline expressions using mathematical notation may be used in paragraphs, and in titles and captions. The syntax is . See Section 4.9 for full details.

<c>, code, verbatim text, literal text, import.

Short bursts of raw, or verbatim, text can be wrapped in the <c> element. Strictly speaking, “code” is a misnomer, as the text may be anything you need to communicate exactly as one would type it at a keyboard or as input to a computer program. Anything longer than a handful of characters, or needing accurate line breaks should consider the <cd>, <pre>, <program> or <console> tags. Presentation is normally a monospaced sans serif font, perhaps of a slightly heavier weight, and designed for the job with features such as unambiguous zeros (versus the letter ‘oh’). See Section 4.4 for details.

<email>, email address, nobody@example.com.

Very similar to the <c> tag, this may be used to get a monospace presentation of an email address, possibly as an active link in some formats.

Subsection 4.1.2 Cross-References and Paragraphs

There are several devices for creating cross-references. Generally, these are unwise (or banned) in titles, and if allowed may be inactive in certain portions of an electronic output format (such as when migrating to a Table of Contents).

<url>, linking external resources.

This is a cross-reference to some item separate and distinct for your document.
A Uniform Resource Locator (URL) is, loosely speaking, an Internet address for some item. Presentation depends on the capabilities of the output format to serve the resource. There is a mandatory attribute, @href, that contains the full URL, including a protocol (such as http://). Used as an empty tag, the visual text will be the exact contents of the @href attribute. So, http://www.example.com can be achieved with
<url href="http://www.example.com"/>
You may also wish to provide some text other than the actual URL, which you can specify as the content of the <url> element. For example, IANA Test Site
 2 
www.example.com
can be achieved with
<url href="http://www.example.com">IANA Test Site</url>
In order to have a URL occur in print output in a useful way, and in electronic output in an active way, the @visual attribute can be used to display the visual portion as verbatim text in a footnote. So illustrating again, we get example.com from
<url href="http://www.example.com" visual="example.com"/>
Notice the necessity and/or desirability of marking the text in a way that distinguishes it as literal text.
Note also that this tag is meant for external resources, so see the <xref> element (below) or Section 4.5 for ways to link internally (i.e. within your document).

<xref>, cross-references.

This is a cross-reference to some item contained within your document.
Extensive and intuitive capabilities for cross-referencing are a primary feature of PreTeXt. Typical use is an empty tag with the @ref attribute specifying the value of an @xml:id on the target of the cross-reference. This should work easily without much more instruction, but familiarize yourself with the details in Section 4.5 to get the most out of some the available options.

<idx>, index target.

This indicates that the containing structure (theorem, example, etc.), or top-level paragraph, should be the target of an entry of the index (a special sort of cross-reference). See Section 3.23 and Section 4.26 for general details.

<notation>, index target.

This indicates that the containing definition, or top-level paragraph, should be the target of an entry of the list of notation (a special sort of cross-reference). See Section 3.23 and Section 4.27 for general details.

Subsection 4.1.3 Structured Markup in Paragraphs

There are three categories of items which typically are structured further, and which are almost entirely restricted to appearing in a paragraph. Given their complexity, details are covered in other sections of this guide.

Lists.

With only one major exception (and three minor ones), a list must appear within a paragraph. See Section 3.8 for an introduction and Section 4.11 for precise details.

Display Mathematics.

Displayed mathematics, which is a single equation or a sequence of (aligned) equations, can only be placed within a paragraph. The relevant tags are <me>, <men>, <md>, and <mdn>, with the latter two necessarily structured with <mrow> elements. See Section 3.6 for an introduction and Section 4.9 for precise details.

Display Verbatim.

The <cd> tag, by analogy with the <md> tag for displayed mathematics, may be used to display one or more lines of verbatim text (such as a series of commands), possibly structured with the <cline> tag. See Section 3.16 for an introduction and Section 4.4 for precise details.
This should not be confused with the <pre>, <console>, or <program> tags, which have slightly different uses, and all of which must be used outside of a paragraph.

Subsection 4.1.4 Characters in Paragraphs

Some keyboard characters are unambiguous, for example, the percent sign, %. Other keyboard characters are poor replacements for several different characters. Is a slash, /, being used to separate information/ideas, or is it a solidus being used to form a fraction such as 3⁄4? Other characters, such as per-mille, ‰, are not present on keyboards at all. We organize this section according to these types of distinctions.

Subsubsection 4.1.4.1 Unambiguous Keyboard Characters

The keyboard characters `, ~, !, @, #, $, %, ^, *, (, ), _, =, +, [, ], {, }, \, |, :, ;, and , are entered as-is and are only rendered one way. Easy.
Of course, the fifty-two Latin letters, and ten decimal digits, are also in this category. If you have an international, or bilingual, or country-specific keyboard, then common accented versions of Latin letters (as used in Europe and the Western Hemisphere) may also be used directly from your keyboard.

Subsubsection 4.1.4.2 Exceptional Keyboard Characters

XML is a markup language, which in part means that some keyboard characters are co-opted to signal the start of markup. For XML this character is the less-than symbol, <. It signals the start of a tag, and then an opening tag ends with a greater-than symbol, >, while a closing tag has an extra / right after the <.
This begs the question: if a < is used in our XML source to signal the start of a tag, then how did we get one to appear here in this sentence without mistakenly starting a tag? Once a markup language gives some characters special meanings, then there needs to be an escape character. For XML the escape character is the ampersand, &. So to author the < and > symbols, we type escaped versions: &lt; and &gt;.
I hear you now say, “But now we just took the & out of the running and gave it a special meaning. How do we get an ampersand?” Easy, use the escaped version: &amp;.
So the short answer is: never, ever type the < or & keyboard characters in isolation. The very beginning of the processing of XML (i.e. PreTeXt) will fail fatally on these characters. Instead, always use the sequences &lt; and &amp; and then very early the XML processing will convert them to characters, without interpreting them as signals for aspects of the markup.
It does not seem necessary to author > as &gt;, though there is no real harm in doing so. The two other characters with escaped versions are the single and double quotes, ' and ", which have escaped version of &apos; and &quot; (respectively). These are only necessary for attribute values, and we have been careful to design PreTeXt so that they are not necessary.
Remark 4.1.1. Excessive Escaped Characters.
If you know another markup language, such as , , Markdown, JSON, or PGML, think about how many characters have been given special meanings, and the subsequent necessity to use escaped versions. And if you want to write about computer languages, realize that each such language also gives certain keyboard characters special meanings.
XML only has five exceptional characters, and in your daily use, PreTeXt really only requires you to be aware of two, the minimum necessary for a markup language.
Best Practice 4.1.2. A CDATA Section is Never Necessary.
We hate to mention it, but sooner or later, we need to have an uncomfortable discussion about the misunderstood CDATA section, and risk confusing the rest of this subsubsection. And this is the place. But you can come back later, if you wish.
You will read other places about very special markup known as a CDATA section. The name stands for character data, which means “all characters, no markup”. Think of it as switching off the XML processing for a while, so in particular, &, <, > no longer have any special meaning at all. That could be nice, but realize that now there is no opportunity to have any markup present using XML syntax, since it is ineffective.
A CDATA section is always a convenience and is never necessary.
When would it be convenient? Maybe you have some inside an <md> with a large matrix that uses lots of ampersands to separate the entries. Inside a CDATA you can author it with bare & rather than a plethora of &amp; or \amp. But you lose the ability to include an <xref> in that CDATA, so you need to be surgical about its scope. Perhaps a Tikz diagram in a <latex-image> has a multitude of <-> or a chunk of Sage code in an <input> has a lot of finitely-generated algebraic structures authored as R.<x> = ... (which is not even legal Python syntax either!). These places where there is little, or no, markup could be convenient places to use a CDATA. Be sure to read the warning at Item 7 in Section 5.10 before you go all-in.

Subsubsection 4.1.4.3 Ambiguous Keyboard Characters

Some keyboard characters have a primary interpretation, and are imitations of other typographic characters. Your output will be of higher quality if you understand these distinctions and employ the proper variant.
Table 4.1.3. Ambiguous Keyboard Characters and Alternatives
Keyboard Primary Notes
/ (forward) slash <solidus/> is a fraction bar, ⁄
' apostrophe <rsq/> is a right single quote, ’
` backtick <lsq/> is a right single quote, ‘
. period abbreviations and end-of-sentence
- hyphen See dashes, and arithmetic
" upright double quote <lq/> is “, <rq/> is ”
Note that the four quote marks (left/right, single/double) are meant for the actual characters. Always use the grouping constructions described above (i.e. <q> and <sq>) when grouping a phrase with quote marks. Note, too, that there is never a good reason to use the keyboard quote character (") unless you are creating some sort of verbatim text, such as a program listing or describing literal keyboard input.
When creating print or PDF via a period may get different trailing space depending on location and context, generally being its use in abbreviations or to conclude a sentence. We do not yet have this dual-use under control.

Subsubsection 4.1.4.4 Extraordinary Characters

Some characters or symbols are typically not available on a keyboard, so we provide empty elements. Many of these may be entered directly into your source as Unicode characters, and they will do well in your HTML output. However, these may fail entirely if you create print or PDF via using the pdflatex engine. Furthermore, even for HTML output there may be several Unicode characters that are very similar.
So again, for the best quality output be aware of these elements and use them. Please suggest additions if you do not find what you need and are resorting to Unicode characters.
<ellipsis/>, …, ellipsis.
Typically three low dots with no intervening space, to indicate a continuation. This will always perform better than three consecutive periods.
<midpoint/>, ·, midpoint.
A small centered (vertically) dot, which can be used to separate pieces of information, especially in displayed text (i.e. outside of paragraphs). Not to be confused with a bullet preceding a list item, or multiplication in mathematics.
<swungdash/>, ⁓, swung dash.
Another decorative separator, not to be confused with the keyboard tilde character since it is wider and thicker.
<permille/>, ‰, per mille.
Like per cent, but now a number expressed as its product with \(1000\) (rather than with \(100\)).
<pilcrow/>, ¶, pilcrow, paragraph mark.
Mark used historically to indicate the start of an internal paragraph, and in a more modern use, to indicate a permalink.
<section-mark/>, §, section mark.
Used to prefix the number of a section, or other division. (So the word section is being used generically here.)
<copyright/>, ©, copyright.
The symbol used in publishing, legal, or business contexts. For a PreTeXt project, copyright information can be specified within the <bibinfo> portion of the <frontmatter>.
<trademark/>, ™, trademark.
The symbol used in legal or business contexts.
<registered/>, ®, registered.
The symbol used in legal or business contexts.
Table 4.1.4. Extraordinary Characters and Their Empty Elements
Character Name Element
ellipsis <ellipsis/>
· midpoint <midpoint/>
swung dash <swungdash/>
per-mille <permille/>
pilcrow <pilcrow/>
§ section-mark <section-mark/>
© copyright <copyright/>
trademark <trademark/>
® registered <registered/>

Subsubsection 4.1.4.5 Accented Characters

The second 128 Unicode characters (hex 80 to FF) contain many of the most frequently-used accented characters in Western languages, along with niceties such as the German eszett, ß, or the Scandinavian æsc, æ, an a-e ligature. Like the fifty-two Latin letters (part of the first 128 Unicode characters), these may be used as-is. They may be present on your keyboard, or you may need to learn keyboard shortcuts or specifics of your operating system to enter them as Unicode characters. In a pinch, you can often cut-and-paste a few characters from web pages.
This table is indexed by the Unicode number, in hexadecimal notation. The first 32 of the 128 (U+0080U+009F) are control codes and U+00A0 is a non-breaking space, so is invisible, while U+00AD is a soft hyphen (which we have not implemented and so is excluded).
Table 4.1.5. Latin-1 Supplement, Unicode U+00A0U+00FF
0 1 2 3 4 5 6 7 8 9 A B C D E F
00A_   ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ® ¯
00B_ ° ± ² ³ ´ µ · ¸ ¹ º » ¼ ½ ¾ ¿
00C_ À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï
00D_ Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß
00E_ à á â ã ä å æ ç è é ê ë ì í î ï
00F_ ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ

Subsubsection 4.1.4.6 Arithmetic

If you are writing about technical subjects, then you will want to avail yourself of PreTeXt’s extensive support for mathematics. Otherwise, you may wish to write really simple arithmetic within sentences without extra formatting. Notice that there is no provision for preventing line-breaks in the midst of these expressions.
So you can author (2×6)÷3+10−15 = -1, but that is about the limit of the complexity of expressions you should author without using the extensive capabilities designed for mathematics, rather than arithmetic. Note that the spaces around the equal sign have been supplied in the source, but no spaces have been provided around the operators. Also, the minus sign and the negative are slightly different because the subtraction uses the <minus/> element, while the negative answer uses a plain keyboard hyphen/dash.
Using the <m> element instead, the above is \((2\times 6)\div 3+10-15=-1\text{.}\) Note the more careful spacing, and the appropriate symbols for subtraction and negation, with no special care in the syntax used in the source.
Note also that the plus sign, + and the equals sign, =, can be provided in text as the unambiguous keyboard characters.
The <degree/>, <prime/>, <dblprime/> elements support simple coordinates with degrees, minutes, seconds, or temperature, or distance in feet and inches. “We parked the car at 36°16′0.83″N, 122°35′47.27″W, and since it was 93°F, we walked 505′3.6″ so we could swim in the bay.”
<minus/>, −, minus, subtraction, negation.
For simple arithmetic expressions in text, this symbol may be used. Note that the keyboard hyhpen (or dash) might be acceptable for your purposes, but they are different.
<times/>, ×, times, multiplication.
For simple arithmetic expressions in text, this symbol may be used. Or it may be used to specify dimensions, as in “I bought a 2×4 at the lumber yard.”
<solidus/>, ⁄, solidus, virgule, fraction bar.
For simple arithmetic expressions in text, this symbol may be used to form a fraction. It should appear to have a significantly shallower slope than the forward slash, /.
<obelus/>, ÷, obelus, division sign.
For simple arithmetic expressions in text, this symbol may be used to indicate division.
<plusminus/>, ±, plus-minus sign.
For simple arithmetic expressions in text, this symbol may be used to indicate a tolerance or a choice of two values, one the negative of the other.
<degree/>, °, degree symbol.
A raised open circle for temperature or for angles used in coordinates.
<prime/>, ′, prime symbol.
A straight mark that is placed like an exponent. For use in coordinates or statements of linear measure in feet and inches. Not an apostrophe, and not mathematics (like, say, not to denote a derivative).
<dblprime/>, ″, double prime symbol.
Two straight marks that are placed like an exponent. For use in coordinates or statements of linear measure in feet and inches. Not an apostrophe, and not mathematics (like, say, not to denote a second derivative).

Subsubsection 4.1.4.7 Separators

<ndash/>, –, en dash.
A dash, the width of a lowercase ‘n’, or exactly half the width of the em dash. This is typically used to express a range, such as 1955<ndash />1975, with no intervening spaces. It is often expressed as two hyphens when typed. Bringhurst suggests an ndash surrounded by spaces – thusly – when setting off phrases.
<mdash/>, —, em dash.
A dash, the width of a lowercase ‘m’, or twice the width of the en dash. This is typically used to express a secondary part of a phrase, much like the use of a semi-colon or parentheses.
Style guides suggest that there should be no spaces, before or after, an em dash, while some allow for a “thin” space on either side. You should always leave no space around an <mdash/> element in your PreTeXt source. Then a publication file entry can be used to elect the automatic addition of a thin space, should your publisher so desire. See Subsection 44.1.5 for the syntax of the publisher file entry.
<nbsp/>, non-breaking space.
A space, but which ties two words together and discourages a line break when formatted, such as Summer<nbsp />1967. This can also be used to discourage a period in an abbreviation from being interpreted as the end of a sentence, such as C.R.<nbsp />Darwin.
<midpoint/>, <swungdash/>, ·, ⁓, midpoint, swung dash.
These can be used·as more decorative⁓separators.

Subsection 4.1.5 Keyboard Keys

If you are writing a software manual, or writing about how to use a calculator as part of a science textbook, then you might want to make it very clear which keys to press on a keyboard. The <kbd> element can hold content like Z or Caps Lock and your output will have a very nice looking keyboard key with the desired label. For example, Z and Caps Lock. For keys labeled with graphics, like the arrow keys, instead of content, provide the @name attribute with a value from the following table. Request additions to this table if you are using this feature (2019-11-22).
Table 4.1.6. Keyboard Keys Specified by @name Attribute
left right up down
enter shift solidus /
plus + minus - times × left-paren (
obelus ÷ squared x^2 inverse x^-1 right-paren )

Subsection 4.1.6 User-Interface Icons

When writing about software, you may wish to call attention to icons used in the interface. Similar to graphical keyboard keys, use the <icon> element with a @name attribute with a value from the following table. See Section 30.14 for information about using icons as part of output.
Table 4.1.7. User-Interface Icons available with <icon/>
Name Icon Name Icon Name Icon
file-save arrow-left media-rewind
arrow-up arrow-right media-fast-forward
menu arrow-down media-skip-to-start
wrench media-stop media-pause
gear media-play media-skip-to-end
power

Subsection 4.1.7 Other Markup in Paragraphs

<today/>, <timeofday/>, November 13, 2024, 19:21:25 (-08:00).

Values at the time of XML processing. Useful for marking drafts or other frequently revised material such as online versions.

<tex/>, <latex/>, <xetex/>, <xelatex/>, <pretext/>, <webwork/>, , , XeTeX, XeLaTeX, PreTeXt, WeBWorK.

Conveniences for frequently-mentioned accessories to PreTeXt.

<fillin/>, , fill-in blank.

A “fill in the blank” blank. May be used in normal text or within mathematics contexts. The @characters attribute may be used to hint at how long the line will be. Here we have set @characters to the value 5.
If used inside math, a @fill attribute (in lieu of @characters) may be some string of math that will be used to determine width, height, and depth of the blank. In text, the default value of 10 is used for @characters. In math, the default value of XXX is used for @fill.
If used in normal text, a @rows and/or @cols attribute may be present, each a positive integer. When either is greater than one, there will be an indication that the expected content to fill in the blank is a @rows × @cols array.

<ie/>, <eg/>, <ca/>, <vs/>, <etc/>, i.e., e.g., ca., vs., etc..

A small collection of frequently-used Latin abbreviations, with attempts to handle the tricky periods wisely in output. Strictly speaking BC is not Latin, but we include it for completeness. Tags are always lowercase, no punctuation, usually two letters.
Tag Realization Meaning
ad AD anno Domini, in the year of the Lord
am AM ante meridiem, before midday
bc BC English, before Christ
ca ca. circa, about
eg e.g. exempli gratia, for example
etal et al. et alia, and others
etc etc. et caetera, and the rest
ie i.e. id est, in other words
nb NB nota bene, note well
pm PM post meridiem, after midday
ps PS post scriptum, after what has been written
vs vs. versus, against
viz viz. videlicet, namely

SI Units.

Système international (d’unités) (International System of Units) is a system of measurement used universally in science. PreTeXt has comprehensive support for this system and its notation and abbreviations. See Section 3.28 for a short introduction and Section 4.33 for detailed descriptions of the relevant elements and their use.

𝄪, ♯, ♮, ♭, 𝄫, music notation.

Notes, chords, and other notation may appear within sentences as part of a discussion. See Section 4.32 for detailed descriptions of the relevant elements.

Best Practice 4.1.8. Understand the Importance of Careful Markup.

There is a lot of detailed information in this section. Much of it is critically important. If you are new to thinking in terms of markup (rather than WYSIWYG tools), it might be overwhelming, a lot to digest, and hard to separate the wheat from the chaff. Careful here means using the necessary markup, not using it for other purposes different than its intent (tag abuse), planning ahead for different output formats, but not becoming a slave to over-doing it.
So come back here often for a re-read. And keep in mind that PreTeXt is designed around principles (List 1.1.1), and that it is markup (Item 1.1.1:1) which enables multiple outputs (Item 1.1.1:3) and effective and beautiful online versions (Item 1.1.1:6).