Added video command

This commit is contained in:
Graham Nelson 2020-04-28 23:00:48 +01:00
parent bf4da59823
commit 43207bcd2b
31 changed files with 2081 additions and 1833 deletions

View file

@ -67,6 +67,7 @@ see //foundation: A Brief Guide to Foundation//.
@e weave_material_node_MT
@e weave_figure_node_MT
@e weave_audio_node_MT
@e weave_video_node_MT
@e weave_embed_node_MT
@e weave_pmac_node_MT
@e weave_vskip_node_MT
@ -152,6 +153,7 @@ ALLOCATE_INDIVIDUALLY(weave_endnote_node)
ALLOCATE_INDIVIDUALLY(weave_material_node)
ALLOCATE_INDIVIDUALLY(weave_figure_node)
ALLOCATE_INDIVIDUALLY(weave_audio_node)
ALLOCATE_INDIVIDUALLY(weave_video_node)
ALLOCATE_INDIVIDUALLY(weave_embed_node)
ALLOCATE_INDIVIDUALLY(weave_pmac_node)
ALLOCATE_INDIVIDUALLY(weave_vskip_node)

View file

@ -155,6 +155,7 @@ some of these fell into disuse in version 2 syntax.
@e GRAMMAR_INDEX_CMD
@e FIGURE_CMD
@e AUDIO_CMD
@e VIDEO_CMD
@e CAROUSEL_CMD
@e CAROUSEL_ABOVE_CMD
@e CAROUSEL_BELOW_CMD

View file

@ -383,6 +383,14 @@ division in the current section.
code_lcat_for_body = COMMENT_BODY_LCAT;
L->text_operand = Str::duplicate(mr2.exp[0]);
comment_mode = TRUE;
} else if ((current_paragraph) &&
(Regexp::match(&mr2, mr.exp[0], L"%(video (%c+)%)"))) {
Tags::add_by_name(L->owning_paragraph, I"Video");
L->command_code = VIDEO_CMD;
L->category = COMMAND_LCAT;
code_lcat_for_body = COMMENT_BODY_LCAT;
L->text_operand = Str::duplicate(mr2.exp[0]);
comment_mode = TRUE;
} else if ((current_paragraph) &&
(Regexp::match(&mr2, mr.exp[0], L"%(carousel%)"))) {
Tags::add_by_name(L->owning_paragraph, I"Carousels");

View file

@ -280,6 +280,7 @@ at us; but we don't weave them into the output, that's for sure.
Trees::make_child(WeaveTree::grammar_index(tree), state->ap);
if (L->command_code == FIGURE_CMD) @<Weave a figure@>;
if (L->command_code == AUDIO_CMD) @<Weave an audio clip@>;
if (L->command_code == VIDEO_CMD) @<Weave a video clip@>;
if (L->command_code == EMBED_CMD) @<Weave an embed@>;
if (L->command_code == CAROUSEL_CMD) @<Weave a carousel@>;
if (L->command_code == CAROUSEL_ABOVE_CMD) @<Weave a carousel@>;
@ -300,6 +301,11 @@ at us; but we don't weave them into the output, that's for sure.
text_stream *figname = Weaver::dimensions(L->text_operand, &w, &h, L);
Trees::make_child(WeaveTree::audio(tree, figname, w), state->ap);
@<Weave a video clip@> =
int w, h;
text_stream *figname = Weaver::dimensions(L->text_operand, &w, &h, L);
Trees::make_child(WeaveTree::video(tree, figname, w, h), state->ap);
@<Weave an embed@> =
int w, h;
text_stream *ID = Weaver::dimensions(L->text_operand2, &w, &h, L);

View file

@ -51,6 +51,7 @@ int Debugging::render_visit(tree_node *N, void *state, int L) {
else if (N->type == weave_endnote_node_type) @<Render endnote@>
else if (N->type == weave_figure_node_type) @<Render figure@>
else if (N->type == weave_audio_node_type) @<Render audio clip@>
else if (N->type == weave_video_node_type) @<Render video clip@>
else if (N->type == weave_material_node_type) @<Render material@>
else if (N->type == weave_embed_node_type) @<Render embed@>
else if (N->type == weave_pmac_node_type) @<Render pmac@>
@ -149,6 +150,10 @@ int Debugging::render_visit(tree_node *N, void *state, int L) {
weave_audio_node *C = RETRIEVE_POINTER_weave_audio_node(N->content);
WRITE(" <%S> %d", C->audio_name, C->w);
@<Render video clip@> =
weave_video_node *C = RETRIEVE_POINTER_weave_video_node(N->content);
WRITE(" <%S> %d", C->video_name, C->w);
@<Render material@> =
weave_material_node *C = RETRIEVE_POINTER_weave_material_node(N->content);
WRITE(" ");

View file

@ -107,6 +107,7 @@ int HTMLFormat::render_visit(tree_node *N, void *state, int L) {
else if (N->type == weave_endnote_node_type) @<Render endnote@>
else if (N->type == weave_figure_node_type) @<Render figure@>
else if (N->type == weave_audio_node_type) @<Render audio clip@>
else if (N->type == weave_video_node_type) @<Render video clip@>
else if (N->type == weave_material_node_type) @<Render material@>
else if (N->type == weave_embed_node_type) @<Render embed@>
else if (N->type == weave_pmac_node_type) @<Render pmac@>
@ -271,6 +272,28 @@ int HTMLFormat::render_visit(tree_node *N, void *state, int L) {
HTML_CLOSE("p");
WRITE("\n");
@<Render video clip@> =
weave_video_node *C = RETRIEVE_POINTER_weave_video_node(N->content);
filename *F = Filenames::in(
Pathnames::down(hrs->wv->weave_web->md->path_to_web, I"Video"),
C->video_name);
Assets::include_asset(OUT, hrs->copy_rule, hrs->wv->weave_web, F, NULL,
hrs->wv->pattern, hrs->wv->weave_to);
HTML_OPEN_WITH("p", "class=\"center-p\"");
if ((C->w > 0) && (C->h > 0))
WRITE("<video width=\"%d\" height=\"%d\" controls>", C->w, C->h);
else if (C->w > 0)
WRITE("<video width=\"%d\" controls>", C->w);
else if (C->h > 0)
WRITE("<video height=\"%d\" controls>", C->h);
else
WRITE("<video controls>");
WRITE("<source src=\"%S\" type=\"video/mp4\">\n", C->video_name);
WRITE("Your browser does not support the video tag.\n");
WRITE("</video>\n");
HTML_CLOSE("p");
WRITE("\n");
@<Render material@> =
weave_material_node *C = RETRIEVE_POINTER_weave_material_node(N->content);
paragraph *first_in_para = NULL;

View file

@ -39,6 +39,7 @@ int PlainText::render_visit(tree_node *N, void *state, int L) {
(N->type == weave_chapter_footer_node_type) ||
(N->type == weave_figure_node_type) ||
(N->type == weave_audio_node_type) ||
(N->type == weave_video_node_type) ||
(N->type == weave_material_node_type) ||
(N->type == weave_chapter_node_type) ||
(N->type == weave_carousel_slide_node_type) ||

View file

@ -57,6 +57,7 @@ int TeX::render_visit(tree_node *N, void *state, int L) {
(N->type == weave_chapter_footer_node_type) ||
(N->type == weave_section_footer_node_type) ||
(N->type == weave_audio_node_type) ||
(N->type == weave_video_node_type) ||
(N->type == weave_chapter_node_type) ||
(N->type == weave_carousel_slide_node_type) ||
(N->type == weave_begin_footnote_text_node_type)) @<Render nothing@>

View file

@ -87,6 +87,13 @@ typedef struct weave_audio_node {
MEMORY_MANAGEMENT
} weave_audio_node;
typedef struct weave_video_node {
struct text_stream *video_name;
int w;
int h;
MEMORY_MANAGEMENT
} weave_video_node;
typedef struct weave_material_node {
int material_type;
int plainly;
@ -250,6 +257,7 @@ tree_node_type *weave_paragraph_heading_node_type = NULL;
tree_node_type *weave_endnote_node_type = NULL;
tree_node_type *weave_figure_node_type = NULL;
tree_node_type *weave_audio_node_type = NULL;
tree_node_type *weave_video_node_type = NULL;
tree_node_type *weave_material_node_type = NULL;
tree_node_type *weave_embed_node_type = NULL;
tree_node_type *weave_pmac_node_type = NULL;
@ -314,6 +322,8 @@ heterogeneous_tree *WeaveTree::new_tree(weave_order *wv) {
Trees::new_node_type(I"figure", weave_figure_node_MT, NULL);
weave_audio_node_type =
Trees::new_node_type(I"audio", weave_audio_node_MT, NULL);
weave_video_node_type =
Trees::new_node_type(I"video", weave_video_node_MT, NULL);
weave_material_node_type =
Trees::new_node_type(I"material", weave_material_node_MT, NULL);
weave_embed_node_type =
@ -506,6 +516,15 @@ tree_node *WeaveTree::audio(heterogeneous_tree *tree,
STORE_POINTER_weave_audio_node(C));
}
tree_node *WeaveTree::video(heterogeneous_tree *tree,
text_stream *video_name, int w, int h) {
weave_video_node *C = CREATE(weave_video_node);
C->video_name = Str::duplicate(video_name);
C->w = w;
return Trees::new_node(tree, weave_video_node_type,
STORE_POINTER_weave_video_node(C));
}
tree_node *WeaveTree::material(heterogeneous_tree *tree, int material_type, int plainly,
programming_language *styling) {
weave_material_node *C = CREATE(weave_material_node);

View file

@ -476,15 +476,6 @@ correspond. If you really want to monkey with the aspect ratio,
= (figure Whatever.jpg at 20 by 100)
=
@h Audio.
To include audio samples, place them as MP3 files in the subdirectory |Audio|
of the web. For example, in the present web,
= (text as Inweb)
= (audio SP014.mp3)
=
produces Space Patrol episode 14, from 1953: "Brain Bank And Space Binoculars" --
= (audio SP014.mp3)
@h Carousels.
A carousel is a slide-show of (usually but not always) figures; there's a
set of slides with captions, only one of which is visible at a time.
@ -545,9 +536,24 @@ it can also be |above| or |below|. A slide can also have no caption at all:
= (carousel end)
=
@h Embedded video.
This makes sense only for some HTML-like weave formats, but we can also
cause videos to be embedded:
@h Video and audio.
To include audio samples, place them as MP3 files in the subdirectory |Audio|
of the web. For example, in the present web,
= (text as Inweb)
= (audio SP014.mp3)
=
produces Space Patrol episode 14, from 1953: "Brain Bank And Space Binoculars" --
= (audio SP014.mp3)
Similarly,
= (text as Inweb)
= (video DW014.mp4)
=
produces Doctor Who episode 14, from 1963: "The Roof of the World". Still, video
takes up space, so for economy's sake a demonstration is omitted from this manual.
@h Embedded video and audio.
One way to get around such space limitations is to embed players for video or
audio hosted on some external service. For example:
= (text as Inweb)
= (embedded YouTube video GR3aImy7dWw)
=

File diff suppressed because it is too large Load diff

View file

@ -79,7 +79,7 @@ p.firstcommentary {
/* For centred images and the like */
p.center_p {
p.center-p {
text-align: center;
}

Binary file not shown.

View file

@ -341,7 +341,7 @@ at filename <span class="extract"><span class="extract-syntax">F</span></span>,
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Assets::include_asset</span><button class="popup" onclick="togglePopup('usagePopup10')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup10">Usage of <span class="code-font"><span class="function-syntax">Assets::include_asset</span></span>:<br/><a href="1-apacs.html#SP6">&#167;6</a>, <a href="1-apacs.html#SP7">&#167;7</a><br/>HTML Formats - <a href="5-hf.html#SP5_10">&#167;5.10</a>, <a href="5-hf.html#SP5_11">&#167;5.11</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">asset_rule</span><span class="plain-syntax"> *</span><span class="identifier-syntax">R</span><span class="plain-syntax">, </span><span class="reserved-syntax">web</span><span class="plain-syntax"> *</span><span class="identifier-syntax">W</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">F</span><span class="plain-syntax">,</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Assets::include_asset</span><button class="popup" onclick="togglePopup('usagePopup10')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup10">Usage of <span class="code-font"><span class="function-syntax">Assets::include_asset</span></span>:<br/><a href="1-apacs.html#SP6">&#167;6</a>, <a href="1-apacs.html#SP7">&#167;7</a><br/>HTML Formats - <a href="5-hf.html#SP5_10">&#167;5.10</a>, <a href="5-hf.html#SP5_11">&#167;5.11</a>, <a href="5-hf.html#SP5_12">&#167;5.12</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">asset_rule</span><span class="plain-syntax"> *</span><span class="identifier-syntax">R</span><span class="plain-syntax">, </span><span class="reserved-syntax">web</span><span class="plain-syntax"> *</span><span class="identifier-syntax">W</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">F</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">trans</span><span class="plain-syntax">, </span><span class="reserved-syntax">weave_pattern</span><span class="plain-syntax"> *</span><span class="identifier-syntax">pattern</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">from</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">R</span><span class="plain-syntax"> == </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">) </span><span class="identifier-syntax">R</span><span class="plain-syntax"> = </span><a href="1-apacs.html#SP11" class="function-link"><span class="function-syntax">Assets::applicable_rule</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">pattern</span><span class="plain-syntax">, </span><span class="identifier-syntax">F</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">url</span><span class="plain-syntax">);</span>

View file

@ -103,6 +103,7 @@ see <a href="../foundation-module/P-abgtf.html" class="internal">A Brief Guide t
<span class="definition-keyword">enum</span> <span class="constant-syntax">weave_material_node_MT</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">weave_figure_node_MT</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">weave_audio_node_MT</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">weave_video_node_MT</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">weave_embed_node_MT</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">weave_pmac_node_MT</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">weave_vskip_node_MT</span>
@ -189,6 +190,7 @@ see <a href="../foundation-module/P-abgtf.html" class="internal">A Brief Guide t
<span class="identifier-syntax">ALLOCATE_INDIVIDUALLY</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_material_node</span><span class="plain-syntax">)</span>
<span class="identifier-syntax">ALLOCATE_INDIVIDUALLY</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_figure_node</span><span class="plain-syntax">)</span>
<span class="identifier-syntax">ALLOCATE_INDIVIDUALLY</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_audio_node</span><span class="plain-syntax">)</span>
<span class="identifier-syntax">ALLOCATE_INDIVIDUALLY</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_video_node</span><span class="plain-syntax">)</span>
<span class="identifier-syntax">ALLOCATE_INDIVIDUALLY</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_embed_node</span><span class="plain-syntax">)</span>
<span class="identifier-syntax">ALLOCATE_INDIVIDUALLY</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_pmac_node</span><span class="plain-syntax">)</span>
<span class="identifier-syntax">ALLOCATE_INDIVIDUALLY</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_vskip_node</span><span class="plain-syntax">)</span>

View file

@ -377,7 +377,7 @@ source:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Main::error_in_web</span><button class="popup" onclick="togglePopup('usagePopup2')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup2">Usage of <span class="code-font"><span class="function-syntax">Main::error_in_web</span></span>:<br/>Configuration - <a href="1-cnf.html#SP6">&#167;6</a><br/>The Swarm - <a href="1-ts.html#SP3">&#167;3</a><br/>Assets, Plugins and Colour Schemes - <a href="1-apacs.html#SP6">&#167;6</a>, <a href="1-apacs.html#SP7">&#167;7</a><br/>The Parser - <a href="2-tp.html#SP1_1_7_3">&#167;1.1.7.3</a>, <a href="2-tp.html#SP1_1_7_4">&#167;1.1.7.4</a>, <a href="2-tp.html#SP1_1_7_7">&#167;1.1.7.7</a>, <a href="2-tp.html#SP1_1_7_7_1">&#167;1.1.7.7.1</a>, <a href="2-tp.html#SP1_1_7_5_1">&#167;1.1.7.5.1</a>, <a href="2-tp.html#SP1_1_7_5_1_1">&#167;1.1.7.5.1.1</a>, <a href="2-tp.html#SP1_1_7_5_1_2">&#167;1.1.7.5.1.2</a>, <a href="2-tp.html#SP1_1_7_5_1_3">&#167;1.1.7.5.1.3</a>, <a href="2-tp.html#SP1_1_7_5_1_4">&#167;1.1.7.5.1.4</a>, <a href="2-tp.html#SP1_1_7_5_1_7">&#167;1.1.7.5.1.7</a>, <a href="2-tp.html#SP1_1_4_3_1">&#167;1.1.4.3.1</a>, <a href="2-tp.html#SP3">&#167;3</a><br/>Enumerated Constants - <a href="2-ec.html#SP3_1">&#167;3.1</a>, <a href="2-ec.html#SP3_2">&#167;3.2</a>, <a href="2-ec.html#SP3_3">&#167;3.3</a><br/>The Analyser - <a href="3-ta.html#SP4_1">&#167;4.1</a><br/>The Weaver - <a href="3-tw.html#SP2_7_2">&#167;2.7.2</a>, <a href="3-tw.html#SP2_7_2_3_1_5">&#167;2.7.2.3.1.5</a><br/>The Weaver of Text - <a href="3-twot.html#SP1_4">&#167;1.4</a><br/>The Tangler - <a href="3-tt.html#SP1_1_1_1">&#167;1.1.1.1</a>, <a href="3-tt.html#SP3_1">&#167;3.1</a><br/>Types and Functions - <a href="4-taf.html#SP7_3">&#167;7.3</a><br/>Language Methods - <a href="4-lm.html#SP10">&#167;10</a><br/>ACME Support - <a href="4-as.html#SP6">&#167;6</a><br/>C-Like Languages - <a href="4-cl.html#SP3">&#167;3</a>, <a href="4-cl.html#SP3_1">&#167;3.1</a>, <a href="4-cl.html#SP3_2_2_1">&#167;3.2.2.1</a><br/>HTML Formats - <a href="5-hf.html#SP5_13">&#167;5.13</a><br/>Colonies - <a href="6-cln.html#SP8_4">&#167;8.4</a>, <a href="6-cln.html#SP10">&#167;10</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">message</span><span class="plain-syntax">, </span><span class="reserved-syntax">source_line</span><span class="plain-syntax"> *</span><span class="identifier-syntax">sl</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Main::error_in_web</span><button class="popup" onclick="togglePopup('usagePopup2')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup2">Usage of <span class="code-font"><span class="function-syntax">Main::error_in_web</span></span>:<br/>Configuration - <a href="1-cnf.html#SP6">&#167;6</a><br/>The Swarm - <a href="1-ts.html#SP3">&#167;3</a><br/>Assets, Plugins and Colour Schemes - <a href="1-apacs.html#SP6">&#167;6</a>, <a href="1-apacs.html#SP7">&#167;7</a><br/>The Parser - <a href="2-tp.html#SP1_1_7_3">&#167;1.1.7.3</a>, <a href="2-tp.html#SP1_1_7_4">&#167;1.1.7.4</a>, <a href="2-tp.html#SP1_1_7_7">&#167;1.1.7.7</a>, <a href="2-tp.html#SP1_1_7_7_1">&#167;1.1.7.7.1</a>, <a href="2-tp.html#SP1_1_7_5_1">&#167;1.1.7.5.1</a>, <a href="2-tp.html#SP1_1_7_5_1_1">&#167;1.1.7.5.1.1</a>, <a href="2-tp.html#SP1_1_7_5_1_2">&#167;1.1.7.5.1.2</a>, <a href="2-tp.html#SP1_1_7_5_1_3">&#167;1.1.7.5.1.3</a>, <a href="2-tp.html#SP1_1_7_5_1_4">&#167;1.1.7.5.1.4</a>, <a href="2-tp.html#SP1_1_7_5_1_7">&#167;1.1.7.5.1.7</a>, <a href="2-tp.html#SP1_1_4_3_1">&#167;1.1.4.3.1</a>, <a href="2-tp.html#SP3">&#167;3</a><br/>Enumerated Constants - <a href="2-ec.html#SP3_1">&#167;3.1</a>, <a href="2-ec.html#SP3_2">&#167;3.2</a>, <a href="2-ec.html#SP3_3">&#167;3.3</a><br/>The Analyser - <a href="3-ta.html#SP4_1">&#167;4.1</a><br/>The Weaver - <a href="3-tw.html#SP2_7_2">&#167;2.7.2</a>, <a href="3-tw.html#SP2_7_2_3_1_5">&#167;2.7.2.3.1.5</a><br/>The Weaver of Text - <a href="3-twot.html#SP1_4">&#167;1.4</a><br/>The Tangler - <a href="3-tt.html#SP1_1_1_1">&#167;1.1.1.1</a>, <a href="3-tt.html#SP3_1">&#167;3.1</a><br/>Types and Functions - <a href="4-taf.html#SP7_3">&#167;7.3</a><br/>Language Methods - <a href="4-lm.html#SP10">&#167;10</a><br/>ACME Support - <a href="4-as.html#SP6">&#167;6</a><br/>C-Like Languages - <a href="4-cl.html#SP3">&#167;3</a>, <a href="4-cl.html#SP3_1">&#167;3.1</a>, <a href="4-cl.html#SP3_2_2_1">&#167;3.2.2.1</a><br/>HTML Formats - <a href="5-hf.html#SP5_14">&#167;5.14</a><br/>Colonies - <a href="6-cln.html#SP8_4">&#167;8.4</a>, <a href="6-cln.html#SP10">&#167;10</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">message</span><span class="plain-syntax">, </span><span class="reserved-syntax">source_line</span><span class="plain-syntax"> *</span><span class="identifier-syntax">sl</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">sl</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../foundation-module/3-em.html#SP5" class="function-link"><span class="function-syntax">Errors::in_text_file_S</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">message</span><span class="plain-syntax">, &amp;(</span><span class="identifier-syntax">sl</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">source</span><span class="plain-syntax">));</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE_TO</span><span class="plain-syntax">(</span><span class="constant-syntax">STDERR</span><span class="plain-syntax">, </span><span class="string-syntax">"%07d %S\n"</span><span class="plain-syntax">, </span><span class="identifier-syntax">sl</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">source</span><span class="plain-syntax">.</span><span class="element-syntax">line_count</span><span class="plain-syntax">, </span><span class="identifier-syntax">sl</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">text</span><span class="plain-syntax">);</span>

View file

@ -329,7 +329,7 @@ from each other then this routine will lock up into an infinite loop.
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="function-syntax">Patterns::find_file_in_subdirectory</span><button class="popup" onclick="togglePopup('usagePopup7')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup7">Usage of <span class="code-font"><span class="function-syntax">Patterns::find_file_in_subdirectory</span></span>:<br/>Assets, Plugins and Colour Schemes - <a href="1-apacs.html#SP4">&#167;4</a>, <a href="1-apacs.html#SP7">&#167;7</a><br/>HTML Formats - <a href="5-hf.html#SP5_13">&#167;5.13</a>, <a href="5-hf.html#SP11">&#167;11</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">weave_pattern</span><span class="plain-syntax"> *</span><span class="identifier-syntax">pattern</span><span class="plain-syntax">,</span>
<span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="function-syntax">Patterns::find_file_in_subdirectory</span><button class="popup" onclick="togglePopup('usagePopup7')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup7">Usage of <span class="code-font"><span class="function-syntax">Patterns::find_file_in_subdirectory</span></span>:<br/>Assets, Plugins and Colour Schemes - <a href="1-apacs.html#SP4">&#167;4</a>, <a href="1-apacs.html#SP7">&#167;7</a><br/>HTML Formats - <a href="5-hf.html#SP5_14">&#167;5.14</a>, <a href="5-hf.html#SP11">&#167;11</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">weave_pattern</span><span class="plain-syntax"> *</span><span class="identifier-syntax">pattern</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">dirname</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">leafname</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">for</span><span class="plain-syntax"> (</span><span class="reserved-syntax">weave_pattern</span><span class="plain-syntax"> *</span><span class="identifier-syntax">wp</span><span class="plain-syntax"> = </span><span class="identifier-syntax">pattern</span><span class="plain-syntax">; </span><span class="identifier-syntax">wp</span><span class="plain-syntax">; </span><span class="identifier-syntax">wp</span><span class="plain-syntax"> = </span><span class="identifier-syntax">wp</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">based_on</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">pathname</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax"> = </span><a href="../foundation-module/3-pth.html#SP4" class="function-link"><span class="function-syntax">Pathnames::down</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">wp</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">pattern_location</span><span class="plain-syntax">, </span><span class="identifier-syntax">dirname</span><span class="plain-syntax">);</span>

View file

@ -255,7 +255,7 @@ and details of any cover-sheet to use.
<p class="commentary firstcommentary"><a id="SP3"></a><b>&#167;3. </b></p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Swarm::ensure_plugin</span><button class="popup" onclick="togglePopup('usagePopup3')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup3">Usage of <span class="code-font"><span class="function-syntax">Swarm::ensure_plugin</span></span>:<br/>HTML Formats - <a href="5-hf.html#SP3">&#167;3</a>, <a href="5-hf.html#SP5_2">&#167;5.2</a>, <a href="5-hf.html#SP5_20">&#167;5.20</a>, <a href="5-hf.html#SP5_26">&#167;5.26</a>, <a href="5-hf.html#SP5_27">&#167;5.27</a>, <a href="5-hf.html#SP5_29">&#167;5.29</a>, <a href="5-hf.html#SP5_34">&#167;5.34</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">weave_order</span><span class="plain-syntax"> *</span><span class="identifier-syntax">wv</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">name</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Swarm::ensure_plugin</span><button class="popup" onclick="togglePopup('usagePopup3')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup3">Usage of <span class="code-font"><span class="function-syntax">Swarm::ensure_plugin</span></span>:<br/>HTML Formats - <a href="5-hf.html#SP3">&#167;3</a>, <a href="5-hf.html#SP5_2">&#167;5.2</a>, <a href="5-hf.html#SP5_21">&#167;5.21</a>, <a href="5-hf.html#SP5_27">&#167;5.27</a>, <a href="5-hf.html#SP5_28">&#167;5.28</a>, <a href="5-hf.html#SP5_30">&#167;5.30</a>, <a href="5-hf.html#SP5_35">&#167;5.35</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">weave_order</span><span class="plain-syntax"> *</span><span class="identifier-syntax">wv</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">name</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_plugin</span><span class="plain-syntax"> *</span><span class="identifier-syntax">existing</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">LOOP_OVER_LINKED_LIST</span><span class="plain-syntax">(</span><span class="identifier-syntax">existing</span><span class="plain-syntax">, </span><span class="reserved-syntax">weave_plugin</span><span class="plain-syntax">, </span><span class="identifier-syntax">wv</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">plugins</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="../foundation-module/4-sm.html#SP19" class="function-link"><span class="function-syntax">Str::eq_insensitive</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">name</span><span class="plain-syntax">, </span><span class="identifier-syntax">existing</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">plugin_name</span><span class="plain-syntax">))</span>
@ -264,7 +264,7 @@ and details of any cover-sheet to use.
<span class="plain-syntax"> </span><span class="identifier-syntax">ADD_TO_LINKED_LIST</span><span class="plain-syntax">(</span><span class="identifier-syntax">wp</span><span class="plain-syntax">, </span><span class="reserved-syntax">weave_plugin</span><span class="plain-syntax">, </span><span class="identifier-syntax">wv</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">plugins</span><span class="plain-syntax">);</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">colour_scheme</span><span class="plain-syntax"> *</span><span class="function-syntax">Swarm::ensure_colour_scheme</span><button class="popup" onclick="togglePopup('usagePopup4')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup4">Usage of <span class="code-font"><span class="function-syntax">Swarm::ensure_colour_scheme</span></span>:<br/>HTML Formats - <a href="5-hf.html#SP3">&#167;3</a>, <a href="5-hf.html#SP5_12_2">&#167;5.12.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">weave_order</span><span class="plain-syntax"> *</span><span class="identifier-syntax">wv</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">name</span><span class="plain-syntax">,</span>
<span class="reserved-syntax">colour_scheme</span><span class="plain-syntax"> *</span><span class="function-syntax">Swarm::ensure_colour_scheme</span><button class="popup" onclick="togglePopup('usagePopup4')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup4">Usage of <span class="code-font"><span class="function-syntax">Swarm::ensure_colour_scheme</span></span>:<br/>HTML Formats - <a href="5-hf.html#SP3">&#167;3</a>, <a href="5-hf.html#SP5_13_2">&#167;5.13.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">weave_order</span><span class="plain-syntax"> *</span><span class="identifier-syntax">wv</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">name</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">pre</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">colour_scheme</span><span class="plain-syntax"> *</span><span class="identifier-syntax">existing</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">LOOP_OVER_LINKED_LIST</span><span class="plain-syntax">(</span><span class="identifier-syntax">existing</span><span class="plain-syntax">, </span><span class="reserved-syntax">colour_scheme</span><span class="plain-syntax">, </span><span class="identifier-syntax">wv</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">colour_schemes</span><span class="plain-syntax">)</span>

View file

@ -204,6 +204,7 @@ some of these fell into disuse in version 2 syntax.
<span class="definition-keyword">enum</span> <span class="constant-syntax">GRAMMAR_INDEX_CMD</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">FIGURE_CMD</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">AUDIO_CMD</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">VIDEO_CMD</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">CAROUSEL_CMD</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">CAROUSEL_ABOVE_CMD</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">CAROUSEL_BELOW_CMD</span>

View file

@ -507,6 +507,14 @@ division in the current section.
<span class="plain-syntax"> </span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">text_operand</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">mr2</span><span class="plain-syntax">.</span><span class="element-syntax">exp</span><span class="plain-syntax">[0]);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">comment_mode</span><span class="plain-syntax"> = </span><span class="constant-syntax">TRUE</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">current_paragraph</span><span class="plain-syntax">) &amp;&amp;</span>
<span class="plain-syntax"> (</span><a href="../foundation-module/4-pm.html#SP10" class="function-link"><span class="function-syntax">Regexp::match</span></a><span class="plain-syntax">(&amp;</span><span class="identifier-syntax">mr2</span><span class="plain-syntax">, </span><span class="identifier-syntax">mr</span><span class="plain-syntax">.</span><span class="element-syntax">exp</span><span class="plain-syntax">[0], </span><span class="identifier-syntax">L</span><span class="string-syntax">"%(video (%c+)%)"</span><span class="plain-syntax">))) {</span>
<span class="plain-syntax"> </span><a href="2-tgs.html#SP4" class="function-link"><span class="function-syntax">Tags::add_by_name</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">owning_paragraph</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"Video"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> = </span><span class="constant-syntax">VIDEO_CMD</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">category</span><span class="plain-syntax"> = </span><span class="constant-syntax">COMMAND_LCAT</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">code_lcat_for_body</span><span class="plain-syntax"> = </span><span class="constant-syntax">COMMENT_BODY_LCAT</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">text_operand</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">mr2</span><span class="plain-syntax">.</span><span class="element-syntax">exp</span><span class="plain-syntax">[0]);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">comment_mode</span><span class="plain-syntax"> = </span><span class="constant-syntax">TRUE</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">current_paragraph</span><span class="plain-syntax">) &amp;&amp;</span>
<span class="plain-syntax"> (</span><a href="../foundation-module/4-pm.html#SP10" class="function-link"><span class="function-syntax">Regexp::match</span></a><span class="plain-syntax">(&amp;</span><span class="identifier-syntax">mr2</span><span class="plain-syntax">, </span><span class="identifier-syntax">mr</span><span class="plain-syntax">.</span><span class="element-syntax">exp</span><span class="plain-syntax">[0], </span><span class="identifier-syntax">L</span><span class="string-syntax">"%(carousel%)"</span><span class="plain-syntax">))) {</span>
<span class="plain-syntax"> </span><a href="2-tgs.html#SP4" class="function-link"><span class="function-syntax">Tags::add_by_name</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">owning_paragraph</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"Carousels"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> = </span><span class="constant-syntax">CAROUSEL_UNCAPTIONED_CMD</span><span class="plain-syntax">;</span>

View file

@ -64,7 +64,7 @@ directly.
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Collater::for_web_and_pattern</span><button class="popup" onclick="togglePopup('usagePopup1')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup1">Usage of <span class="code-font"><span class="function-syntax">Collater::for_web_and_pattern</span></span>:<br/>Assets, Plugins and Colour Schemes - <a href="1-apacs.html#SP12_4">&#167;12.4</a><br/>HTML Formats - <a href="5-hf.html#SP5_13">&#167;5.13</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">web</span><span class="plain-syntax"> *</span><span class="identifier-syntax">W</span><span class="plain-syntax">,</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Collater::for_web_and_pattern</span><button class="popup" onclick="togglePopup('usagePopup1')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup1">Usage of <span class="code-font"><span class="function-syntax">Collater::for_web_and_pattern</span></span>:<br/>Assets, Plugins and Colour Schemes - <a href="1-apacs.html#SP12_4">&#167;12.4</a><br/>HTML Formats - <a href="5-hf.html#SP5_14">&#167;5.14</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">web</span><span class="plain-syntax"> *</span><span class="identifier-syntax">W</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_pattern</span><span class="plain-syntax"> *</span><span class="identifier-syntax">pattern</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">F</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">into</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="3-tc.html#SP1" class="function-link"><span class="function-syntax">Collater::collate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">W</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">""</span><span class="plain-syntax">, </span><span class="identifier-syntax">F</span><span class="plain-syntax">, </span><span class="identifier-syntax">pattern</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">into</span><span class="plain-syntax">);</span>
<span class="plain-syntax">}</span>

View file

@ -379,12 +379,13 @@ at us; but we don't weave them into the output, that's for sure.
<span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP11" class="function-link"><span class="function-syntax">Trees::make_child</span></a><span class="plain-syntax">(</span><a href="5-wt.html#SP8" class="function-link"><span class="function-syntax">WeaveTree::grammar_index</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">), </span><span class="identifier-syntax">state</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">ap</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">FIGURE_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_1" class="named-paragraph-link"><span class="named-paragraph">Weave a figure</span><span class="named-paragraph-number">2.7.2.4.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">AUDIO_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_2" class="named-paragraph-link"><span class="named-paragraph">Weave an audio clip</span><span class="named-paragraph-number">2.7.2.4.2</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">EMBED_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_3" class="named-paragraph-link"><span class="named-paragraph">Weave an embed</span><span class="named-paragraph-number">2.7.2.4.3</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">CAROUSEL_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_4" class="named-paragraph-link"><span class="named-paragraph">Weave a carousel</span><span class="named-paragraph-number">2.7.2.4.4</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">CAROUSEL_ABOVE_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_4" class="named-paragraph-link"><span class="named-paragraph">Weave a carousel</span><span class="named-paragraph-number">2.7.2.4.4</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">CAROUSEL_BELOW_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_4" class="named-paragraph-link"><span class="named-paragraph">Weave a carousel</span><span class="named-paragraph-number">2.7.2.4.4</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">CAROUSEL_UNCAPTIONED_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_4" class="named-paragraph-link"><span class="named-paragraph">Weave a carousel</span><span class="named-paragraph-number">2.7.2.4.4</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">CAROUSEL_END_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_5" class="named-paragraph-link"><span class="named-paragraph">Weave a carousel end</span><span class="named-paragraph-number">2.7.2.4.5</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">VIDEO_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_3" class="named-paragraph-link"><span class="named-paragraph">Weave a video clip</span><span class="named-paragraph-number">2.7.2.4.3</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">EMBED_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_4" class="named-paragraph-link"><span class="named-paragraph">Weave an embed</span><span class="named-paragraph-number">2.7.2.4.4</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">CAROUSEL_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_5" class="named-paragraph-link"><span class="named-paragraph">Weave a carousel</span><span class="named-paragraph-number">2.7.2.4.5</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">CAROUSEL_ABOVE_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_5" class="named-paragraph-link"><span class="named-paragraph">Weave a carousel</span><span class="named-paragraph-number">2.7.2.4.5</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">CAROUSEL_BELOW_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_5" class="named-paragraph-link"><span class="named-paragraph">Weave a carousel</span><span class="named-paragraph-number">2.7.2.4.5</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">CAROUSEL_UNCAPTIONED_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_5" class="named-paragraph-link"><span class="named-paragraph">Weave a carousel</span><span class="named-paragraph-number">2.7.2.4.5</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">command_code</span><span class="plain-syntax"> == </span><span class="constant-syntax">CAROUSEL_END_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="3-tw.html#SP2_7_2_4_6" class="named-paragraph-link"><span class="named-paragraph">Weave a carousel end</span><span class="named-paragraph-number">2.7.2.4.6</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="comment-syntax"> Otherwise assume it was a tangler command, and ignore it here</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">continue</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> }</span>
@ -408,7 +409,16 @@ at us; but we don't weave them into the output, that's for sure.
<span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP11" class="function-link"><span class="function-syntax">Trees::make_child</span></a><span class="plain-syntax">(</span><a href="5-wt.html#SP2" class="function-link"><span class="function-syntax">WeaveTree::audio</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">figname</span><span class="plain-syntax">, </span><span class="identifier-syntax">w</span><span class="plain-syntax">), </span><span class="identifier-syntax">state</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">ap</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="3-tw.html#SP2_7_2_4">&#167;2.7.2.4</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_7_2_4_3"></a><b>&#167;2.7.2.4.3. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Weave an embed</span><span class="named-paragraph-number">2.7.2.4.3</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_7_2_4_3"></a><b>&#167;2.7.2.4.3. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Weave a video clip</span><span class="named-paragraph-number">2.7.2.4.3</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">w</span><span class="plain-syntax">, </span><span class="identifier-syntax">h</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">figname</span><span class="plain-syntax"> = </span><a href="3-tw.html#SP6" class="function-link"><span class="function-syntax">Weaver::dimensions</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">text_operand</span><span class="plain-syntax">, &amp;</span><span class="identifier-syntax">w</span><span class="plain-syntax">, &amp;</span><span class="identifier-syntax">h</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP11" class="function-link"><span class="function-syntax">Trees::make_child</span></a><span class="plain-syntax">(</span><a href="5-wt.html#SP2" class="function-link"><span class="function-syntax">WeaveTree::video</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">figname</span><span class="plain-syntax">, </span><span class="identifier-syntax">w</span><span class="plain-syntax">, </span><span class="identifier-syntax">h</span><span class="plain-syntax">), </span><span class="identifier-syntax">state</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">ap</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="3-tw.html#SP2_7_2_4">&#167;2.7.2.4</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_7_2_4_4"></a><b>&#167;2.7.2.4.4. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Weave an embed</span><span class="named-paragraph-number">2.7.2.4.4</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -417,7 +427,7 @@ at us; but we don't weave them into the output, that's for sure.
<span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP11" class="function-link"><span class="function-syntax">Trees::make_child</span></a><span class="plain-syntax">(</span><a href="5-wt.html#SP2" class="function-link"><span class="function-syntax">WeaveTree::embed</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">text_operand</span><span class="plain-syntax">, </span><span class="identifier-syntax">ID</span><span class="plain-syntax">, </span><span class="identifier-syntax">w</span><span class="plain-syntax">, </span><span class="identifier-syntax">h</span><span class="plain-syntax">), </span><span class="identifier-syntax">state</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">ap</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="3-tw.html#SP2_7_2_4">&#167;2.7.2.4</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_7_2_4_4"></a><b>&#167;2.7.2.4.4. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Weave a carousel</span><span class="named-paragraph-number">2.7.2.4.4</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_7_2_4_5"></a><b>&#167;2.7.2.4.5. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Weave a carousel</span><span class="named-paragraph-number">2.7.2.4.5</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -427,7 +437,7 @@ at us; but we don't weave them into the output, that's for sure.
<span class="plain-syntax"> </span><span class="identifier-syntax">state</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">carousel_node</span><span class="plain-syntax"> = </span><span class="identifier-syntax">C</span><span class="plain-syntax">;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="3-tw.html#SP2_7_2_4">&#167;2.7.2.4</a> (four times).</li></ul>
<p class="commentary firstcommentary"><a id="SP2_7_2_4_5"></a><b>&#167;2.7.2.4.5. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Weave a carousel end</span><span class="named-paragraph-number">2.7.2.4.5</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_7_2_4_6"></a><b>&#167;2.7.2.4.6. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Weave a carousel end</span><span class="named-paragraph-number">2.7.2.4.6</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -965,7 +975,7 @@ structure usage, or how <span class="extract"><span class="extract-syntax">CWEB<
<pre class="definitions code-font"><span class="definition-keyword">define</span> <span class="constant-syntax">POINTS_PER_CM</span><span class="plain-syntax"> </span><span class="constant-syntax">72</span>
</pre>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="function-syntax">Weaver::dimensions</span><button class="popup" onclick="togglePopup('usagePopup9')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup9">Usage of <span class="code-font"><span class="function-syntax">Weaver::dimensions</span></span>:<br/><a href="3-tw.html#SP2_7_2_4_1">&#167;2.7.2.4.1</a>, <a href="3-tw.html#SP2_7_2_4_2">&#167;2.7.2.4.2</a>, <a href="3-tw.html#SP2_7_2_4_3">&#167;2.7.2.4.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">item</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> *</span><span class="identifier-syntax">w</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> *</span><span class="identifier-syntax">h</span><span class="plain-syntax">, </span><span class="reserved-syntax">source_line</span><span class="plain-syntax"> *</span><span class="identifier-syntax">L</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="function-syntax">Weaver::dimensions</span><button class="popup" onclick="togglePopup('usagePopup9')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup9">Usage of <span class="code-font"><span class="function-syntax">Weaver::dimensions</span></span>:<br/><a href="3-tw.html#SP2_7_2_4_1">&#167;2.7.2.4.1</a>, <a href="3-tw.html#SP2_7_2_4_2">&#167;2.7.2.4.2</a>, <a href="3-tw.html#SP2_7_2_4_3">&#167;2.7.2.4.3</a>, <a href="3-tw.html#SP2_7_2_4_4">&#167;2.7.2.4.4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">item</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> *</span><span class="identifier-syntax">w</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> *</span><span class="identifier-syntax">h</span><span class="plain-syntax">, </span><span class="reserved-syntax">source_line</span><span class="plain-syntax"> *</span><span class="identifier-syntax">L</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">sv</span><span class="plain-syntax"> = </span><span class="identifier-syntax">L</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">owning_section</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">md</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">using_syntax</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> *</span><span class="identifier-syntax">w</span><span class="plain-syntax"> = -1; *</span><span class="identifier-syntax">h</span><span class="plain-syntax"> = -1;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">use</span><span class="plain-syntax"> = </span><span class="identifier-syntax">item</span><span class="plain-syntax">;</span>

View file

@ -275,7 +275,7 @@ function's definition appears".
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Functions::used_elsewhere</span><button class="popup" onclick="togglePopup('usagePopup4')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup4">Usage of <span class="code-font"><span class="function-syntax">Functions::used_elsewhere</span></span>:<br/>HTML Formats - <a href="5-hf.html#SP5_29">&#167;5.29</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">language_function</span><span class="plain-syntax"> *</span><span class="identifier-syntax">fn</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Functions::used_elsewhere</span><button class="popup" onclick="togglePopup('usagePopup4')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup4">Usage of <span class="code-font"><span class="function-syntax">Functions::used_elsewhere</span></span>:<br/>HTML Formats - <a href="5-hf.html#SP5_30">&#167;5.30</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">language_function</span><span class="plain-syntax"> *</span><span class="identifier-syntax">fn</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax"> = </span><span class="identifier-syntax">fn</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">function_header_at</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">owning_paragraph</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">hash_table_entry</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hte</span><span class="plain-syntax"> =</span>
<span class="plain-syntax"> </span><a href="3-ta.html#SP9" class="function-link"><span class="function-syntax">Analyser::find_hash_entry_for_section</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">fn</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">function_header_at</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">owning_section</span><span class="plain-syntax">,</span>

View file

@ -96,31 +96,32 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_endnote_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_16" class="named-paragraph-link"><span class="named-paragraph">Render endnote</span><span class="named-paragraph-number">2.16</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_figure_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_17" class="named-paragraph-link"><span class="named-paragraph">Render figure</span><span class="named-paragraph-number">2.17</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_audio_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_18" class="named-paragraph-link"><span class="named-paragraph">Render audio clip</span><span class="named-paragraph-number">2.18</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_material_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_19" class="named-paragraph-link"><span class="named-paragraph">Render material</span><span class="named-paragraph-number">2.19</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_embed_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_20" class="named-paragraph-link"><span class="named-paragraph">Render embed</span><span class="named-paragraph-number">2.20</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_pmac_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_21" class="named-paragraph-link"><span class="named-paragraph">Render pmac</span><span class="named-paragraph-number">2.21</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_vskip_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_22" class="named-paragraph-link"><span class="named-paragraph">Render vskip</span><span class="named-paragraph-number">2.22</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_chapter_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_23" class="named-paragraph-link"><span class="named-paragraph">Render chapter</span><span class="named-paragraph-number">2.23</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_section_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_24" class="named-paragraph-link"><span class="named-paragraph">Render section</span><span class="named-paragraph-number">2.24</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_code_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_25" class="named-paragraph-link"><span class="named-paragraph">Render code line</span><span class="named-paragraph-number">2.25</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_function_usage_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_26" class="named-paragraph-link"><span class="named-paragraph">Render function usage</span><span class="named-paragraph-number">2.26</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_commentary_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_27" class="named-paragraph-link"><span class="named-paragraph">Render commentary</span><span class="named-paragraph-number">2.27</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_carousel_slide_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_28" class="named-paragraph-link"><span class="named-paragraph">Render carousel slide</span><span class="named-paragraph-number">2.28</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_toc_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_29" class="named-paragraph-link"><span class="named-paragraph">Render toc</span><span class="named-paragraph-number">2.29</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_toc_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_30" class="named-paragraph-link"><span class="named-paragraph">Render toc line</span><span class="named-paragraph-number">2.30</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_chapter_title_page_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_31" class="named-paragraph-link"><span class="named-paragraph">Render weave_chapter_title_page_node</span><span class="named-paragraph-number">2.31</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_defn_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_32" class="named-paragraph-link"><span class="named-paragraph">Render defn</span><span class="named-paragraph-number">2.32</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_source_code_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_33" class="named-paragraph-link"><span class="named-paragraph">Render source code</span><span class="named-paragraph-number">2.33</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_url_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_34" class="named-paragraph-link"><span class="named-paragraph">Render URL</span><span class="named-paragraph-number">2.34</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_footnote_cue_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_35" class="named-paragraph-link"><span class="named-paragraph">Render footnote cue</span><span class="named-paragraph-number">2.35</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_begin_footnote_text_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_36" class="named-paragraph-link"><span class="named-paragraph">Render footnote text</span><span class="named-paragraph-number">2.36</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_display_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_37" class="named-paragraph-link"><span class="named-paragraph">Render display line</span><span class="named-paragraph-number">2.37</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_function_defn_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_38" class="named-paragraph-link"><span class="named-paragraph">Render function defn</span><span class="named-paragraph-number">2.38</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_item_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_39" class="named-paragraph-link"><span class="named-paragraph">Render item</span><span class="named-paragraph-number">2.39</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_grammar_index_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_40" class="named-paragraph-link"><span class="named-paragraph">Render grammar index</span><span class="named-paragraph-number">2.40</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_inline_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_41" class="named-paragraph-link"><span class="named-paragraph">Render inline</span><span class="named-paragraph-number">2.41</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_locale_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_42" class="named-paragraph-link"><span class="named-paragraph">Render locale</span><span class="named-paragraph-number">2.42</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_maths_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_43" class="named-paragraph-link"><span class="named-paragraph">Render maths</span><span class="named-paragraph-number">2.43</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_video_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_19" class="named-paragraph-link"><span class="named-paragraph">Render video clip</span><span class="named-paragraph-number">2.19</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_material_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_20" class="named-paragraph-link"><span class="named-paragraph">Render material</span><span class="named-paragraph-number">2.20</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_embed_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_21" class="named-paragraph-link"><span class="named-paragraph">Render embed</span><span class="named-paragraph-number">2.21</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_pmac_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_22" class="named-paragraph-link"><span class="named-paragraph">Render pmac</span><span class="named-paragraph-number">2.22</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_vskip_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_23" class="named-paragraph-link"><span class="named-paragraph">Render vskip</span><span class="named-paragraph-number">2.23</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_chapter_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_24" class="named-paragraph-link"><span class="named-paragraph">Render chapter</span><span class="named-paragraph-number">2.24</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_section_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_25" class="named-paragraph-link"><span class="named-paragraph">Render section</span><span class="named-paragraph-number">2.25</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_code_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_26" class="named-paragraph-link"><span class="named-paragraph">Render code line</span><span class="named-paragraph-number">2.26</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_function_usage_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_27" class="named-paragraph-link"><span class="named-paragraph">Render function usage</span><span class="named-paragraph-number">2.27</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_commentary_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_28" class="named-paragraph-link"><span class="named-paragraph">Render commentary</span><span class="named-paragraph-number">2.28</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_carousel_slide_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_29" class="named-paragraph-link"><span class="named-paragraph">Render carousel slide</span><span class="named-paragraph-number">2.29</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_toc_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_30" class="named-paragraph-link"><span class="named-paragraph">Render toc</span><span class="named-paragraph-number">2.30</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_toc_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_31" class="named-paragraph-link"><span class="named-paragraph">Render toc line</span><span class="named-paragraph-number">2.31</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_chapter_title_page_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_32" class="named-paragraph-link"><span class="named-paragraph">Render weave_chapter_title_page_node</span><span class="named-paragraph-number">2.32</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_defn_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_33" class="named-paragraph-link"><span class="named-paragraph">Render defn</span><span class="named-paragraph-number">2.33</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_source_code_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_34" class="named-paragraph-link"><span class="named-paragraph">Render source code</span><span class="named-paragraph-number">2.34</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_url_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_35" class="named-paragraph-link"><span class="named-paragraph">Render URL</span><span class="named-paragraph-number">2.35</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_footnote_cue_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_36" class="named-paragraph-link"><span class="named-paragraph">Render footnote cue</span><span class="named-paragraph-number">2.36</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_begin_footnote_text_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_37" class="named-paragraph-link"><span class="named-paragraph">Render footnote text</span><span class="named-paragraph-number">2.37</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_display_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_38" class="named-paragraph-link"><span class="named-paragraph">Render display line</span><span class="named-paragraph-number">2.38</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_function_defn_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_39" class="named-paragraph-link"><span class="named-paragraph">Render function defn</span><span class="named-paragraph-number">2.39</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_item_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_40" class="named-paragraph-link"><span class="named-paragraph">Render item</span><span class="named-paragraph-number">2.40</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_grammar_index_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_41" class="named-paragraph-link"><span class="named-paragraph">Render grammar index</span><span class="named-paragraph-number">2.41</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_inline_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_42" class="named-paragraph-link"><span class="named-paragraph">Render inline</span><span class="named-paragraph-number">2.42</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_locale_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_43" class="named-paragraph-link"><span class="named-paragraph">Render locale</span><span class="named-paragraph-number">2.43</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_maths_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-df.html#SP2_44" class="named-paragraph-link"><span class="named-paragraph">Render maths</span><span class="named-paragraph-number">2.44</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"Unknown node"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">TRUE</span><span class="plain-syntax">;</span>
@ -267,7 +268,15 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" &lt;%S&gt; %d"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">audio_name</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">w</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_19"></a><b>&#167;2.19. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render material</span><span class="named-paragraph-number">2.19</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_19"></a><b>&#167;2.19. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render video clip</span><span class="named-paragraph-number">2.19</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_video_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">RETRIEVE_POINTER_weave_video_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">content</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" &lt;%S&gt; %d"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">video_name</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">w</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_20"></a><b>&#167;2.20. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render material</span><span class="named-paragraph-number">2.20</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -278,7 +287,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">plainly</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" (plainly)"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_20"></a><b>&#167;2.20. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render embed</span><span class="named-paragraph-number">2.20</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_21"></a><b>&#167;2.21. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render embed</span><span class="named-paragraph-number">2.21</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -286,7 +295,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" service &lt;%S&gt; ID &lt;%S&gt; %d by %d"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">service</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">ID</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">w</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">h</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_21"></a><b>&#167;2.21. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render pmac</span><span class="named-paragraph-number">2.21</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_22"></a><b>&#167;2.22. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render pmac</span><span class="named-paragraph-number">2.22</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -295,7 +304,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">defn</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" (definition)"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_22"></a><b>&#167;2.22. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render vskip</span><span class="named-paragraph-number">2.22</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_23"></a><b>&#167;2.23. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render vskip</span><span class="named-paragraph-number">2.23</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -310,7 +319,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> ;</span>
</pre>
<ul class="endnotetexts"><li>This code is never used.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_23"></a><b>&#167;2.23. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render chapter</span><span class="named-paragraph-number">2.23</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_24"></a><b>&#167;2.24. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render chapter</span><span class="named-paragraph-number">2.24</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -318,7 +327,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" &lt;%S&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">chap</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">md</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">ch_title</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_24"></a><b>&#167;2.24. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render section</span><span class="named-paragraph-number">2.24</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_25"></a><b>&#167;2.25. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render section</span><span class="named-paragraph-number">2.25</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -326,14 +335,14 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" &lt;%S&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">sect</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">md</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">sect_title</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_25"></a><b>&#167;2.25. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render code line</span><span class="named-paragraph-number">2.25</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_26"></a><b>&#167;2.26. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render code line</span><span class="named-paragraph-number">2.26</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> ;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_26"></a><b>&#167;2.26. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render function usage</span><span class="named-paragraph-number">2.26</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_27"></a><b>&#167;2.27. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render function usage</span><span class="named-paragraph-number">2.27</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -341,7 +350,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" &lt;%S&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">fn</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">function_name</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_27"></a><b>&#167;2.27. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render commentary</span><span class="named-paragraph-number">2.27</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_28"></a><b>&#167;2.28. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render commentary</span><span class="named-paragraph-number">2.28</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -350,7 +359,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">in_code</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" (code)"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_28"></a><b>&#167;2.28. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render carousel slide</span><span class="named-paragraph-number">2.28</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_29"></a><b>&#167;2.29. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render carousel slide</span><span class="named-paragraph-number">2.29</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -358,7 +367,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" caption &lt;%S&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">caption</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_29"></a><b>&#167;2.29. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render toc</span><span class="named-paragraph-number">2.29</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_30"></a><b>&#167;2.30. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render toc</span><span class="named-paragraph-number">2.30</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -366,7 +375,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" - &lt;%S&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">text1</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_30"></a><b>&#167;2.30. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render toc line</span><span class="named-paragraph-number">2.30</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_31"></a><b>&#167;2.31. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render toc line</span><span class="named-paragraph-number">2.31</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -375,7 +384,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">para</span><span class="plain-syntax">) </span><a href="5-df.html#SP3" class="function-link"><span class="function-syntax">Debugging::show_para</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">para</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_31"></a><b>&#167;2.31. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render weave_chapter_title_page_node</span><span class="named-paragraph-number">2.31</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_32"></a><b>&#167;2.32. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render weave_chapter_title_page_node</span><span class="named-paragraph-number">2.32</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -383,7 +392,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" - something %d"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">allocation_id</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_32"></a><b>&#167;2.32. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render defn</span><span class="named-paragraph-number">2.32</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_33"></a><b>&#167;2.33. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render defn</span><span class="named-paragraph-number">2.33</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -391,7 +400,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" &lt;%S&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">keyword</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_33"></a><b>&#167;2.33. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render source code</span><span class="named-paragraph-number">2.33</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_34"></a><b>&#167;2.34. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render source code</span><span class="named-paragraph-number">2.34</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -402,7 +411,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" _%S_"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">colouring</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_34"></a><b>&#167;2.34. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render URL</span><span class="named-paragraph-number">2.34</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_35"></a><b>&#167;2.35. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render URL</span><span class="named-paragraph-number">2.35</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -410,7 +419,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" content &lt;%S&gt; url &lt;%S&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">content</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">url</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_35"></a><b>&#167;2.35. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render footnote cue</span><span class="named-paragraph-number">2.35</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_36"></a><b>&#167;2.36. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render footnote cue</span><span class="named-paragraph-number">2.36</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -418,7 +427,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" [%S]"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">cue_text</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_36"></a><b>&#167;2.36. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render footnote text</span><span class="named-paragraph-number">2.36</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_37"></a><b>&#167;2.37. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render footnote text</span><span class="named-paragraph-number">2.37</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -426,7 +435,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" [%S]"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">cue_text</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_37"></a><b>&#167;2.37. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render display line</span><span class="named-paragraph-number">2.37</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_38"></a><b>&#167;2.38. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render display line</span><span class="named-paragraph-number">2.38</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -434,7 +443,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" &lt;%S&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">text</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_38"></a><b>&#167;2.38. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render function defn</span><span class="named-paragraph-number">2.38</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_39"></a><b>&#167;2.39. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render function defn</span><span class="named-paragraph-number">2.39</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -442,7 +451,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" &lt;%S&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">fn</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">function_name</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_39"></a><b>&#167;2.39. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render item</span><span class="named-paragraph-number">2.39</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_40"></a><b>&#167;2.40. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render item</span><span class="named-paragraph-number">2.40</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -450,21 +459,21 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" depth %d label &lt;%S&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">depth</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">label</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_40"></a><b>&#167;2.40. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render grammar index</span><span class="named-paragraph-number">2.40</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_41"></a><b>&#167;2.41. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render grammar index</span><span class="named-paragraph-number">2.41</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> ;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_41"></a><b>&#167;2.41. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render inline</span><span class="named-paragraph-number">2.41</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_42"></a><b>&#167;2.42. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render inline</span><span class="named-paragraph-number">2.42</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> ;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_42"></a><b>&#167;2.42. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render locale</span><span class="named-paragraph-number">2.42</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_43"></a><b>&#167;2.43. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render locale</span><span class="named-paragraph-number">2.43</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -476,7 +485,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> }</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-df.html#SP2">&#167;2</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP2_43"></a><b>&#167;2.43. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render maths</span><span class="named-paragraph-number">2.43</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP2_44"></a><b>&#167;2.44. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render maths</span><span class="named-paragraph-number">2.44</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -488,7 +497,7 @@ function togglePopup(material_id) {
<p class="commentary firstcommentary"><a id="SP3"></a><b>&#167;3. </b></p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Debugging::show_text</span><button class="popup" onclick="togglePopup('usagePopup3')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup3">Usage of <span class="code-font"><span class="function-syntax">Debugging::show_text</span></span>:<br/><a href="5-df.html#SP2_5">&#167;2.5</a>, <a href="5-df.html#SP2_27">&#167;2.27</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">limit</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Debugging::show_text</span><button class="popup" onclick="togglePopup('usagePopup3')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup3">Usage of <span class="code-font"><span class="function-syntax">Debugging::show_text</span></span>:<br/><a href="5-df.html#SP2_5">&#167;2.5</a>, <a href="5-df.html#SP2_28">&#167;2.28</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">limit</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" &lt;"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">for</span><span class="plain-syntax"> (</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax">=0; (</span><span class="identifier-syntax">i</span><span class="plain-syntax">&lt;</span><span class="identifier-syntax">limit</span><span class="plain-syntax">) &amp;&amp; (</span><span class="identifier-syntax">i</span><span class="plain-syntax">&lt;</span><a href="../foundation-module/4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">text</span><span class="plain-syntax">)); </span><span class="identifier-syntax">i</span><span class="plain-syntax">++)</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="../foundation-module/4-sm.html#SP13" class="function-link"><span class="function-syntax">Str::get_at</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">text</span><span class="plain-syntax">, </span><span class="identifier-syntax">i</span><span class="plain-syntax">) == </span><span class="character-syntax">'\n'</span><span class="plain-syntax">)</span>
@ -499,12 +508,12 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="../foundation-module/4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">text</span><span class="plain-syntax">) &gt; </span><span class="identifier-syntax">limit</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" ... continues to %d chars"</span><span class="plain-syntax">, </span><a href="../foundation-module/4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">text</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Debugging::show_para</span><button class="popup" onclick="togglePopup('usagePopup4')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup4">Usage of <span class="code-font"><span class="function-syntax">Debugging::show_para</span></span>:<br/><a href="5-df.html#SP2_15">&#167;2.15</a>, <a href="5-df.html#SP2_30">&#167;2.30</a>, <a href="5-df.html#SP2_42">&#167;2.42</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Debugging::show_para</span><button class="popup" onclick="togglePopup('usagePopup4')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup4">Usage of <span class="code-font"><span class="function-syntax">Debugging::show_para</span></span>:<br/><a href="5-df.html#SP2_15">&#167;2.15</a>, <a href="5-df.html#SP2_31">&#167;2.31</a>, <a href="5-df.html#SP2_43">&#167;2.43</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" P%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">P</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">paragraph_number</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="../foundation-module/4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">P</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">heading_text</span><span class="plain-syntax">) &gt; </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"'%S'"</span><span class="plain-syntax">, </span><span class="identifier-syntax">P</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">heading_text</span><span class="plain-syntax">);</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Debugging::show_mat</span><button class="popup" onclick="togglePopup('usagePopup5')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup5">Usage of <span class="code-font"><span class="function-syntax">Debugging::show_mat</span></span>:<br/><a href="5-df.html#SP2_19">&#167;2.19</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">m</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Debugging::show_mat</span><button class="popup" onclick="togglePopup('usagePopup5')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup5">Usage of <span class="code-font"><span class="function-syntax">Debugging::show_mat</span></span>:<br/><a href="5-df.html#SP2_20">&#167;2.20</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">m</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">switch</span><span class="plain-syntax"> (</span><span class="identifier-syntax">m</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="identifier-syntax">COMMENTARY_MATERIAL:</span><span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"discussion"</span><span class="plain-syntax">); </span><span class="reserved-syntax">break</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="identifier-syntax">MACRO_MATERIAL:</span><span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"paragraph macro"</span><span class="plain-syntax">); </span><span class="reserved-syntax">break</span><span class="plain-syntax">;</span>

View file

@ -141,7 +141,7 @@ ePub respectively:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::render_visit</span><button class="popup" onclick="togglePopup('usagePopup5')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup5">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::render_visit</span></span>:<br/><a href="5-hf.html#SP4">&#167;4</a>, <a href="5-hf.html#SP5_12_1">&#167;5.12.1</a>, <a href="5-hf.html#SP5_12_1_1">&#167;5.12.1.1</a>, <a href="5-hf.html#SP5_21">&#167;5.21</a>, <a href="5-hf.html#SP5_9_1">&#167;5.9.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">N</span><span class="plain-syntax">, </span><span class="reserved-syntax">void</span><span class="plain-syntax"> *</span><span class="identifier-syntax">state</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">L</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::render_visit</span><button class="popup" onclick="togglePopup('usagePopup5')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup5">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::render_visit</span></span>:<br/><a href="5-hf.html#SP4">&#167;4</a>, <a href="5-hf.html#SP5_13_1">&#167;5.13.1</a>, <a href="5-hf.html#SP5_13_1_1">&#167;5.13.1.1</a>, <a href="5-hf.html#SP5_22">&#167;5.22</a>, <a href="5-hf.html#SP5_9_1">&#167;5.9.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">N</span><span class="plain-syntax">, </span><span class="reserved-syntax">void</span><span class="plain-syntax"> *</span><span class="identifier-syntax">state</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">L</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">HTML_render_state</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hrs</span><span class="plain-syntax"> = (</span><span class="reserved-syntax">HTML_render_state</span><span class="plain-syntax"> *) </span><span class="identifier-syntax">state</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax"> = </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">OUT</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_document_node_type</span><span class="plain-syntax">) ||</span>
@ -151,11 +151,11 @@ ePub respectively:
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_pagebreak_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_chapter_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_chapter_title_page_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_grammar_index_node_type</span><span class="plain-syntax">)) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_36" class="named-paragraph-link"><span class="named-paragraph">Render nothing</span><span class="named-paragraph-number">5.36</span></a></span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_grammar_index_node_type</span><span class="plain-syntax">)) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_37" class="named-paragraph-link"><span class="named-paragraph">Render nothing</span><span class="named-paragraph-number">5.37</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_head_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_1" class="named-paragraph-link"><span class="named-paragraph">Render head</span><span class="named-paragraph-number">5.1</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_tail_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_4" class="named-paragraph-link"><span class="named-paragraph">Render tail</span><span class="named-paragraph-number">5.4</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_verbatim_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_31" class="named-paragraph-link"><span class="named-paragraph">Render verbatim</span><span class="named-paragraph-number">5.31</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_verbatim_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_32" class="named-paragraph-link"><span class="named-paragraph">Render verbatim</span><span class="named-paragraph-number">5.32</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_section_header_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_2" class="named-paragraph-link"><span class="named-paragraph">Render header</span><span class="named-paragraph-number">5.2</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_section_footer_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_3" class="named-paragraph-link"><span class="named-paragraph">Render footer</span><span class="named-paragraph-number">5.3</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_section_purpose_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_5" class="named-paragraph-link"><span class="named-paragraph">Render purpose</span><span class="named-paragraph-number">5.5</span></a></span>
@ -165,29 +165,30 @@ ePub respectively:
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_endnote_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_9" class="named-paragraph-link"><span class="named-paragraph">Render endnote</span><span class="named-paragraph-number">5.9</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_figure_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_10" class="named-paragraph-link"><span class="named-paragraph">Render figure</span><span class="named-paragraph-number">5.10</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_audio_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_11" class="named-paragraph-link"><span class="named-paragraph">Render audio clip</span><span class="named-paragraph-number">5.11</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_material_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_12" class="named-paragraph-link"><span class="named-paragraph">Render material</span><span class="named-paragraph-number">5.12</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_embed_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_13" class="named-paragraph-link"><span class="named-paragraph">Render embed</span><span class="named-paragraph-number">5.13</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_pmac_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_14" class="named-paragraph-link"><span class="named-paragraph">Render pmac</span><span class="named-paragraph-number">5.14</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_vskip_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_15" class="named-paragraph-link"><span class="named-paragraph">Render vskip</span><span class="named-paragraph-number">5.15</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_section_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_16" class="named-paragraph-link"><span class="named-paragraph">Render section</span><span class="named-paragraph-number">5.16</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_code_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_17" class="named-paragraph-link"><span class="named-paragraph">Render code line</span><span class="named-paragraph-number">5.17</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_function_usage_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_18" class="named-paragraph-link"><span class="named-paragraph">Render function usage</span><span class="named-paragraph-number">5.18</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_commentary_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_19" class="named-paragraph-link"><span class="named-paragraph">Render commentary</span><span class="named-paragraph-number">5.19</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_carousel_slide_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_20" class="named-paragraph-link"><span class="named-paragraph">Render carousel slide</span><span class="named-paragraph-number">5.20</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_toc_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_21" class="named-paragraph-link"><span class="named-paragraph">Render toc</span><span class="named-paragraph-number">5.21</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_toc_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_22" class="named-paragraph-link"><span class="named-paragraph">Render toc line</span><span class="named-paragraph-number">5.22</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_defn_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_23" class="named-paragraph-link"><span class="named-paragraph">Render defn</span><span class="named-paragraph-number">5.23</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_source_code_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_24" class="named-paragraph-link"><span class="named-paragraph">Render source code</span><span class="named-paragraph-number">5.24</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_url_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_25" class="named-paragraph-link"><span class="named-paragraph">Render URL</span><span class="named-paragraph-number">5.25</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_footnote_cue_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_26" class="named-paragraph-link"><span class="named-paragraph">Render footnote cue</span><span class="named-paragraph-number">5.26</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_begin_footnote_text_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_27" class="named-paragraph-link"><span class="named-paragraph">Render footnote</span><span class="named-paragraph-number">5.27</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_display_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_28" class="named-paragraph-link"><span class="named-paragraph">Render display line</span><span class="named-paragraph-number">5.28</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_function_defn_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_29" class="named-paragraph-link"><span class="named-paragraph">Render function defn</span><span class="named-paragraph-number">5.29</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_item_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_30" class="named-paragraph-link"><span class="named-paragraph">Render item</span><span class="named-paragraph-number">5.30</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_inline_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_32" class="named-paragraph-link"><span class="named-paragraph">Render inline</span><span class="named-paragraph-number">5.32</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_locale_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_33" class="named-paragraph-link"><span class="named-paragraph">Render locale</span><span class="named-paragraph-number">5.33</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_maths_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_34" class="named-paragraph-link"><span class="named-paragraph">Render maths</span><span class="named-paragraph-number">5.34</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_linebreak_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_35" class="named-paragraph-link"><span class="named-paragraph">Render linebreak</span><span class="named-paragraph-number">5.35</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_video_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_12" class="named-paragraph-link"><span class="named-paragraph">Render video clip</span><span class="named-paragraph-number">5.12</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_material_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_13" class="named-paragraph-link"><span class="named-paragraph">Render material</span><span class="named-paragraph-number">5.13</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_embed_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_14" class="named-paragraph-link"><span class="named-paragraph">Render embed</span><span class="named-paragraph-number">5.14</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_pmac_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_15" class="named-paragraph-link"><span class="named-paragraph">Render pmac</span><span class="named-paragraph-number">5.15</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_vskip_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_16" class="named-paragraph-link"><span class="named-paragraph">Render vskip</span><span class="named-paragraph-number">5.16</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_section_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_17" class="named-paragraph-link"><span class="named-paragraph">Render section</span><span class="named-paragraph-number">5.17</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_code_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_18" class="named-paragraph-link"><span class="named-paragraph">Render code line</span><span class="named-paragraph-number">5.18</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_function_usage_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_19" class="named-paragraph-link"><span class="named-paragraph">Render function usage</span><span class="named-paragraph-number">5.19</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_commentary_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_20" class="named-paragraph-link"><span class="named-paragraph">Render commentary</span><span class="named-paragraph-number">5.20</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_carousel_slide_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_21" class="named-paragraph-link"><span class="named-paragraph">Render carousel slide</span><span class="named-paragraph-number">5.21</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_toc_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_22" class="named-paragraph-link"><span class="named-paragraph">Render toc</span><span class="named-paragraph-number">5.22</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_toc_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_23" class="named-paragraph-link"><span class="named-paragraph">Render toc line</span><span class="named-paragraph-number">5.23</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_defn_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_24" class="named-paragraph-link"><span class="named-paragraph">Render defn</span><span class="named-paragraph-number">5.24</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_source_code_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_25" class="named-paragraph-link"><span class="named-paragraph">Render source code</span><span class="named-paragraph-number">5.25</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_url_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_26" class="named-paragraph-link"><span class="named-paragraph">Render URL</span><span class="named-paragraph-number">5.26</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_footnote_cue_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_27" class="named-paragraph-link"><span class="named-paragraph">Render footnote cue</span><span class="named-paragraph-number">5.27</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_begin_footnote_text_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_28" class="named-paragraph-link"><span class="named-paragraph">Render footnote</span><span class="named-paragraph-number">5.28</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_display_line_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_29" class="named-paragraph-link"><span class="named-paragraph">Render display line</span><span class="named-paragraph-number">5.29</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_function_defn_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_30" class="named-paragraph-link"><span class="named-paragraph">Render function defn</span><span class="named-paragraph-number">5.30</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_item_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_31" class="named-paragraph-link"><span class="named-paragraph">Render item</span><span class="named-paragraph-number">5.31</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_inline_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_33" class="named-paragraph-link"><span class="named-paragraph">Render inline</span><span class="named-paragraph-number">5.33</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_locale_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_34" class="named-paragraph-link"><span class="named-paragraph">Render locale</span><span class="named-paragraph-number">5.34</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_maths_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_35" class="named-paragraph-link"><span class="named-paragraph">Render maths</span><span class="named-paragraph-number">5.35</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_linebreak_node_type</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_36" class="named-paragraph-link"><span class="named-paragraph">Render linebreak</span><span class="named-paragraph-number">5.36</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">internal_error</span><span class="plain-syntax">(</span><span class="string-syntax">"unable to render unknown node"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">TRUE</span><span class="plain-syntax">;</span>
@ -373,7 +374,33 @@ ePub respectively:
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_12"></a><b>&#167;5.12. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render material</span><span class="named-paragraph-number">5.12</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_12"></a><b>&#167;5.12. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render video clip</span><span class="named-paragraph-number">5.12</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_video_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">RETRIEVE_POINTER_weave_video_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">content</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">F</span><span class="plain-syntax"> = </span><a href="../foundation-module/3-fln.html#SP2" class="function-link"><span class="function-syntax">Filenames::in</span></a><span class="plain-syntax">(</span>
<span class="plain-syntax"> </span><a href="../foundation-module/3-pth.html#SP4" class="function-link"><span class="function-syntax">Pathnames::down</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">wv</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">weave_web</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">md</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">path_to_web</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"Video"</span><span class="plain-syntax">),</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">video_name</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="1-apacs.html#SP12" class="function-link"><span class="function-syntax">Assets::include_asset</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">copy_rule</span><span class="plain-syntax">, </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">wv</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">weave_web</span><span class="plain-syntax">, </span><span class="identifier-syntax">F</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">wv</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">pattern</span><span class="plain-syntax">, </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">wv</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">weave_to</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"p"</span><span class="plain-syntax">, </span><span class="string-syntax">"class=\"center-p\""</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">w</span><span class="plain-syntax"> &gt; </span><span class="constant-syntax">0</span><span class="plain-syntax">) &amp;&amp; (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">h</span><span class="plain-syntax"> &gt; </span><span class="constant-syntax">0</span><span class="plain-syntax">))</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;video width=\"%d\" height=\"%d\" controls&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">w</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">h</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">w</span><span class="plain-syntax"> &gt; </span><span class="constant-syntax">0</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;video width=\"%d\" controls&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">w</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">h</span><span class="plain-syntax"> &gt; </span><span class="constant-syntax">0</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;video height=\"%d\" controls&gt;"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">h</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;video controls&gt;"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;source src=\"%S\" type=\"video/mp4\"&gt;\n"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">video_name</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"Your browser does not support the video tag.\n"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;/video&gt;\n"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"p"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_13"></a><b>&#167;5.13. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render material</span><span class="named-paragraph-number">5.13</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -386,17 +413,17 @@ ePub respectively:
<span class="plain-syntax"> </span><span class="identifier-syntax">first_in_para</span><span class="plain-syntax"> = </span><span class="identifier-syntax">PC</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">para</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> }</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">material_type</span><span class="plain-syntax"> == </span><span class="constant-syntax">COMMENTARY_MATERIAL</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_12_1" class="named-paragraph-link"><span class="named-paragraph">Deal with a commentary material node</span><span class="named-paragraph-number">5.12.1</span></a></span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_13_1" class="named-paragraph-link"><span class="named-paragraph">Deal with a commentary material node</span><span class="named-paragraph-number">5.13.1</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">material_type</span><span class="plain-syntax"> == </span><span class="constant-syntax">CODE_MATERIAL</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_12_2" class="named-paragraph-link"><span class="named-paragraph">Deal with a code material node</span><span class="named-paragraph-number">5.12.2</span></a></span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_13_2" class="named-paragraph-link"><span class="named-paragraph">Deal with a code material node</span><span class="named-paragraph-number">5.13.2</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">material_type</span><span class="plain-syntax"> == </span><span class="constant-syntax">FOOTNOTES_MATERIAL</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_12_3" class="named-paragraph-link"><span class="named-paragraph">Deal with a footnotes material node</span><span class="named-paragraph-number">5.12.3</span></a></span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_13_3" class="named-paragraph-link"><span class="named-paragraph">Deal with a footnotes material node</span><span class="named-paragraph-number">5.13.3</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">material_type</span><span class="plain-syntax"> == </span><span class="constant-syntax">ENDNOTES_MATERIAL</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_12_4" class="named-paragraph-link"><span class="named-paragraph">Deal with a endnotes material node</span><span class="named-paragraph-number">5.12.4</span></a></span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_13_4" class="named-paragraph-link"><span class="named-paragraph">Deal with a endnotes material node</span><span class="named-paragraph-number">5.13.4</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">material_type</span><span class="plain-syntax"> == </span><span class="constant-syntax">MACRO_MATERIAL</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_12_5" class="named-paragraph-link"><span class="named-paragraph">Deal with a macro material node</span><span class="named-paragraph-number">5.12.5</span></a></span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_13_5" class="named-paragraph-link"><span class="named-paragraph">Deal with a macro material node</span><span class="named-paragraph-number">5.13.5</span></a></span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">material_type</span><span class="plain-syntax"> == </span><span class="constant-syntax">DEFINITION_MATERIAL</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_12_6" class="named-paragraph-link"><span class="named-paragraph">Deal with a definition material node</span><span class="named-paragraph-number">5.12.6</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_13_6" class="named-paragraph-link"><span class="named-paragraph">Deal with a definition material node</span><span class="named-paragraph-number">5.13.6</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
@ -411,8 +438,8 @@ ePub respectively:
<span class="plain-syntax"> </span><span class="identifier-syntax">first_in_para</span><span class="plain-syntax"> = </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> }</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_8">&#167;5.8</a>, <a href="5-hf.html#SP5_12_1">&#167;5.12.1</a> (twice), <a href="5-hf.html#SP5_12_2">&#167;5.12.2</a>, <a href="5-hf.html#SP5_12_3">&#167;5.12.3</a>, <a href="5-hf.html#SP5_12_4">&#167;5.12.4</a>, <a href="5-hf.html#SP5_12_6">&#167;5.12.6</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_12_1"></a><b>&#167;5.12.1. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a commentary material node</span><span class="named-paragraph-number">5.12.1</span></span><span class="comment-syntax"> =</span>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_8">&#167;5.8</a>, <a href="5-hf.html#SP5_13_1">&#167;5.13.1</a> (twice), <a href="5-hf.html#SP5_13_2">&#167;5.13.2</a>, <a href="5-hf.html#SP5_13_3">&#167;5.13.3</a>, <a href="5-hf.html#SP5_13_4">&#167;5.13.4</a>, <a href="5-hf.html#SP5_13_6">&#167;5.13.6</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_13_1"></a><b>&#167;5.13.1. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a commentary material node</span><span class="named-paragraph-number">5.13.1</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -426,7 +453,7 @@ ePub respectively:
<span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP13" class="function-link"><span class="function-syntax">Trees::traverse_from</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">M</span><span class="plain-syntax">, &amp;</span><a href="5-hf.html#SP5" class="function-link"><span class="function-syntax">HTMLFormat::render_visit</span></a><span class="plain-syntax">, (</span><span class="reserved-syntax">void</span><span class="plain-syntax"> *) </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="plain-syntax">+1);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">continue</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> }</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="5-hf.html#SP6" class="function-link"><span class="function-syntax">HTMLFormat::interior_material</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">M</span><span class="plain-syntax">)) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_12_1_1" class="named-paragraph-link"><span class="named-paragraph">Render a run of interior matter</span><span class="named-paragraph-number">5.12.1.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="5-hf.html#SP6" class="function-link"><span class="function-syntax">HTMLFormat::interior_material</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">M</span><span class="plain-syntax">)) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_13_1_1" class="named-paragraph-link"><span class="named-paragraph">Render a run of interior matter</span><span class="named-paragraph-number">5.13.1.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_8_1" class="named-paragraph-link"><span class="named-paragraph">If no para number yet, render a p just to hold this</span><span class="named-paragraph-number">5.8.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">item_depth</span><span class="plain-syntax"> &gt; </span><span class="constant-syntax">0</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="5-hf.html#SP7" class="function-link"><span class="function-syntax">HTMLFormat::go_to_depth</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">hrs</span><span class="plain-syntax">, </span><span class="identifier-syntax">item_depth</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">);</span>
@ -440,8 +467,8 @@ ePub respectively:
<span class="plain-syntax"> </span><span class="identifier-syntax">item_depth</span><span class="plain-syntax"> = </span><span class="constant-syntax">0</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> }</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_12">&#167;5.12</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_12_1_1"></a><b>&#167;5.12.1.1. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render a run of interior matter</span><span class="named-paragraph-number">5.12.1.1</span></span><span class="comment-syntax"> =</span>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_13">&#167;5.13</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_13_1_1"></a><b>&#167;5.13.1.1. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render a run of interior matter</span><span class="named-paragraph-number">5.13.1.1</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -460,8 +487,8 @@ ePub respectively:
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">item_depth</span><span class="plain-syntax"> == </span><span class="constant-syntax">0</span><span class="plain-syntax">) { </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"p"</span><span class="plain-syntax">); </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">); }</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">continue</span><span class="plain-syntax">;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_12_1">&#167;5.12.1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_12_2"></a><b>&#167;5.12.2. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a code material node</span><span class="named-paragraph-number">5.12.2</span></span><span class="comment-syntax"> =</span>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_13_1">&#167;5.13.1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_13_2"></a><b>&#167;5.13.2. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a code material node</span><span class="named-paragraph-number">5.13.2</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -482,8 +509,8 @@ ePub respectively:
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_9_1" class="named-paragraph-link"><span class="named-paragraph">Recurse the renderer through children nodes</span><span class="named-paragraph-number">5.9.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"pre"</span><span class="plain-syntax">); </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_12">&#167;5.12</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_12_3"></a><b>&#167;5.12.3. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a footnotes material node</span><span class="named-paragraph-number">5.12.3</span></span><span class="comment-syntax"> =</span>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_13">&#167;5.13</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_13_3"></a><b>&#167;5.13.3. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a footnotes material node</span><span class="named-paragraph-number">5.13.3</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -492,8 +519,8 @@ ePub respectively:
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_9_1" class="named-paragraph-link"><span class="named-paragraph">Recurse the renderer through children nodes</span><span class="named-paragraph-number">5.9.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"ul"</span><span class="plain-syntax">); </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_12">&#167;5.12</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_12_4"></a><b>&#167;5.12.4. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a endnotes material node</span><span class="named-paragraph-number">5.12.4</span></span><span class="comment-syntax"> =</span>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_13">&#167;5.13</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_13_4"></a><b>&#167;5.13.4. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a endnotes material node</span><span class="named-paragraph-number">5.13.4</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -502,8 +529,8 @@ ePub respectively:
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_9_1" class="named-paragraph-link"><span class="named-paragraph">Recurse the renderer through children nodes</span><span class="named-paragraph-number">5.9.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"ul"</span><span class="plain-syntax">); </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_12">&#167;5.12</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_12_5"></a><b>&#167;5.12.5. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a macro material node</span><span class="named-paragraph-number">5.12.5</span></span><span class="comment-syntax"> =</span>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_13">&#167;5.13</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_13_5"></a><b>&#167;5.13.5. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a macro material node</span><span class="named-paragraph-number">5.13.5</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -516,8 +543,8 @@ ePub respectively:
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_9_1" class="named-paragraph-link"><span class="named-paragraph">Recurse the renderer through children nodes</span><span class="named-paragraph-number">5.9.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"p"</span><span class="plain-syntax">); </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_12">&#167;5.12</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_12_6"></a><b>&#167;5.12.6. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a definition material node</span><span class="named-paragraph-number">5.12.6</span></span><span class="comment-syntax"> =</span>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_13">&#167;5.13</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_13_6"></a><b>&#167;5.13.6. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a definition material node</span><span class="named-paragraph-number">5.13.6</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -526,13 +553,13 @@ ePub respectively:
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_9_1" class="named-paragraph-link"><span class="named-paragraph">Recurse the renderer through children nodes</span><span class="named-paragraph-number">5.9.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"pre"</span><span class="plain-syntax">); </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_12">&#167;5.12</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_13"></a><b>&#167;5.13. </b>This has to embed some Internet-sourced content. <span class="extract"><span class="extract-syntax">service</span></span>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_13">&#167;5.13</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_14"></a><b>&#167;5.14. </b>This has to embed some Internet-sourced content. <span class="extract"><span class="extract-syntax">service</span></span>
here is something like <span class="extract"><span class="extract-syntax">YouTube</span></span> or <span class="extract"><span class="extract-syntax">Soundcloud</span></span>, and <span class="extract"><span class="extract-syntax">ID</span></span> is whatever code
that service uses to identify the video/audio in question.
</p>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render embed</span><span class="named-paragraph-number">5.13</span></span><span class="comment-syntax"> =</span>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render embed</span><span class="named-paragraph-number">5.14</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -559,7 +586,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> }</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_14"></a><b>&#167;5.14. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render pmac</span><span class="named-paragraph-number">5.14</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_15"></a><b>&#167;5.15. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render pmac</span><span class="named-paragraph-number">5.15</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -588,14 +615,14 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> }</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_15"></a><b>&#167;5.15. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render vskip</span><span class="named-paragraph-number">5.15</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_16"></a><b>&#167;5.16. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render vskip</span><span class="named-paragraph-number">5.16</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_16"></a><b>&#167;5.16. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render section</span><span class="named-paragraph-number">5.16</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_17"></a><b>&#167;5.17. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render section</span><span class="named-paragraph-number">5.17</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -603,7 +630,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="identifier-syntax">LOG</span><span class="plain-syntax">(</span><span class="string-syntax">"It was %d\n"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">allocation_id</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_17"></a><b>&#167;5.17. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render code line</span><span class="named-paragraph-number">5.17</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_18"></a><b>&#167;5.18. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render code line</span><span class="named-paragraph-number">5.18</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -612,7 +639,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_18"></a><b>&#167;5.18. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render function usage</span><span class="named-paragraph-number">5.18</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_19"></a><b>&#167;5.19. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render function usage</span><span class="named-paragraph-number">5.19</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -624,7 +651,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><a href="../foundation-module/5-htm.html#SP15" class="function-link"><span class="function-syntax">HTML::end_link</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_19"></a><b>&#167;5.19. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render commentary</span><span class="named-paragraph-number">5.19</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_20"></a><b>&#167;5.20. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render commentary</span><span class="named-paragraph-number">5.20</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -648,7 +675,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">in_code</span><span class="plain-syntax">) </span><a href="5-hf.html#SP9" class="function-link"><span class="function-syntax">HTMLFormat::change_colour</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, -1, </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">colours</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_20"></a><b>&#167;5.20. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render carousel slide</span><span class="named-paragraph-number">5.20</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_21"></a><b>&#167;5.21. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render carousel slide</span><span class="named-paragraph-number">5.21</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -683,7 +710,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" style=\"display: none;\""</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&gt;\n"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">caption_command</span><span class="plain-syntax"> == </span><span class="constant-syntax">CAROUSEL_ABOVE_CMD</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_20_1" class="named-paragraph-link"><span class="named-paragraph">Place caption here</span><span class="named-paragraph-number">5.20.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_21_1" class="named-paragraph-link"><span class="named-paragraph">Place caption here</span><span class="named-paragraph-number">5.21.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;div class=\"%S\"&gt;%d / %d&lt;/div&gt;\n"</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">slide_count_class</span><span class="plain-syntax">, </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">slide_number</span><span class="plain-syntax">, </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">slide_of</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> {</span>
@ -693,7 +720,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;div class=\"carousel-content\"&gt;"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_9_1" class="named-paragraph-link"><span class="named-paragraph">Recurse the renderer through children nodes</span><span class="named-paragraph-number">5.9.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;/div&gt;\n"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">caption_command</span><span class="plain-syntax"> != </span><span class="constant-syntax">CAROUSEL_ABOVE_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_20_1" class="named-paragraph-link"><span class="named-paragraph">Place caption here</span><span class="named-paragraph-number">5.20.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">caption_command</span><span class="plain-syntax"> != </span><span class="constant-syntax">CAROUSEL_ABOVE_CMD</span><span class="plain-syntax">) </span><span class="named-paragraph-container code-font"><a href="5-hf.html#SP5_21_1" class="named-paragraph-link"><span class="named-paragraph">Place caption here</span><span class="named-paragraph-number">5.21.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;/div&gt;\n"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">slide_number</span><span class="plain-syntax"> == </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">slide_of</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;a class=\"carousel-prev-button\" "</span><span class="plain-syntax">);</span>
@ -725,15 +752,15 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_20_1"></a><b>&#167;5.20.1. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Place caption here</span><span class="named-paragraph-number">5.20.1</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_21_1"></a><b>&#167;5.21.1. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Place caption here</span><span class="named-paragraph-number">5.21.1</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">caption_command</span><span class="plain-syntax"> != </span><span class="constant-syntax">CAROUSEL_UNCAPTIONED_CMD</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;div class=\"%S\"&gt;%S&lt;/div&gt;\n"</span><span class="plain-syntax">, </span><span class="identifier-syntax">caption_class</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">caption</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_20">&#167;5.20</a> (twice).</li></ul>
<p class="commentary firstcommentary"><a id="SP5_21"></a><b>&#167;5.21. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render toc</span><span class="named-paragraph-number">5.21</span></span><span class="comment-syntax"> =</span>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_21">&#167;5.21</a> (twice).</li></ul>
<p class="commentary firstcommentary"><a id="SP5_22"></a><b>&#167;5.22. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render toc</span><span class="named-paragraph-number">5.22</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -749,7 +776,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_22"></a><b>&#167;5.22. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render toc line</span><span class="named-paragraph-number">5.22</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_23"></a><b>&#167;5.23. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render toc line</span><span class="named-paragraph-number">5.23</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -764,7 +791,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><a href="../foundation-module/5-htm.html#SP15" class="function-link"><span class="function-syntax">HTML::end_link</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_23"></a><b>&#167;5.23. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render defn</span><span class="named-paragraph-number">5.23</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_24"></a><b>&#167;5.24. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render defn</span><span class="named-paragraph-number">5.24</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -775,7 +802,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" "</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_24"></a><b>&#167;5.24. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render source code</span><span class="named-paragraph-number">5.24</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_25"></a><b>&#167;5.25. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render source code</span><span class="named-paragraph-number">5.25</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -798,7 +825,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">current_colour</span><span class="plain-syntax"> &gt;= </span><span class="constant-syntax">0</span><span class="plain-syntax">) </span><a href="5-hf.html#SP9" class="function-link"><span class="function-syntax">HTMLFormat::change_colour</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, -1, </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">colours</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_25"></a><b>&#167;5.25. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render URL</span><span class="named-paragraph-number">5.25</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_26"></a><b>&#167;5.26. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render URL</span><span class="named-paragraph-number">5.26</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -808,7 +835,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><a href="../foundation-module/5-htm.html#SP15" class="function-link"><span class="function-syntax">HTML::end_link</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_26"></a><b>&#167;5.26. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render footnote cue</span><span class="named-paragraph-number">5.26</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_27"></a><b>&#167;5.27. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render footnote cue</span><span class="named-paragraph-number">5.27</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -826,7 +853,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">cue_text</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">cue_text</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">cue_text</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_27"></a><b>&#167;5.27. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render footnote</span><span class="named-paragraph-number">5.27</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_28"></a><b>&#167;5.28. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render footnote</span><span class="named-paragraph-number">5.28</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -851,7 +878,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_28"></a><b>&#167;5.28. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render display line</span><span class="named-paragraph-number">5.28</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_29"></a><b>&#167;5.29. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render display line</span><span class="named-paragraph-number">5.29</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -864,7 +891,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="constant-syntax">OUTDENT</span><span class="plain-syntax">; </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"blockquote"</span><span class="plain-syntax">); </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"\n"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_29"></a><b>&#167;5.29. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render function defn</span><span class="named-paragraph-number">5.29</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_30"></a><b>&#167;5.30. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render function defn</span><span class="named-paragraph-number">5.30</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -899,7 +926,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_30"></a><b>&#167;5.30. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render item</span><span class="named-paragraph-number">5.30</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_31"></a><b>&#167;5.31. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render item</span><span class="named-paragraph-number">5.31</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -908,7 +935,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">" "</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_31"></a><b>&#167;5.31. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render verbatim</span><span class="named-paragraph-number">5.31</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_32"></a><b>&#167;5.32. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render verbatim</span><span class="named-paragraph-number">5.32</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -916,7 +943,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">content</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_32"></a><b>&#167;5.32. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render inline</span><span class="named-paragraph-number">5.32</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_33"></a><b>&#167;5.33. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render inline</span><span class="named-paragraph-number">5.33</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -926,7 +953,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">FALSE</span><span class="plain-syntax">;</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_33"></a><b>&#167;5.33. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render locale</span><span class="named-paragraph-number">5.33</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_34"></a><b>&#167;5.34. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render locale</span><span class="named-paragraph-number">5.34</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -942,7 +969,7 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><a href="../foundation-module/5-htm.html#SP15" class="function-link"><span class="function-syntax">HTML::end_link</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_34"></a><b>&#167;5.34. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render maths</span><span class="named-paragraph-number">5.34</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_35"></a><b>&#167;5.35. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render maths</span><span class="named-paragraph-number">5.35</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -961,14 +988,14 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> }</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_35"></a><b>&#167;5.35. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render linebreak</span><span class="named-paragraph-number">5.35</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_36"></a><b>&#167;5.36. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render linebreak</span><span class="named-paragraph-number">5.36</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&lt;br/&gt;"</span><span class="plain-syntax">);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5">&#167;5</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP5_36"></a><b>&#167;5.36. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render nothing</span><span class="named-paragraph-number">5.36</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP5_37"></a><b>&#167;5.37. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Render nothing</span><span class="named-paragraph-number">5.37</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -982,13 +1009,13 @@ that service uses to identify the video/audio in question.
<span class="plain-syntax"> </span><span class="reserved-syntax">for</span><span class="plain-syntax"> (</span><span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">M</span><span class="plain-syntax"> = </span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">child</span><span class="plain-syntax">; </span><span class="identifier-syntax">M</span><span class="plain-syntax">; </span><span class="identifier-syntax">M</span><span class="plain-syntax"> = </span><span class="identifier-syntax">M</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">next</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP13" class="function-link"><span class="function-syntax">Trees::traverse_from</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">M</span><span class="plain-syntax">, &amp;</span><a href="5-hf.html#SP5" class="function-link"><span class="function-syntax">HTMLFormat::render_visit</span></a><span class="plain-syntax">, (</span><span class="reserved-syntax">void</span><span class="plain-syntax"> *) </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">, </span><span class="identifier-syntax">L</span><span class="plain-syntax">+1);</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_9">&#167;5.9</a>, <a href="5-hf.html#SP5_12_2">&#167;5.12.2</a>, <a href="5-hf.html#SP5_12_3">&#167;5.12.3</a>, <a href="5-hf.html#SP5_12_4">&#167;5.12.4</a>, <a href="5-hf.html#SP5_12_5">&#167;5.12.5</a>, <a href="5-hf.html#SP5_12_6">&#167;5.12.6</a>, <a href="5-hf.html#SP5_17">&#167;5.17</a>, <a href="5-hf.html#SP5_20">&#167;5.20</a>, <a href="5-hf.html#SP5_27">&#167;5.27</a>, <a href="5-hf.html#SP5_29">&#167;5.29</a>, <a href="5-hf.html#SP5_32">&#167;5.32</a>.</li></ul>
<ul class="endnotetexts"><li>This code is used in <a href="5-hf.html#SP5_9">&#167;5.9</a>, <a href="5-hf.html#SP5_13_2">&#167;5.13.2</a>, <a href="5-hf.html#SP5_13_3">&#167;5.13.3</a>, <a href="5-hf.html#SP5_13_4">&#167;5.13.4</a>, <a href="5-hf.html#SP5_13_5">&#167;5.13.5</a>, <a href="5-hf.html#SP5_13_6">&#167;5.13.6</a>, <a href="5-hf.html#SP5_18">&#167;5.18</a>, <a href="5-hf.html#SP5_21">&#167;5.21</a>, <a href="5-hf.html#SP5_28">&#167;5.28</a>, <a href="5-hf.html#SP5_30">&#167;5.30</a>, <a href="5-hf.html#SP5_33">&#167;5.33</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP6"></a><b>&#167;6. </b>These are the nodes falling under a commentary material node which we will
amalgamate into a single HTML paragraph:
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::interior_material</span><button class="popup" onclick="togglePopup('usagePopup6')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup6">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::interior_material</span></span>:<br/><a href="5-hf.html#SP5_12_1">&#167;5.12.1</a>, <a href="5-hf.html#SP5_12_1_1">&#167;5.12.1.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">N</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::interior_material</span><button class="popup" onclick="togglePopup('usagePopup6')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup6">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::interior_material</span></span>:<br/><a href="5-hf.html#SP5_13_1">&#167;5.13.1</a>, <a href="5-hf.html#SP5_13_1_1">&#167;5.13.1.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">N</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_commentary_node_type</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">TRUE</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_url_node_type</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">TRUE</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="identifier-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_inline_node_type</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">TRUE</span><span class="plain-syntax">;</span>
@ -1003,7 +1030,7 @@ which is itself inside a list entry"; and so on.
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::go_to_depth</span><button class="popup" onclick="togglePopup('usagePopup7')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup7">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::go_to_depth</span></span>:<br/><a href="5-hf.html#SP5_12_1">&#167;5.12.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">HTML_render_state</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hrs</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">from_depth</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">to_depth</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::go_to_depth</span><button class="popup" onclick="togglePopup('usagePopup7')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup7">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::go_to_depth</span></span>:<br/><a href="5-hf.html#SP5_13_1">&#167;5.13.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">HTML_render_state</span><span class="plain-syntax"> *</span><span class="identifier-syntax">hrs</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">from_depth</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">to_depth</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax"> = </span><span class="identifier-syntax">hrs</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">OUT</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">from_depth</span><span class="plain-syntax"> == </span><span class="identifier-syntax">to_depth</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"li"</span><span class="plain-syntax">);</span>
@ -1023,7 +1050,7 @@ which is itself inside a list entry"; and so on.
<p class="commentary firstcommentary"><a id="SP8"></a><b>&#167;8. </b></p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::paragraph_number</span><button class="popup" onclick="togglePopup('usagePopup8')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup8">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::paragraph_number</span></span>:<br/><a href="5-hf.html#SP5_8_1">&#167;5.8.1</a>, <a href="5-hf.html#SP5_12_1_1">&#167;5.12.1.1</a>, <a href="5-hf.html#SP5_12_5">&#167;5.12.5</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::paragraph_number</span><button class="popup" onclick="togglePopup('usagePopup8')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup8">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::paragraph_number</span></span>:<br/><a href="5-hf.html#SP5_8_1">&#167;5.8.1</a>, <a href="5-hf.html#SP5_13_1_1">&#167;5.13.1.1</a>, <a href="5-hf.html#SP5_13_5">&#167;5.13.5</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">TEMP</span><span class="plain-syntax">)</span>
<span class="plain-syntax"> </span><a href="6-cln.html#SP11" class="function-link"><span class="function-syntax">Colonies::paragraph_anchor</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">TEMP</span><span class="plain-syntax">, </span><span class="identifier-syntax">P</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="../foundation-module/5-htm.html#SP15" class="function-link"><span class="function-syntax">HTML::anchor</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">TEMP</span><span class="plain-syntax">);</span>
@ -1038,7 +1065,7 @@ which is itself inside a list entry"; and so on.
<p class="commentary firstcommentary"><a id="SP9"></a><b>&#167;9. </b></p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::change_colour</span><button class="popup" onclick="togglePopup('usagePopup9')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup9">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::change_colour</span></span>:<br/><a href="5-hf.html#SP5_14">&#167;5.14</a>, <a href="5-hf.html#SP5_18">&#167;5.18</a>, <a href="5-hf.html#SP5_19">&#167;5.19</a>, <a href="5-hf.html#SP5_24">&#167;5.24</a>, <a href="5-hf.html#SP5_29">&#167;5.29</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">col</span><span class="plain-syntax">, </span><span class="reserved-syntax">colour_scheme</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cs</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::change_colour</span><button class="popup" onclick="togglePopup('usagePopup9')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup9">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::change_colour</span></span>:<br/><a href="5-hf.html#SP5_15">&#167;5.15</a>, <a href="5-hf.html#SP5_19">&#167;5.19</a>, <a href="5-hf.html#SP5_20">&#167;5.20</a>, <a href="5-hf.html#SP5_25">&#167;5.25</a>, <a href="5-hf.html#SP5_30">&#167;5.30</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">col</span><span class="plain-syntax">, </span><span class="reserved-syntax">colour_scheme</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cs</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">col</span><span class="plain-syntax"> == -1) {</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_CLOSE</span><span class="plain-syntax">(</span><span class="string-syntax">"span"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> {</span>
@ -1064,7 +1091,7 @@ which is itself inside a list entry"; and so on.
<p class="commentary firstcommentary"><a id="SP10"></a><b>&#167;10. </b></p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::escape_text</span><button class="popup" onclick="togglePopup('usagePopup10')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup10">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::escape_text</span></span>:<br/><a href="5-hf.html#SP5_5">&#167;5.5</a>, <a href="5-hf.html#SP5_6">&#167;5.6</a>, <a href="5-hf.html#SP5_14">&#167;5.14</a>, <a href="5-hf.html#SP5_28">&#167;5.28</a>, <a href="5-hf.html#SP5_34">&#167;5.34</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">id</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTMLFormat::escape_text</span><button class="popup" onclick="togglePopup('usagePopup10')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup10">Usage of <span class="code-font"><span class="function-syntax">HTMLFormat::escape_text</span></span>:<br/><a href="5-hf.html#SP5_5">&#167;5.5</a>, <a href="5-hf.html#SP5_6">&#167;5.6</a>, <a href="5-hf.html#SP5_15">&#167;5.15</a>, <a href="5-hf.html#SP5_29">&#167;5.29</a>, <a href="5-hf.html#SP5_35">&#167;5.35</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">id</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">for</span><span class="plain-syntax"> (</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax">=0; </span><span class="identifier-syntax">i</span><span class="plain-syntax"> &lt; </span><a href="../foundation-module/4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">id</span><span class="plain-syntax">); </span><span class="identifier-syntax">i</span><span class="plain-syntax">++) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="../foundation-module/4-sm.html#SP13" class="function-link"><span class="function-syntax">Str::get_at</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">id</span><span class="plain-syntax">, </span><span class="identifier-syntax">i</span><span class="plain-syntax">) == </span><span class="character-syntax">'&amp;'</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&amp;amp;"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">else</span><span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="../foundation-module/4-sm.html#SP13" class="function-link"><span class="function-syntax">Str::get_at</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">id</span><span class="plain-syntax">, </span><span class="identifier-syntax">i</span><span class="plain-syntax">) == </span><span class="character-syntax">'&lt;'</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&amp;lt;"</span><span class="plain-syntax">);</span>

View file

@ -84,6 +84,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_chapter_footer_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_figure_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_audio_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_video_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_material_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_chapter_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_carousel_slide_node_type</span><span class="plain-syntax">) ||</span>

View file

@ -105,6 +105,7 @@ generic as possible, but with special features depending on <span class="extract
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_chapter_footer_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_section_footer_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_audio_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_video_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_chapter_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_carousel_slide_node_type</span><span class="plain-syntax">) ||</span>
<span class="plain-syntax"> (</span><span class="identifier-syntax">N</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">type</span><span class="plain-syntax"> == </span><span class="identifier-syntax">weave_begin_footnote_text_node_type</span><span class="plain-syntax">)) </span><span class="named-paragraph-container code-font"><a href="5-tf.html#SP4_15" class="named-paragraph-link"><span class="named-paragraph">Render nothing</span><span class="named-paragraph-number">4.15</span></a></span>

View file

@ -178,7 +178,7 @@ To do this, the weaver calls the following.
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">TeXUtilities::remove_math_mode</span><button class="popup" onclick="togglePopup('usagePopup6')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup6">Usage of <span class="code-font"><span class="function-syntax">TeXUtilities::remove_math_mode</span></span>:<br/>HTML Formats - <a href="5-hf.html#SP5_34">&#167;5.34</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">TeXUtilities::remove_math_mode</span><button class="popup" onclick="togglePopup('usagePopup6')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup6">Usage of <span class="code-font"><span class="function-syntax">TeXUtilities::remove_math_mode</span></span>:<br/>HTML Formats - <a href="5-hf.html#SP5_35">&#167;5.35</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">math_matter</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><a href="5-tu.html#SP7" class="function-link"><span class="function-syntax">TeXUtilities::remove_math_mode_range</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">math_matter</span><span class="plain-syntax">, </span><span class="identifier-syntax">text</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">, </span><a href="../foundation-module/4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">text</span><span class="plain-syntax">)-1);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">math_matter</span><span class="plain-syntax">);</span>

View file

@ -133,6 +133,13 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="constant-syntax">MEMORY_MANAGEMENT</span>
<span class="plain-syntax">} </span><span class="reserved-syntax">weave_audio_node</span><span class="plain-syntax">;</span>
<span class="reserved-syntax">typedef</span><span class="plain-syntax"> </span><span class="reserved-syntax">struct</span><span class="plain-syntax"> </span><span class="reserved-syntax">weave_video_node</span><span class="plain-syntax"> {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">struct</span><span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">video_name</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">w</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">h</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="constant-syntax">MEMORY_MANAGEMENT</span>
<span class="plain-syntax">} </span><span class="reserved-syntax">weave_video_node</span><span class="plain-syntax">;</span>
<span class="reserved-syntax">typedef</span><span class="plain-syntax"> </span><span class="reserved-syntax">struct</span><span class="plain-syntax"> </span><span class="reserved-syntax">weave_material_node</span><span class="plain-syntax"> {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">material_type</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">plainly</span><span class="plain-syntax">;</span>
@ -276,7 +283,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="constant-syntax">MEMORY_MANAGEMENT</span>
<span class="plain-syntax">} </span><span class="reserved-syntax">weave_verbatim_node</span><span class="plain-syntax">;</span>
</pre>
<ul class="endnotetexts"><li>The structure weave_document_node is accessed in 3/tc, 3/twot, 5/fm, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_head_node is accessed in 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_body_node is private to this section.</li><li>The structure weave_tail_node is accessed in 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_chapter_header_node is accessed in 5/ptf, 5/tf, 5/df and here.</li><li>The structure weave_chapter_footer_node is accessed in 5/ptf, 5/tf, 5/df and here.</li><li>The structure weave_section_header_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_section_footer_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_section_purpose_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_subheading_node is accessed in 1/pc, 2/lc, 2/tp, 2/pn, 3/ta, 3/tw, 3/tt, 4/as, 4/cl, 4/is, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_bar_node is private to this section.</li><li>The structure weave_pagebreak_node is private to this section.</li><li>The structure weave_linebreak_node is private to this section.</li><li>The structure weave_paragraph_heading_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_endnote_node is private to this section.</li><li>The structure weave_figure_node is accessed in 1/fm, 1/pp, 1/wp, 8/ws, 4/cl, 5/tf, 5/hf, 5/df, 6/rw and here.</li><li>The structure weave_audio_node is accessed in 8/ws, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_material_node is accessed in 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_embed_node is accessed in 1/fm, 1/pp, 1/wp, 8/ws, 4/cl, 5/ptf, 5/tf, 5/hf, 5/df, 6/rw and here.</li><li>The structure weave_pmac_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_vskip_node is accessed in 5/tf, 5/df and here.</li><li>The structure weave_chapter_node is accessed in 5/ptf, 5/tf, 5/df and here.</li><li>The structure weave_section_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_code_line_node is private to this section.</li><li>The structure weave_function_usage_node is accessed in 1/wp, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_commentary_node is accessed in 1/pc, 2/lc, 2/tp, 2/pn, 3/ta, 3/tw, 3/tt, 4/as, 4/cl, 4/is, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_carousel_slide_node is accessed in 2/tgs, 5/hf, 5/df and here.</li><li>The structure weave_toc_node is accessed in 5/tf, 5/df and here.</li><li>The structure weave_toc_line_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_chapter_title_page_node is private to this section.</li><li>The structure weave_defn_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_inline_node is private to this section.</li><li>The structure weave_locale_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_source_code_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_url_node is accessed in 2/trs, 3/twot, 5/fm, 5/ptf, 5/tf, 5/hf, 5/df, 6/rw and here.</li><li>The structure weave_footnote_cue_node is accessed in 2/tp, 3/tw, 3/twot, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_begin_footnote_text_node is accessed in 2/tp, 3/tw, 3/twot, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_display_line_node is accessed in 1/pc, 2/lc, 2/tp, 2/pn, 3/ta, 3/tw, 3/tt, 4/as, 4/cl, 4/is, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_function_defn_node is accessed in 1/wp, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_item_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_grammar_index_node is private to this section.</li><li>The structure weave_maths_node is accessed in 2/trs, 3/twot, 5/fm, 5/ptf, 5/tf, 5/hf, 5/df, 6/rw and here.</li><li>The structure weave_verbatim_node is accessed in 2/trs, 3/twot, 5/fm, 5/ptf, 5/tf, 5/hf, 5/df, 6/rw and here.</li></ul>
<ul class="endnotetexts"><li>The structure weave_document_node is accessed in 3/tc, 3/twot, 5/fm, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_head_node is accessed in 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_body_node is private to this section.</li><li>The structure weave_tail_node is accessed in 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_chapter_header_node is accessed in 5/ptf, 5/tf, 5/df and here.</li><li>The structure weave_chapter_footer_node is accessed in 5/ptf, 5/tf, 5/df and here.</li><li>The structure weave_section_header_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_section_footer_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_section_purpose_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_subheading_node is accessed in 1/pc, 2/lc, 2/tp, 2/pn, 3/ta, 3/tw, 3/tt, 4/as, 4/cl, 4/is, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_bar_node is private to this section.</li><li>The structure weave_pagebreak_node is private to this section.</li><li>The structure weave_linebreak_node is private to this section.</li><li>The structure weave_paragraph_heading_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_endnote_node is private to this section.</li><li>The structure weave_figure_node is accessed in 1/fm, 1/pp, 1/wp, 8/ws, 4/cl, 5/tf, 5/hf, 5/df, 6/rw and here.</li><li>The structure weave_audio_node is accessed in 8/ws, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_video_node is accessed in 1/fm, 1/pp, 1/wp, 8/ws, 4/cl, 5/tf, 5/hf, 5/df, 6/rw and here.</li><li>The structure weave_material_node is accessed in 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_embed_node is accessed in 1/fm, 1/pp, 1/wp, 8/ws, 4/cl, 5/ptf, 5/tf, 5/hf, 5/df, 6/rw and here.</li><li>The structure weave_pmac_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_vskip_node is accessed in 5/tf, 5/df and here.</li><li>The structure weave_chapter_node is accessed in 5/ptf, 5/tf, 5/df and here.</li><li>The structure weave_section_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_code_line_node is private to this section.</li><li>The structure weave_function_usage_node is accessed in 1/wp, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_commentary_node is accessed in 1/pc, 2/lc, 2/tp, 2/pn, 3/ta, 3/tw, 3/tt, 4/as, 4/cl, 4/is, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_carousel_slide_node is accessed in 2/tgs, 5/hf, 5/df and here.</li><li>The structure weave_toc_node is accessed in 5/tf, 5/df and here.</li><li>The structure weave_toc_line_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_chapter_title_page_node is private to this section.</li><li>The structure weave_defn_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_inline_node is private to this section.</li><li>The structure weave_locale_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_source_code_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_url_node is accessed in 2/trs, 3/twot, 5/fm, 5/ptf, 5/tf, 5/hf, 5/df, 6/rw and here.</li><li>The structure weave_footnote_cue_node is accessed in 2/tp, 3/tw, 3/twot, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_begin_footnote_text_node is accessed in 2/tp, 3/tw, 3/twot, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_display_line_node is accessed in 1/pc, 2/lc, 2/tp, 2/pn, 3/ta, 3/tw, 3/tt, 4/as, 4/cl, 4/is, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_function_defn_node is accessed in 1/wp, 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_item_node is accessed in 5/ptf, 5/tf, 5/hf, 5/df and here.</li><li>The structure weave_grammar_index_node is private to this section.</li><li>The structure weave_maths_node is accessed in 2/trs, 3/twot, 5/fm, 5/ptf, 5/tf, 5/hf, 5/df, 6/rw and here.</li><li>The structure weave_verbatim_node is accessed in 2/trs, 3/twot, 5/fm, 5/ptf, 5/tf, 5/hf, 5/df, 6/rw and here.</li></ul>
<p class="commentary firstcommentary"><a id="SP2"></a><b>&#167;2. </b></p>
<pre class="displayed-code all-displayed-code code-font">
@ -299,6 +306,7 @@ function togglePopup(material_id) {
<span class="reserved-syntax">tree_node_type</span><span class="plain-syntax"> *</span><span class="identifier-syntax">weave_endnote_node_type</span><span class="plain-syntax"> = </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
<span class="reserved-syntax">tree_node_type</span><span class="plain-syntax"> *</span><span class="identifier-syntax">weave_figure_node_type</span><span class="plain-syntax"> = </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
<span class="reserved-syntax">tree_node_type</span><span class="plain-syntax"> *</span><span class="identifier-syntax">weave_audio_node_type</span><span class="plain-syntax"> = </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
<span class="reserved-syntax">tree_node_type</span><span class="plain-syntax"> *</span><span class="identifier-syntax">weave_video_node_type</span><span class="plain-syntax"> = </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
<span class="reserved-syntax">tree_node_type</span><span class="plain-syntax"> *</span><span class="identifier-syntax">weave_material_node_type</span><span class="plain-syntax"> = </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
<span class="reserved-syntax">tree_node_type</span><span class="plain-syntax"> *</span><span class="identifier-syntax">weave_embed_node_type</span><span class="plain-syntax"> = </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
<span class="reserved-syntax">tree_node_type</span><span class="plain-syntax"> *</span><span class="identifier-syntax">weave_pmac_node_type</span><span class="plain-syntax"> = </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
@ -363,6 +371,8 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP9" class="function-link"><span class="function-syntax">Trees::new_node_type</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"figure"</span><span class="plain-syntax">, </span><span class="constant-syntax">weave_figure_node_MT</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">weave_audio_node_type</span><span class="plain-syntax"> =</span>
<span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP9" class="function-link"><span class="function-syntax">Trees::new_node_type</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"audio"</span><span class="plain-syntax">, </span><span class="constant-syntax">weave_audio_node_MT</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">weave_video_node_type</span><span class="plain-syntax"> =</span>
<span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP9" class="function-link"><span class="function-syntax">Trees::new_node_type</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"video"</span><span class="plain-syntax">, </span><span class="constant-syntax">weave_video_node_MT</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">weave_material_node_type</span><span class="plain-syntax"> =</span>
<span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP9" class="function-link"><span class="function-syntax">Trees::new_node_type</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"material"</span><span class="plain-syntax">, </span><span class="constant-syntax">weave_material_node_MT</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">weave_embed_node_type</span><span class="plain-syntax"> =</span>
@ -555,7 +565,16 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="identifier-syntax">STORE_POINTER_weave_audio_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::material</span><button class="popup" onclick="togglePopup('usagePopup20')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup20">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::material</span></span>:<br/>The Weaver - <a href="3-tw.html#SP5">&#167;5</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">material_type</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">plainly</span><span class="plain-syntax">,</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::video</span><button class="popup" onclick="togglePopup('usagePopup20')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup20">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::video</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_4_3">&#167;2.7.2.4.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">video_name</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">w</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">h</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_video_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_video_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">video_name</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">video_name</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">w</span><span class="plain-syntax"> = </span><span class="identifier-syntax">w</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_video_node_type</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">STORE_POINTER_weave_video_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::material</span><button class="popup" onclick="togglePopup('usagePopup21')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup21">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::material</span></span>:<br/>The Weaver - <a href="3-tw.html#SP5">&#167;5</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">material_type</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">plainly</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">programming_language</span><span class="plain-syntax"> *</span><span class="identifier-syntax">styling</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_material_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_material_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">material_type</span><span class="plain-syntax"> = </span><span class="identifier-syntax">material_type</span><span class="plain-syntax">;</span>
@ -564,7 +583,7 @@ function togglePopup(material_id) {
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_material_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_material_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::embed</span><button class="popup" onclick="togglePopup('usagePopup21')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup21">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::embed</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_4_3">&#167;2.7.2.4.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">,</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::embed</span><button class="popup" onclick="togglePopup('usagePopup22')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup22">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::embed</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_4_4">&#167;2.7.2.4.4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">service</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">ID</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">w</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">h</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_embed_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_embed_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">service</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">service</span><span class="plain-syntax">);</span>
@ -580,7 +599,7 @@ thing is to render some sort of equals sign after it, if so.
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::pmac</span><button class="popup" onclick="togglePopup('usagePopup22')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup22">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::pmac</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_2_6">&#167;2.7.2.3.2.6</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">para_macro</span><span class="plain-syntax"> *</span><span class="identifier-syntax">pmac</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">defn</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::pmac</span><button class="popup" onclick="togglePopup('usagePopup23')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup23">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::pmac</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_2_6">&#167;2.7.2.3.2.6</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">para_macro</span><span class="plain-syntax"> *</span><span class="identifier-syntax">pmac</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">defn</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_pmac_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_pmac_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">pmac</span><span class="plain-syntax"> = </span><span class="identifier-syntax">pmac</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">defn</span><span class="plain-syntax"> = </span><span class="identifier-syntax">defn</span><span class="plain-syntax">;</span>
@ -593,24 +612,24 @@ information.
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::vskip</span><button class="popup" onclick="togglePopup('usagePopup23')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup23">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::vskip</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_1_2">&#167;2.7.2.3.1.2</a>, <a href="3-tw.html#SP2_7_2_3_2_2">&#167;2.7.2.3.2.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">in_comment</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::vskip</span><button class="popup" onclick="togglePopup('usagePopup24')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup24">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::vskip</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_1_2">&#167;2.7.2.3.1.2</a>, <a href="3-tw.html#SP2_7_2_3_2_2">&#167;2.7.2.3.2.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">in_comment</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_vskip_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_vskip_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">in_comment</span><span class="plain-syntax"> = </span><span class="identifier-syntax">in_comment</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_vskip_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_vskip_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::section</span><button class="popup" onclick="togglePopup('usagePopup24')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup24">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::section</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_3">&#167;2.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">section</span><span class="plain-syntax"> *</span><span class="identifier-syntax">sect</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::section</span><button class="popup" onclick="togglePopup('usagePopup25')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup25">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::section</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_3">&#167;2.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">section</span><span class="plain-syntax"> *</span><span class="identifier-syntax">sect</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_section_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_section_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">sect</span><span class="plain-syntax"> = </span><span class="identifier-syntax">sect</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_section_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_section_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::code_line</span><button class="popup" onclick="togglePopup('usagePopup25')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup25">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::code_line</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_1_4">&#167;2.7.2.3.1.4</a>, <a href="3-tw.html#SP2_7_2_3_2">&#167;2.7.2.3.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::code_line</span><button class="popup" onclick="togglePopup('usagePopup26')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup26">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::code_line</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_1_4">&#167;2.7.2.3.1.4</a>, <a href="3-tw.html#SP2_7_2_3_2">&#167;2.7.2.3.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_code_line_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_code_line_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_code_line_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_code_line_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::function_usage</span><button class="popup" onclick="togglePopup('usagePopup26')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup26">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::function_usage</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP3_3">&#167;3.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">,</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::function_usage</span><button class="popup" onclick="togglePopup('usagePopup27')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup27">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::function_usage</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP3_3">&#167;3.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">url</span><span class="plain-syntax">, </span><span class="reserved-syntax">language_function</span><span class="plain-syntax"> *</span><span class="identifier-syntax">fn</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_function_usage_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_function_usage_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">url</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">url</span><span class="plain-syntax">);</span>
@ -618,27 +637,27 @@ information.
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_function_usage_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_function_usage_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::commentary</span><button class="popup" onclick="togglePopup('usagePopup27')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup27">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::commentary</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP2">&#167;2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">in_code</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::commentary</span><button class="popup" onclick="togglePopup('usagePopup28')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup28">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::commentary</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP2">&#167;2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">in_code</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_commentary_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_commentary_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">text</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">text</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">in_code</span><span class="plain-syntax"> = </span><span class="identifier-syntax">in_code</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_commentary_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_commentary_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::carousel_slide</span><button class="popup" onclick="togglePopup('usagePopup28')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup28">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::carousel_slide</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_4_4">&#167;2.7.2.4.4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">caption</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">c</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::carousel_slide</span><button class="popup" onclick="togglePopup('usagePopup29')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup29">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::carousel_slide</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_4_5">&#167;2.7.2.4.5</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">caption</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">c</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_carousel_slide_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_carousel_slide_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">caption</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">caption</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">caption_command</span><span class="plain-syntax"> = </span><span class="identifier-syntax">c</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_carousel_slide_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_carousel_slide_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::table_of_contents</span><button class="popup" onclick="togglePopup('usagePopup29')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup29">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::table_of_contents</span></span>:<br/>The Weaver - <a href="3-tw.html#SP7">&#167;7</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text1</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::table_of_contents</span><button class="popup" onclick="togglePopup('usagePopup30')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup30">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::table_of_contents</span></span>:<br/>The Weaver - <a href="3-tw.html#SP7">&#167;7</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text1</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_toc_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_toc_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">text1</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">text1</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_toc_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_toc_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::contents_line</span><button class="popup" onclick="togglePopup('usagePopup30')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup30">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::contents_line</span></span>:<br/>The Weaver - <a href="3-tw.html#SP7">&#167;7</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">,</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::contents_line</span><button class="popup" onclick="togglePopup('usagePopup31')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup31">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::contents_line</span></span>:<br/>The Weaver - <a href="3-tw.html#SP7">&#167;7</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text1</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text2</span><span class="plain-syntax">, </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_toc_line_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_toc_line_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">text1</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">text1</span><span class="plain-syntax">);</span>
@ -652,7 +671,7 @@ information.
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_chapter_title_page_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_chapter_title_page_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::weave_defn_node</span><button class="popup" onclick="togglePopup('usagePopup31')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup31">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::weave_defn_node</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_2">&#167;2.7.2.3.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">keyword</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::weave_defn_node</span><button class="popup" onclick="togglePopup('usagePopup32')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup32">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::weave_defn_node</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_2">&#167;2.7.2.3.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">keyword</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_defn_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_defn_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">keyword</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">keyword</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_defn_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_defn_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
@ -663,7 +682,7 @@ been syntax-coloured.
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::source_code</span><button class="popup" onclick="togglePopup('usagePopup32')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup32">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::source_code</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP2">&#167;2</a>, <a href="3-twot.html#SP4">&#167;4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">,</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::source_code</span><button class="popup" onclick="togglePopup('usagePopup33')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup33">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::source_code</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP2">&#167;2</a>, <a href="3-twot.html#SP4">&#167;4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">matter</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">colouring</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="../foundation-module/4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">colouring</span><span class="plain-syntax">) != </span><a href="../foundation-module/4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">matter</span><span class="plain-syntax">)) </span><span class="identifier-syntax">internal_error</span><span class="plain-syntax">(</span><span class="string-syntax">"bad source segment"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">for</span><span class="plain-syntax"> (</span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">i</span><span class="plain-syntax">=0; </span><span class="identifier-syntax">i</span><span class="plain-syntax">&lt;</span><a href="../foundation-module/4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">colouring</span><span class="plain-syntax">); </span><span class="identifier-syntax">i</span><span class="plain-syntax">++)</span>
@ -674,7 +693,7 @@ been syntax-coloured.
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_source_code_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_source_code_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::url</span><button class="popup" onclick="togglePopup('usagePopup33')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup33">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::url</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP1_2">&#167;1.2</a>, <a href="3-twot.html#SP1_5_1">&#167;1.5.1</a>, <a href="3-twot.html#SP3_1">&#167;3.1</a>, <a href="3-twot.html#SP3_2_1">&#167;3.2.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">url</span><span class="plain-syntax">,</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::url</span><button class="popup" onclick="togglePopup('usagePopup34')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup34">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::url</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP1_2">&#167;1.2</a>, <a href="3-twot.html#SP1_5_1">&#167;1.5.1</a>, <a href="3-twot.html#SP3_1">&#167;3.1</a>, <a href="3-twot.html#SP3_2_1">&#167;3.2.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">url</span><span class="plain-syntax">,</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">content</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">external</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_url_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_url_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">url</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">url</span><span class="plain-syntax">);</span>
@ -683,13 +702,13 @@ been syntax-coloured.
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_url_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_url_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::footnote_cue</span><button class="popup" onclick="togglePopup('usagePopup34')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup34">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::footnote_cue</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP1_4">&#167;1.4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cue</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::footnote_cue</span><button class="popup" onclick="togglePopup('usagePopup35')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup35">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::footnote_cue</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP1_4">&#167;1.4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cue</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_footnote_cue_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_footnote_cue_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">cue_text</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">cue</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_footnote_cue_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_footnote_cue_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::footnote</span><button class="popup" onclick="togglePopup('usagePopup35')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup35">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::footnote</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_1_5">&#167;2.7.2.3.1.5</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cue</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::footnote</span><button class="popup" onclick="togglePopup('usagePopup36')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup36">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::footnote</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_1_5">&#167;2.7.2.3.1.5</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cue</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_begin_footnote_text_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_begin_footnote_text_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">cue_text</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">cue</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_begin_footnote_text_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_begin_footnote_text_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
@ -700,7 +719,7 @@ definition has just occurred.
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::function_defn</span><button class="popup" onclick="togglePopup('usagePopup36')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup36">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::function_defn</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP3_3">&#167;3.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">language_function</span><span class="plain-syntax"> *</span><span class="identifier-syntax">fn</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::function_defn</span><button class="popup" onclick="togglePopup('usagePopup37')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup37">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::function_defn</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP3_3">&#167;3.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">language_function</span><span class="plain-syntax"> *</span><span class="identifier-syntax">fn</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_function_defn_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_function_defn_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">fn</span><span class="plain-syntax"> = </span><span class="identifier-syntax">fn</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_function_defn_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_function_defn_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
@ -711,7 +730,7 @@ a convenience for Inform 7 code commentary.
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::display_line</span><button class="popup" onclick="togglePopup('usagePopup37')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup37">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::display_line</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_1_1">&#167;2.7.2.3.1.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::display_line</span><button class="popup" onclick="togglePopup('usagePopup38')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup38">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::display_line</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_1_1">&#167;2.7.2.3.1.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">text</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_display_line_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_display_line_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">text</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">text</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_display_line_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_display_line_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
@ -732,31 +751,31 @@ indentation but not weave any bracketed marker.
</li><li>(b) This was produced by <span class="extract"><span class="extract-syntax">depth</span></span> equal to 1, <span class="extract"><span class="extract-syntax">label</span></span> equal to <span class="extract"><span class="extract-syntax">b</span></span>.
</li></ul>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::weave_item_node</span><button class="popup" onclick="togglePopup('usagePopup38')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup38">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::weave_item_node</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_1_3">&#167;2.7.2.3.1.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">depth</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">label</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::weave_item_node</span><button class="popup" onclick="togglePopup('usagePopup39')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup39">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::weave_item_node</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_3_1_3">&#167;2.7.2.3.1.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">depth</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">label</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_item_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_item_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">depth</span><span class="plain-syntax"> = </span><span class="identifier-syntax">depth</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">label</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">label</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_item_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_item_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::grammar_index</span><button class="popup" onclick="togglePopup('usagePopup39')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup39">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::grammar_index</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_4">&#167;2.7.2.4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::grammar_index</span><button class="popup" onclick="togglePopup('usagePopup40')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup40">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::grammar_index</span></span>:<br/>The Weaver - <a href="3-tw.html#SP2_7_2_4">&#167;2.7.2.4</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_grammar_index_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_grammar_index_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_grammar_index_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_grammar_index_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::inline</span><button class="popup" onclick="togglePopup('usagePopup40')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup40">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::inline</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP2">&#167;2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::inline</span><button class="popup" onclick="togglePopup('usagePopup41')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup41">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::inline</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP2">&#167;2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_inline_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_inline_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_inline_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_inline_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::locale</span><button class="popup" onclick="togglePopup('usagePopup41')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup41">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::locale</span></span>:<br/>The Weaver - <a href="3-tw.html#SP3_1">&#167;3.1</a>, <a href="3-tw.html#SP4_1">&#167;4.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">par1</span><span class="plain-syntax">, </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">par2</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::locale</span><button class="popup" onclick="togglePopup('usagePopup42')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup42">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::locale</span></span>:<br/>The Weaver - <a href="3-tw.html#SP3_1">&#167;3.1</a>, <a href="3-tw.html#SP4_1">&#167;4.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">par1</span><span class="plain-syntax">, </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">par2</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_locale_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_locale_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">par1</span><span class="plain-syntax"> = </span><span class="identifier-syntax">par1</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">par2</span><span class="plain-syntax"> = </span><span class="identifier-syntax">par2</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP4" class="function-link"><span class="function-syntax">Trees::new_node</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="identifier-syntax">weave_locale_node_type</span><span class="plain-syntax">, </span><span class="identifier-syntax">STORE_POINTER_weave_locale_node</span><span class="plain-syntax">(</span><span class="identifier-syntax">C</span><span class="plain-syntax">));</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::mathematics</span><button class="popup" onclick="togglePopup('usagePopup42')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup42">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::mathematics</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP1_3">&#167;1.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">content</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">displayed</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">tree_node</span><span class="plain-syntax"> *</span><span class="function-syntax">WeaveTree::mathematics</span><button class="popup" onclick="togglePopup('usagePopup43')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup43">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::mathematics</span></span>:<br/>The Weaver of Text - <a href="3-twot.html#SP1_3">&#167;1.3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tree</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">content</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">displayed</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">weave_maths_node</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">CREATE</span><span class="plain-syntax">(</span><span class="reserved-syntax">weave_maths_node</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">content</span><span class="plain-syntax"> = </span><a href="../foundation-module/4-sm.html#SP3" class="function-link"><span class="function-syntax">Str::duplicate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">content</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">C</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">displayed</span><span class="plain-syntax"> = </span><span class="identifier-syntax">displayed</span><span class="plain-syntax">;</span>
@ -770,7 +789,7 @@ indentation but not weave any bracketed marker.
<span class="plain-syntax"> </span><span class="constant-syntax">OUTDENT</span><span class="plain-syntax">;</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">WeaveTree::prune</span><button class="popup" onclick="togglePopup('usagePopup43')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup43">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::prune</span></span>:<br/>The Weaver - <a href="3-tw.html#SP1">&#167;1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">T</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">WeaveTree::prune</span><button class="popup" onclick="togglePopup('usagePopup44')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup44">Usage of <span class="code-font"><span class="function-syntax">WeaveTree::prune</span></span>:<br/>The Weaver - <a href="3-tw.html#SP1">&#167;1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">heterogeneous_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">T</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="../foundation-module/2-trs.html#SP14" class="function-link"><span class="function-syntax">Trees::prune_tree</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">T</span><span class="plain-syntax">, &amp;</span><a href="5-wt.html#SP8" class="function-link"><span class="function-syntax">WeaveTree::prune_visit</span></a><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
<span class="plain-syntax">}</span>

View file

@ -598,7 +598,7 @@ the main one, and suffixed by <span class="extract"><span class="extract-syntax"
<span class="plain-syntax"> </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">".html"</span><span class="plain-syntax">);</span>
<span class="plain-syntax">}</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Colonies::paragraph_URL</span><button class="popup" onclick="togglePopup('usagePopup16')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup16">Usage of <span class="code-font"><span class="function-syntax">Colonies::paragraph_URL</span></span>:<br/><a href="6-cln.html#SP10_3">&#167;10.3</a>, <a href="6-cln.html#SP10_4">&#167;10.4</a><br/>The Weaver of Text - <a href="3-twot.html#SP3_3">&#167;3.3</a><br/>HTML Formats - <a href="5-hf.html#SP5_14">&#167;5.14</a>, <a href="5-hf.html#SP5_22">&#167;5.22</a>, <a href="5-hf.html#SP5_33">&#167;5.33</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">from</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Colonies::paragraph_URL</span><button class="popup" onclick="togglePopup('usagePopup16')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup16">Usage of <span class="code-font"><span class="function-syntax">Colonies::paragraph_URL</span></span>:<br/><a href="6-cln.html#SP10_3">&#167;10.3</a>, <a href="6-cln.html#SP10_4">&#167;10.4</a><br/>The Weaver of Text - <a href="3-twot.html#SP3_3">&#167;3.3</a><br/>HTML Formats - <a href="5-hf.html#SP5_15">&#167;5.15</a>, <a href="5-hf.html#SP5_23">&#167;5.23</a>, <a href="5-hf.html#SP5_34">&#167;5.34</a></span></button><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">paragraph</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax">, </span><span class="reserved-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">from</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">from</span><span class="plain-syntax"> == </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">) </span><span class="identifier-syntax">internal_error</span><span class="plain-syntax">(</span><span class="string-syntax">"no from file"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">P</span><span class="plain-syntax"> == </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">) </span><span class="identifier-syntax">internal_error</span><span class="plain-syntax">(</span><span class="string-syntax">"no para"</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">section</span><span class="plain-syntax"> *</span><span class="identifier-syntax">to_S</span><span class="plain-syntax"> = </span><span class="identifier-syntax">P</span><span class="plain-syntax">-&gt;</span><span class="element-syntax">under_section</span><span class="plain-syntax">;</span>

View file

@ -59,7 +59,7 @@ MathJax = {
<!--Weave of 'How to Write a Web' generated by Inweb-->
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="index.html">inweb</a></li><li><a href="index.html#M">Manual</a></li><li><b>How to Write a Web</b></li></ul><p class="purpose">How to mark up code for literate programming.</p>
<ul class="toc"><li><a href="M-htwaw.html#SP1">&#167;1. The title of a section</a></li><li><a href="M-htwaw.html#SP2">&#167;2. Paragraphing</a></li><li><a href="M-htwaw.html#SP6">&#167;6. Conditional compilation</a></li><li><a href="M-htwaw.html#SP7">&#167;7. Commentary</a></li><li><a href="M-htwaw.html#SP12">&#167;12. Code samples and other extraneous matter</a></li><li><a href="M-htwaw.html#SP13">&#167;13. Links</a></li><li><a href="M-htwaw.html#SP14">&#167;14. Cross-references</a></li><li><a href="M-htwaw.html#SP18">&#167;18. Figures</a></li><li><a href="M-htwaw.html#SP19">&#167;19. Audio</a></li><li><a href="M-htwaw.html#SP20">&#167;20. Carousels</a></li><li><a href="M-htwaw.html#SP21">&#167;21. Embedded video</a></li><li><a href="M-htwaw.html#SP23">&#167;23. Mathematics notation</a></li><li><a href="M-htwaw.html#SP24">&#167;24. Footnotes</a></li></ul><hr class="tocbar">
<ul class="toc"><li><a href="M-htwaw.html#SP1">&#167;1. The title of a section</a></li><li><a href="M-htwaw.html#SP2">&#167;2. Paragraphing</a></li><li><a href="M-htwaw.html#SP6">&#167;6. Conditional compilation</a></li><li><a href="M-htwaw.html#SP7">&#167;7. Commentary</a></li><li><a href="M-htwaw.html#SP12">&#167;12. Code samples and other extraneous matter</a></li><li><a href="M-htwaw.html#SP13">&#167;13. Links</a></li><li><a href="M-htwaw.html#SP14">&#167;14. Cross-references</a></li><li><a href="M-htwaw.html#SP18">&#167;18. Figures</a></li><li><a href="M-htwaw.html#SP19">&#167;19. Carousels</a></li><li><a href="M-htwaw.html#SP20">&#167;20. Video and audio</a></li><li><a href="M-htwaw.html#SP21">&#167;21. Embedded video and audio</a></li><li><a href="M-htwaw.html#SP23">&#167;23. Mathematics notation</a></li><li><a href="M-htwaw.html#SP24">&#167;24. Footnotes</a></li></ul><hr class="tocbar">
<p class="commentary firstcommentary"><a id="SP1"></a><b>&#167;1. The title of a section. </b>In any section file, there will be a few lines at the top which occur before
the first paragraph of code begins. (The first paragraph begins on the first
@ -654,23 +654,7 @@ correspond. If you really want to monkey with the aspect ratio,
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> = (figure Whatever.jpg at 20 by 100)</span>
</pre>
<p class="commentary firstcommentary"><a id="SP19"></a><b>&#167;19. Audio. </b>To include audio samples, place them as MP3 files in the subdirectory <span class="extract"><span class="extract-syntax">Audio</span></span>
of the web. For example, in the present web,
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> = (audio SP014.mp3)</span>
</pre>
<p class="commentary">produces Space Patrol episode 14, from 1953: "Brain Bank And Space Binoculars" &mdash;
</p>
<p class="center-p"><audio controls>
<source src="SP014.mp3" type="audio/mpeg">
Your browser does not support the audio element.
</audio>
</p>
<p class="commentary firstcommentary"><a id="SP20"></a><b>&#167;20. Carousels. </b>A carousel is a slide-show of (usually but not always) figures; there's a
<p class="commentary firstcommentary"><a id="SP19"></a><b>&#167;19. Carousels. </b>A carousel is a slide-show of (usually but not always) figures; there's a
set of slides with captions, only one of which is visible at a time.
</p>
@ -783,8 +767,34 @@ it can also be <span class="extract"><span class="extract-syntax">above</span></
<span class="plain-syntax"> = (figure furtive.jpg)</span>
<span class="plain-syntax"> = (carousel end)</span>
</pre>
<p class="commentary firstcommentary"><a id="SP21"></a><b>&#167;21. Embedded video. </b>This makes sense only for some HTML-like weave formats, but we can also
cause videos to be embedded:
<p class="commentary firstcommentary"><a id="SP20"></a><b>&#167;20. Video and audio. </b>To include audio samples, place them as MP3 files in the subdirectory <span class="extract"><span class="extract-syntax">Audio</span></span>
of the web. For example, in the present web,
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> = (audio SP014.mp3)</span>
</pre>
<p class="commentary">produces Space Patrol episode 14, from 1953: "Brain Bank And Space Binoculars" &mdash;
</p>
<p class="center-p"><audio controls>
<source src="SP014.mp3" type="audio/mpeg">
Your browser does not support the audio element.
</audio>
</p>
<p class="commentary">Similarly,
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax"> = (video DW014.mp4)</span>
</pre>
<p class="commentary">produces Doctor Who episode 14, from 1963: "The Roof of the World". Still, video
takes up space, so for economy's sake a demonstration is omitted from this manual.
</p>
<p class="commentary firstcommentary"><a id="SP21"></a><b>&#167;21. Embedded video and audio. </b>One way to get around such space limitations is to embed players for video or
audio hosted on some external service. For example:
</p>
<pre class="displayed-code all-displayed-code code-font">