Merge branch 'ganelson:master' into master

This commit is contained in:
David Kinder 2022-06-14 09:27:45 +01:00 committed by GitHub
commit 509f47255c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 73 additions and 29 deletions

View file

@ -1,6 +1,6 @@
# Inweb 7.1.0
v7.1.0-beta+1B09 'Escape to Danger' (3 June 2022)
v7.1.0-beta+1B10 'Escape to Danger' (13 June 2022)
## About Inweb

View file

@ -3856,9 +3856,13 @@ wchar_t * HTML__translate_colour_name(wchar_t *original) ;
void HTML__begin_colour(OUTPUT_STREAM, text_stream *col) ;
#line 888 "inweb/foundation-module/Chapter 5/HTML.w"
void HTML__end_colour(OUTPUT_STREAM) ;
#line 896 "inweb/foundation-module/Chapter 5/HTML.w"
#line 895 "inweb/foundation-module/Chapter 5/HTML.w"
void HTML__begin_span(OUTPUT_STREAM, text_stream *class_name) ;
#line 902 "inweb/foundation-module/Chapter 5/HTML.w"
void HTML__end_span(OUTPUT_STREAM) ;
#line 910 "inweb/foundation-module/Chapter 5/HTML.w"
void HTML__write_xml_safe_text(OUTPUT_STREAM, text_stream *txt) ;
#line 927 "inweb/foundation-module/Chapter 5/HTML.w"
#line 941 "inweb/foundation-module/Chapter 5/HTML.w"
void HTML__put(OUTPUT_STREAM, int charcode) ;
#line 106 "inweb/foundation-module/Chapter 5/Epub Ebooks.w"
ebook * Epub__new(text_stream *title, char *prefix) ;
@ -8981,11 +8985,11 @@ int CommandLine__read_pair_p(text_stream *opt, text_stream *opt_val, int N,
; innocuous = TRUE; break;
case VERSION_CLSW: {
PRINT("inweb");
char *svn = "7.1.0-beta+1B08";
char *svn = "7.1.0-beta+1B09";
if (svn[0]) PRINT(" version %s", svn);
char *vname = "Escape to Danger";
if (vname[0]) PRINT(" '%s'", vname);
char *d = "2 June 2022";
char *d = "3 June 2022";
if (d[0]) PRINT(" (%s)", d);
PRINT("\n");
innocuous = TRUE; break;
@ -14758,7 +14762,19 @@ void HTML__end_colour(OUTPUT_STREAM) {
HTML_CLOSE("span");
}
#line 896 "inweb/foundation-module/Chapter 5/HTML.w"
#line 895 "inweb/foundation-module/Chapter 5/HTML.w"
void HTML__begin_span(OUTPUT_STREAM, text_stream *class_name) {
if (Str__len(class_name) > 0) {
HTML_OPEN_WITH("span", "class=\"%S\"", class_name);
} else {
HTML_OPEN("span");
}
}
void HTML__end_span(OUTPUT_STREAM) {
HTML_CLOSE("span");
}
#line 910 "inweb/foundation-module/Chapter 5/HTML.w"
void HTML__write_xml_safe_text(OUTPUT_STREAM, text_stream *txt) {
LOOP_THROUGH_TEXT(pos, txt) {
wchar_t c = Str__get(pos);
@ -14771,20 +14787,20 @@ void HTML__write_xml_safe_text(OUTPUT_STREAM, text_stream *txt) {
}
}
#line 924 "inweb/foundation-module/Chapter 5/HTML.w"
#line 938 "inweb/foundation-module/Chapter 5/HTML.w"
text_stream *source_ref_fields[3] = { NULL, NULL, NULL }; /* paraphrase, filename, line */
int source_ref_field = -1; /* which field we are buffering */
void HTML__put(OUTPUT_STREAM, int charcode) {
{
#line 951 "inweb/foundation-module/Chapter 5/HTML.w"
#line 965 "inweb/foundation-module/Chapter 5/HTML.w"
if ((source_ref_field >= 0) && (charcode != SOURCE_REF_CHAR)) {
PUT_TO(source_ref_fields[source_ref_field], charcode); return;
}
}
#line 928 "inweb/foundation-module/Chapter 5/HTML.w"
#line 942 "inweb/foundation-module/Chapter 5/HTML.w"
;
switch(charcode) {
case '"': WRITE("""); break;
@ -14802,7 +14818,7 @@ void HTML__put(OUTPUT_STREAM, int charcode) {
#ifdef WORDS_MODULE
case SOURCE_REF_CHAR:
{
#line 956 "inweb/foundation-module/Chapter 5/HTML.w"
#line 970 "inweb/foundation-module/Chapter 5/HTML.w"
source_ref_field++;
if (source_ref_field == 3) {
source_ref_field = -1;
@ -14819,7 +14835,7 @@ void HTML__put(OUTPUT_STREAM, int charcode) {
}
}
#line 943 "inweb/foundation-module/Chapter 5/HTML.w"
#line 957 "inweb/foundation-module/Chapter 5/HTML.w"
; break;
#endif
@ -33205,7 +33221,7 @@ void Ctags__write(web *W, filename *F) {
WRITE("!_TAG_FILE_SORTED\t0\t/0=unsorted, 1=sorted, 2=foldcase/\n");
WRITE("!_TAG_PROGRAM_AUTHOR\tGraham Nelson\t/graham.nelson@mod-langs.ox.ac.uk/\n");
WRITE("!_TAG_PROGRAM_NAME\tinweb\t//\n");
WRITE("!_TAG_PROGRAM_VERSION\t7.1.0-beta+1B08\t/built 2 June 2022/\n");
WRITE("!_TAG_PROGRAM_VERSION\t7.1.0-beta+1B09\t/built 3 June 2022/\n");
}
#line 47 "inweb/Chapter 6/Ctags Support.w"

View file

@ -1,3 +1,3 @@
Prerelease: beta
Build Date: 3 June 2022
Build Number: 1B09
Build Date: 13 June 2022
Build Number: 1B10

View file

@ -88,7 +88,7 @@ access.
</p>
<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">Str::new</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">Str::new</span></span>:<br/><a href="4-sm.html#SP3">&#167;3</a><br/>Debugging Log - <a href="2-dl.html#SP4_1">&#167;4.1</a><br/>Dictionaries - <a href="2-dct.html#SP7_3_1">&#167;7.3.1</a><br/>Command Line Arguments - <a href="3-cla.html#SP6">&#167;6</a>, <a href="3-cla.html#SP11">&#167;11</a><br/>Directories - <a href="3-drc.html#SP4">&#167;4</a><br/>Preprocessor - <a href="4-prp.html#SP3_2_1">&#167;3.2.1</a>, <a href="4-prp.html#SP4_1_3_1_1">&#167;4.1.3.1.1</a>, <a href="4-prp.html#SP4_1_3_1_3">&#167;4.1.3.1.3</a><br/>JSON - <a href="4-jsn.html#SP28">&#167;28</a>, <a href="4-jsn.html#SP32_1">&#167;32.1</a>, <a href="4-jsn.html#SP36">&#167;36</a><br/>HTML - <a href="5-htm.html#SP27_2">&#167;27.2</a><br/>Epub Ebooks - <a href="5-ee.html#SP5">&#167;5</a><br/>Version Numbers - <a href="7-vn.html#SP7">&#167;7</a><br/>Web Structure - <a href="8-ws.html#SP5_2">&#167;5.2</a>, <a href="8-ws.html#SP6_1">&#167;6.1</a>, <a href="8-ws.html#SP7_2_1">&#167;7.2.1</a>, <a href="8-ws.html#SP7_2_2_1">&#167;7.2.2.1</a><br/>Build Files - <a href="8-bf.html#SP3">&#167;3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">void</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="function-syntax">Str::new</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">Str::new</span></span>:<br/><a href="4-sm.html#SP3">&#167;3</a><br/>Debugging Log - <a href="2-dl.html#SP4_1">&#167;4.1</a><br/>Dictionaries - <a href="2-dct.html#SP7_3_1">&#167;7.3.1</a><br/>Command Line Arguments - <a href="3-cla.html#SP6">&#167;6</a>, <a href="3-cla.html#SP11">&#167;11</a><br/>Directories - <a href="3-drc.html#SP4">&#167;4</a><br/>Preprocessor - <a href="4-prp.html#SP3_2_1">&#167;3.2.1</a>, <a href="4-prp.html#SP4_1_3_1_1">&#167;4.1.3.1.1</a>, <a href="4-prp.html#SP4_1_3_1_3">&#167;4.1.3.1.3</a><br/>JSON - <a href="4-jsn.html#SP28">&#167;28</a>, <a href="4-jsn.html#SP32_1">&#167;32.1</a>, <a href="4-jsn.html#SP36">&#167;36</a><br/>HTML - <a href="5-htm.html#SP28_2">&#167;28.2</a><br/>Epub Ebooks - <a href="5-ee.html#SP5">&#167;5</a><br/>Version Numbers - <a href="7-vn.html#SP7">&#167;7</a><br/>Web Structure - <a href="8-ws.html#SP5_2">&#167;5.2</a>, <a href="8-ws.html#SP6_1">&#167;6.1</a>, <a href="8-ws.html#SP7_2_1">&#167;7.2.1</a>, <a href="8-ws.html#SP7_2_2_1">&#167;7.2.2.1</a><br/>Build Files - <a href="8-bf.html#SP3">&#167;3</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">void</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="4-sm.html#SP2" class="function-link"><span class="function-syntax">Str::new_with_capacity</span></a><span class="plain-syntax">(32);</span>
<span class="plain-syntax">}</span>
@ -184,7 +184,7 @@ thing plus a little extra, for efficiency's sake.
<p class="commentary firstcommentary"><a id="SP7" class="paragraph-anchor"></a><b>&#167;7. Converting to integers. </b></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">Str::atoi</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">Str::atoi</span></span>:<br/>Command Line Arguments - <a href="3-cla.html#SP12">&#167;12</a><br/>JSON - <a href="4-jsn.html#SP15">&#167;15</a><br/>HTML - <a href="5-htm.html#SP27_2">&#167;27.2</a><br/>Version Numbers - <a href="7-vn.html#SP10">&#167;10</a><br/>Web Structure - <a href="8-ws.html#SP7_3_3_2">&#167;7.3.3.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">S</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">index</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Str::atoi</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">Str::atoi</span></span>:<br/>Command Line Arguments - <a href="3-cla.html#SP12">&#167;12</a><br/>JSON - <a href="4-jsn.html#SP15">&#167;15</a><br/>HTML - <a href="5-htm.html#SP28_2">&#167;28.2</a><br/>Version Numbers - <a href="7-vn.html#SP10">&#167;10</a><br/>Web Structure - <a href="8-ws.html#SP7_3_3_2">&#167;7.3.3.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">S</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">index</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">char</span><span class="plain-syntax"> </span><span class="identifier-syntax">buffer</span><span class="plain-syntax">[32];</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"> = </span><span class="constant-syntax">0</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">string_position</span><span class="plain-syntax"> </span><span class="identifier-syntax">P</span><span class="plain-syntax"> = </span><a href="4-sm.html#SP10" class="function-link"><span class="function-syntax">Str::at</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">S</span><span class="plain-syntax">, </span><span class="identifier-syntax">index</span><span class="plain-syntax">);</span>
@ -198,7 +198,7 @@ thing plus a little extra, for efficiency's sake.
</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">Str::len</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">Str::len</span></span>:<br/><a href="4-sm.html#SP3">&#167;3</a>, <a href="4-sm.html#SP7">&#167;7</a>, <a href="4-sm.html#SP10">&#167;10</a>, <a href="4-sm.html#SP11">&#167;11</a>, <a href="4-sm.html#SP12">&#167;12</a>, <a href="4-sm.html#SP13">&#167;13</a>, <a href="4-sm.html#SP14">&#167;14</a>, <a href="4-sm.html#SP15">&#167;15</a>, <a href="4-sm.html#SP17">&#167;17</a>, <a href="4-sm.html#SP19">&#167;19</a>, <a href="4-sm.html#SP20">&#167;20</a>, <a href="4-sm.html#SP21">&#167;21</a>, <a href="4-sm.html#SP22">&#167;22</a>, <a href="4-sm.html#SP24">&#167;24</a>, <a href="4-sm.html#SP25">&#167;25</a>, <a href="4-sm.html#SP26">&#167;26</a><br/>Debugging Log - <a href="2-dl.html#SP9">&#167;9</a><br/>Command Line Arguments - <a href="3-cla.html#SP13">&#167;13</a>, <a href="3-cla.html#SP14">&#167;14</a>, <a href="3-cla.html#SP14_1">&#167;14.1</a><br/>Pathnames - <a href="3-pth.html#SP4">&#167;4</a>, <a href="3-pth.html#SP5">&#167;5</a>, <a href="3-pth.html#SP7">&#167;7</a>, <a href="3-pth.html#SP8">&#167;8</a><br/>Filenames - <a href="3-fln.html#SP2">&#167;2</a>, <a href="3-fln.html#SP3">&#167;3</a>, <a href="3-fln.html#SP5">&#167;5</a>, <a href="3-fln.html#SP8">&#167;8</a>, <a href="3-fln.html#SP9">&#167;9</a><br/>Preprocessor - <a href="4-prp.html#SP3_3">&#167;3.3</a>, <a href="4-prp.html#SP4">&#167;4</a>, <a href="4-prp.html#SP4_1_1">&#167;4.1.1</a><br/>Tries and Avinues - <a href="4-taa.html#SP2_1">&#167;2.1</a><br/>Pattern Matching - <a href="4-pm.html#SP3">&#167;3</a>, <a href="4-pm.html#SP4">&#167;4</a>, <a href="4-pm.html#SP10">&#167;10</a>, <a href="4-pm.html#SP11_3">&#167;11.3</a>, <a href="4-pm.html#SP14">&#167;14</a><br/>JSON - <a href="4-jsn.html#SP10">&#167;10</a>, <a href="4-jsn.html#SP28">&#167;28</a>, <a href="4-jsn.html#SP31">&#167;31</a>, <a href="4-jsn.html#SP36">&#167;36</a>, <a href="4-jsn.html#SP37">&#167;37</a><br/>HTML - <a href="5-htm.html#SP8">&#167;8</a>, <a href="5-htm.html#SP17">&#167;17</a><br/>Epub Ebooks - <a href="5-ee.html#SP7_1">&#167;7.1</a>, <a href="5-ee.html#SP7_2_3">&#167;7.2.3</a>, <a href="5-ee.html#SP7_2_4">&#167;7.2.4</a><br/>Version Numbers - <a href="7-vn.html#SP7">&#167;7</a>, <a href="7-vn.html#SP7_1">&#167;7.1</a>, <a href="7-vn.html#SP10">&#167;10</a><br/>Web Structure - <a href="8-ws.html#SP5_4">&#167;5.4</a>, <a href="8-ws.html#SP5_4_1">&#167;5.4.1</a>, <a href="8-ws.html#SP5_4_1_1">&#167;5.4.1.1</a>, <a href="8-ws.html#SP5_4_1_2">&#167;5.4.1.2</a>, <a href="8-ws.html#SP7_3">&#167;7.3</a>, <a href="8-ws.html#SP7_3_3_1">&#167;7.3.3.1</a>, <a href="8-ws.html#SP7_2_2_3_1">&#167;7.2.2.3.1</a>, <a href="8-ws.html#SP7_2_2_4">&#167;7.2.2.4</a><br/>Bibliographic Data for Webs - <a href="8-bdfw.html#SP5">&#167;5</a>, <a href="8-bdfw.html#SP6">&#167;6</a><br/>Build Files - <a href="8-bf.html#SP3">&#167;3</a>, <a href="8-bf.html#SP4">&#167;4</a>, <a href="8-bf.html#SP5">&#167;5</a>, <a href="8-bf.html#SP6">&#167;6</a>, <a href="8-bf.html#SP9">&#167;9</a><br/>Simple Tangler - <a href="8-st.html#SP7">&#167;7</a>, <a href="8-st.html#SP7_1">&#167;7.1</a>, <a href="8-st.html#SP7_2_4">&#167;7.2.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">S</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="function-syntax">Str::len</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">Str::len</span></span>:<br/><a href="4-sm.html#SP3">&#167;3</a>, <a href="4-sm.html#SP7">&#167;7</a>, <a href="4-sm.html#SP10">&#167;10</a>, <a href="4-sm.html#SP11">&#167;11</a>, <a href="4-sm.html#SP12">&#167;12</a>, <a href="4-sm.html#SP13">&#167;13</a>, <a href="4-sm.html#SP14">&#167;14</a>, <a href="4-sm.html#SP15">&#167;15</a>, <a href="4-sm.html#SP17">&#167;17</a>, <a href="4-sm.html#SP19">&#167;19</a>, <a href="4-sm.html#SP20">&#167;20</a>, <a href="4-sm.html#SP21">&#167;21</a>, <a href="4-sm.html#SP22">&#167;22</a>, <a href="4-sm.html#SP24">&#167;24</a>, <a href="4-sm.html#SP25">&#167;25</a>, <a href="4-sm.html#SP26">&#167;26</a><br/>Debugging Log - <a href="2-dl.html#SP9">&#167;9</a><br/>Command Line Arguments - <a href="3-cla.html#SP13">&#167;13</a>, <a href="3-cla.html#SP14">&#167;14</a>, <a href="3-cla.html#SP14_1">&#167;14.1</a><br/>Pathnames - <a href="3-pth.html#SP4">&#167;4</a>, <a href="3-pth.html#SP5">&#167;5</a>, <a href="3-pth.html#SP7">&#167;7</a>, <a href="3-pth.html#SP8">&#167;8</a><br/>Filenames - <a href="3-fln.html#SP2">&#167;2</a>, <a href="3-fln.html#SP3">&#167;3</a>, <a href="3-fln.html#SP5">&#167;5</a>, <a href="3-fln.html#SP8">&#167;8</a>, <a href="3-fln.html#SP9">&#167;9</a><br/>Preprocessor - <a href="4-prp.html#SP3_3">&#167;3.3</a>, <a href="4-prp.html#SP4">&#167;4</a>, <a href="4-prp.html#SP4_1_1">&#167;4.1.1</a><br/>Tries and Avinues - <a href="4-taa.html#SP2_1">&#167;2.1</a><br/>Pattern Matching - <a href="4-pm.html#SP3">&#167;3</a>, <a href="4-pm.html#SP4">&#167;4</a>, <a href="4-pm.html#SP10">&#167;10</a>, <a href="4-pm.html#SP11_3">&#167;11.3</a>, <a href="4-pm.html#SP14">&#167;14</a><br/>JSON - <a href="4-jsn.html#SP10">&#167;10</a>, <a href="4-jsn.html#SP28">&#167;28</a>, <a href="4-jsn.html#SP31">&#167;31</a>, <a href="4-jsn.html#SP36">&#167;36</a>, <a href="4-jsn.html#SP37">&#167;37</a><br/>HTML - <a href="5-htm.html#SP8">&#167;8</a>, <a href="5-htm.html#SP17">&#167;17</a>, <a href="5-htm.html#SP26">&#167;26</a><br/>Epub Ebooks - <a href="5-ee.html#SP7_1">&#167;7.1</a>, <a href="5-ee.html#SP7_2_3">&#167;7.2.3</a>, <a href="5-ee.html#SP7_2_4">&#167;7.2.4</a><br/>Version Numbers - <a href="7-vn.html#SP7">&#167;7</a>, <a href="7-vn.html#SP7_1">&#167;7.1</a>, <a href="7-vn.html#SP10">&#167;10</a><br/>Web Structure - <a href="8-ws.html#SP5_4">&#167;5.4</a>, <a href="8-ws.html#SP5_4_1">&#167;5.4.1</a>, <a href="8-ws.html#SP5_4_1_1">&#167;5.4.1.1</a>, <a href="8-ws.html#SP5_4_1_2">&#167;5.4.1.2</a>, <a href="8-ws.html#SP7_3">&#167;7.3</a>, <a href="8-ws.html#SP7_3_3_1">&#167;7.3.3.1</a>, <a href="8-ws.html#SP7_2_2_3_1">&#167;7.2.2.3.1</a>, <a href="8-ws.html#SP7_2_2_4">&#167;7.2.2.4</a><br/>Bibliographic Data for Webs - <a href="8-bdfw.html#SP5">&#167;5</a>, <a href="8-bdfw.html#SP6">&#167;6</a><br/>Build Files - <a href="8-bf.html#SP3">&#167;3</a>, <a href="8-bf.html#SP4">&#167;4</a>, <a href="8-bf.html#SP5">&#167;5</a>, <a href="8-bf.html#SP6">&#167;6</a>, <a href="8-bf.html#SP9">&#167;9</a><br/>Simple Tangler - <a href="8-st.html#SP7">&#167;7</a>, <a href="8-st.html#SP7_1">&#167;7.1</a>, <a href="8-st.html#SP7_2_4">&#167;7.2.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">S</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="2-str.html#SP38" class="function-link"><span class="function-syntax">Streams::get_position</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">S</span><span class="plain-syntax">);</span>
<span class="plain-syntax">}</span>
</pre>
@ -277,7 +277,7 @@ at those positions may well not be, of course.)
</p>
<pre class="displayed-code all-displayed-code code-font">
<span class="identifier-syntax">wchar_t</span><span class="plain-syntax"> </span><span class="function-syntax">Str::get</span><button class="popup" onclick="togglePopup('usagePopup15')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup15">Usage of <span class="code-font"><span class="function-syntax">Str::get</span></span>:<br/><a href="4-sm.html#SP7">&#167;7</a>, <a href="4-sm.html#SP17">&#167;17</a>, <a href="4-sm.html#SP20">&#167;20</a>, <a href="4-sm.html#SP22">&#167;22</a>, <a href="4-sm.html#SP23">&#167;23</a>, <a href="4-sm.html#SP24">&#167;24</a>, <a href="4-sm.html#SP25">&#167;25</a>, <a href="4-sm.html#SP26">&#167;26</a><br/>Dictionaries - <a href="2-dct.html#SP4">&#167;4</a><br/>Pathnames - <a href="3-pth.html#SP4">&#167;4</a>, <a href="3-pth.html#SP5">&#167;5</a><br/>Filenames - <a href="3-fln.html#SP2">&#167;2</a>, <a href="3-fln.html#SP3">&#167;3</a>, <a href="3-fln.html#SP7">&#167;7</a>, <a href="3-fln.html#SP8">&#167;8</a>, <a href="3-fln.html#SP9">&#167;9</a><br/>Shell - <a href="3-shl.html#SP1">&#167;1</a><br/>Preprocessor - <a href="4-prp.html#SP3_1">&#167;3.1</a>, <a href="4-prp.html#SP5">&#167;5</a>, <a href="4-prp.html#SP18_1">&#167;18.1</a><br/>Pattern Matching - <a href="4-pm.html#SP5">&#167;5</a><br/>JSON - <a href="4-jsn.html#SP18">&#167;18</a><br/>HTML - <a href="5-htm.html#SP26">&#167;26</a><br/>Epub Ebooks - <a href="5-ee.html#SP5">&#167;5</a><br/>Version Numbers - <a href="7-vn.html#SP7">&#167;7</a>, <a href="7-vn.html#SP10">&#167;10</a><br/>Bibliographic Data for Webs - <a href="8-bdfw.html#SP7_2">&#167;7.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">string_position</span><span class="plain-syntax"> </span><span class="identifier-syntax">P</span><span class="plain-syntax">) {</span>
<span class="identifier-syntax">wchar_t</span><span class="plain-syntax"> </span><span class="function-syntax">Str::get</span><button class="popup" onclick="togglePopup('usagePopup15')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup15">Usage of <span class="code-font"><span class="function-syntax">Str::get</span></span>:<br/><a href="4-sm.html#SP7">&#167;7</a>, <a href="4-sm.html#SP17">&#167;17</a>, <a href="4-sm.html#SP20">&#167;20</a>, <a href="4-sm.html#SP22">&#167;22</a>, <a href="4-sm.html#SP23">&#167;23</a>, <a href="4-sm.html#SP24">&#167;24</a>, <a href="4-sm.html#SP25">&#167;25</a>, <a href="4-sm.html#SP26">&#167;26</a><br/>Dictionaries - <a href="2-dct.html#SP4">&#167;4</a><br/>Pathnames - <a href="3-pth.html#SP4">&#167;4</a>, <a href="3-pth.html#SP5">&#167;5</a><br/>Filenames - <a href="3-fln.html#SP2">&#167;2</a>, <a href="3-fln.html#SP3">&#167;3</a>, <a href="3-fln.html#SP7">&#167;7</a>, <a href="3-fln.html#SP8">&#167;8</a>, <a href="3-fln.html#SP9">&#167;9</a><br/>Shell - <a href="3-shl.html#SP1">&#167;1</a><br/>Preprocessor - <a href="4-prp.html#SP3_1">&#167;3.1</a>, <a href="4-prp.html#SP5">&#167;5</a>, <a href="4-prp.html#SP18_1">&#167;18.1</a><br/>Pattern Matching - <a href="4-pm.html#SP5">&#167;5</a><br/>JSON - <a href="4-jsn.html#SP18">&#167;18</a><br/>HTML - <a href="5-htm.html#SP27">&#167;27</a><br/>Epub Ebooks - <a href="5-ee.html#SP5">&#167;5</a><br/>Version Numbers - <a href="7-vn.html#SP7">&#167;7</a>, <a href="7-vn.html#SP10">&#167;10</a><br/>Bibliographic Data for Webs - <a href="8-bdfw.html#SP7_2">&#167;7.2</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">string_position</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">if</span><span class="plain-syntax"> ((</span><span class="identifier-syntax">P</span><span class="plain-syntax">.</span><span class="identifier-syntax">S</span><span class="plain-syntax"> == </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">) || (</span><span class="identifier-syntax">P</span><span class="plain-syntax">.</span><span class="element-syntax">index</span><span class="plain-syntax"> &lt; </span><span class="constant-syntax">0</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="constant-syntax">0</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><a href="2-str.html#SP40" class="function-link"><span class="function-syntax">Streams::get_char_at_index</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">P</span><span class="plain-syntax">.</span><span class="element-syntax">S</span><span class="plain-syntax">, </span><span class="identifier-syntax">P</span><span class="plain-syntax">.</span><span class="element-syntax">index</span><span class="plain-syntax">);</span>
<span class="plain-syntax">}</span>
@ -319,7 +319,7 @@ at those positions may well not be, of course.)
<p class="commentary firstcommentary"><a id="SP15" class="paragraph-anchor"></a><b>&#167;15. Truncation. </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">Str::clear</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">Str::clear</span></span>:<br/><a href="4-sm.html#SP16">&#167;16</a>, <a href="4-sm.html#SP17">&#167;17</a>, <a href="4-sm.html#SP18">&#167;18</a>, <a href="4-sm.html#SP25">&#167;25</a><br/>Directories - <a href="3-drc.html#SP2">&#167;2</a><br/>Text Files - <a href="4-tf.html#SP6">&#167;6</a><br/>Preprocessor - <a href="4-prp.html#SP4_1_3_1_1">&#167;4.1.3.1.1</a>, <a href="4-prp.html#SP11_2">&#167;11.2</a>, <a href="4-prp.html#SP13">&#167;13</a>, <a href="4-prp.html#SP17">&#167;17</a>, <a href="4-prp.html#SP18_1">&#167;18.1</a><br/>Pattern Matching - <a href="4-pm.html#SP11_6">&#167;11.6</a><br/>JSON - <a href="4-jsn.html#SP37">&#167;37</a><br/>HTML - <a href="5-htm.html#SP27_2">&#167;27.2</a><br/>Version Numbers - <a href="7-vn.html#SP7_1">&#167;7.1</a><br/>Web Structure - <a href="8-ws.html#SP5_4_1">&#167;5.4.1</a>, <a href="8-ws.html#SP5_4_1_2">&#167;5.4.1.2</a>, <a href="8-ws.html#SP7_3_2_1">&#167;7.3.2.1</a>, <a href="8-ws.html#SP7_3_3_2">&#167;7.3.3.2</a>, <a href="8-ws.html#SP7_2_2_1">&#167;7.2.2.1</a>, <a href="8-ws.html#SP7_2_2_4">&#167;7.2.2.4</a><br/>Build Files - <a href="8-bf.html#SP8">&#167;8</a>, <a href="8-bf.html#SP9">&#167;9</a><br/>Simple Tangler - <a href="8-st.html#SP7_2">&#167;7.2</a>, <a href="8-st.html#SP7_2_5_1">&#167;7.2.5.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">S</span><span class="plain-syntax">) {</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Str::clear</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">Str::clear</span></span>:<br/><a href="4-sm.html#SP16">&#167;16</a>, <a href="4-sm.html#SP17">&#167;17</a>, <a href="4-sm.html#SP18">&#167;18</a>, <a href="4-sm.html#SP25">&#167;25</a><br/>Directories - <a href="3-drc.html#SP2">&#167;2</a><br/>Text Files - <a href="4-tf.html#SP6">&#167;6</a><br/>Preprocessor - <a href="4-prp.html#SP4_1_3_1_1">&#167;4.1.3.1.1</a>, <a href="4-prp.html#SP11_2">&#167;11.2</a>, <a href="4-prp.html#SP13">&#167;13</a>, <a href="4-prp.html#SP17">&#167;17</a>, <a href="4-prp.html#SP18_1">&#167;18.1</a><br/>Pattern Matching - <a href="4-pm.html#SP11_6">&#167;11.6</a><br/>JSON - <a href="4-jsn.html#SP37">&#167;37</a><br/>HTML - <a href="5-htm.html#SP28_2">&#167;28.2</a><br/>Version Numbers - <a href="7-vn.html#SP7_1">&#167;7.1</a><br/>Web Structure - <a href="8-ws.html#SP5_4_1">&#167;5.4.1</a>, <a href="8-ws.html#SP5_4_1_2">&#167;5.4.1.2</a>, <a href="8-ws.html#SP7_3_2_1">&#167;7.3.2.1</a>, <a href="8-ws.html#SP7_3_3_2">&#167;7.3.3.2</a>, <a href="8-ws.html#SP7_2_2_1">&#167;7.2.2.1</a>, <a href="8-ws.html#SP7_2_2_4">&#167;7.2.2.4</a><br/>Build Files - <a href="8-bf.html#SP8">&#167;8</a>, <a href="8-bf.html#SP9">&#167;9</a><br/>Simple Tangler - <a href="8-st.html#SP7_2">&#167;7.2</a>, <a href="8-st.html#SP7_2_5_1">&#167;7.2.5.1</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">S</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><a href="4-sm.html#SP15" class="function-link"><span class="function-syntax">Str::truncate</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">S</span><span class="plain-syntax">, </span><span class="constant-syntax">0</span><span class="plain-syntax">);</span>
<span class="plain-syntax">}</span>

View file

@ -50,7 +50,7 @@ function togglePopup(material_id) {
<ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="index.html">foundation</a></li><li><a href="index.html#5">Chapter 5: Generating Websites</a></li><li><b>HTML</b></li></ul></div>
<p class="purpose">Utility functions for writing HTML.</p>
<ul class="toc"><li><a href="5-htm.html#SP1">&#167;1. Header and footer</a></li><li><a href="5-htm.html#SP2">&#167;2. Abstraction</a></li><li><a href="5-htm.html#SP9">&#167;9. Head</a></li><li><a href="5-htm.html#SP11">&#167;11. Scripts and styles</a></li><li><a href="5-htm.html#SP13">&#167;13. Body</a></li><li><a href="5-htm.html#SP14">&#167;14. Divisions</a></li><li><a href="5-htm.html#SP15">&#167;15. Images</a></li><li><a href="5-htm.html#SP17">&#167;17. Links</a></li><li><a href="5-htm.html#SP19">&#167;19. Tables</a></li><li><a href="5-htm.html#SP21">&#167;21. Round-rects</a></li><li><a href="5-htm.html#SP22">&#167;22. Miscellaneous</a></li><li><a href="5-htm.html#SP23">&#167;23. HTML colours</a></li><li><a href="5-htm.html#SP26">&#167;26. Writing text</a></li></ul><hr class="tocbar">
<ul class="toc"><li><a href="5-htm.html#SP1">&#167;1. Header and footer</a></li><li><a href="5-htm.html#SP2">&#167;2. Abstraction</a></li><li><a href="5-htm.html#SP9">&#167;9. Head</a></li><li><a href="5-htm.html#SP11">&#167;11. Scripts and styles</a></li><li><a href="5-htm.html#SP13">&#167;13. Body</a></li><li><a href="5-htm.html#SP14">&#167;14. Divisions</a></li><li><a href="5-htm.html#SP15">&#167;15. Images</a></li><li><a href="5-htm.html#SP17">&#167;17. Links</a></li><li><a href="5-htm.html#SP19">&#167;19. Tables</a></li><li><a href="5-htm.html#SP21">&#167;21. Round-rects</a></li><li><a href="5-htm.html#SP22">&#167;22. Miscellaneous</a></li><li><a href="5-htm.html#SP23">&#167;23. HTML colours</a></li><li><a href="5-htm.html#SP26">&#167;26. Spans by class</a></li><li><a href="5-htm.html#SP27">&#167;27. Writing text</a></li></ul><hr class="tocbar">
<p class="commentary firstcommentary"><a id="SP1" class="paragraph-anchor"></a><b>&#167;1. Header and footer. </b></p>
@ -509,7 +509,7 @@ these in its World index, for instance, to clarify what abbreviations mean.)
</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">HTML::icon_with_tooltip</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">HTML::icon_with_tooltip</span></span>:<br/><a href="5-htm.html#SP27">&#167;27</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">icon_name</span><span class="plain-syntax">,</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::icon_with_tooltip</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">HTML::icon_with_tooltip</span></span>:<br/><a href="5-htm.html#SP28">&#167;28</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">icon_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">tip</span><span class="plain-syntax">, </span><span class="reserved-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">tip2</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">img</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="identifier-syntax">img</span><span class="plain-syntax">, </span><span class="string-syntax">"border=0 src=%S "</span><span class="plain-syntax">, </span><span class="identifier-syntax">icon_name</span><span class="plain-syntax">);</span>
@ -958,7 +958,21 @@ need to run quickly.
<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>
</pre>
<p class="commentary firstcommentary"><a id="SP26" class="paragraph-anchor"></a><b>&#167;26. Writing text. </b>To begin with, to XML:
<p class="commentary firstcommentary"><a id="SP26" class="paragraph-anchor"></a><b>&#167;26. Spans by class. </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">HTML::begin_span</span><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">class_name</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><a href="4-sm.html#SP8" class="function-link"><span class="function-syntax">Str::len</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">class_name</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">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"span"</span><span class="plain-syntax">, </span><span class="string-syntax">"class=\"%S\""</span><span class="plain-syntax">, </span><span class="identifier-syntax">class_name</span><span class="plain-syntax">);</span>
<span class="plain-syntax"> } </span><span class="reserved-syntax">else</span><span class="plain-syntax"> {</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN</span><span class="plain-syntax">(</span><span class="string-syntax">"span"</span><span class="plain-syntax">);</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">HTML::end_span</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</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">"span"</span><span class="plain-syntax">);</span>
<span class="plain-syntax">}</span>
</pre>
<p class="commentary firstcommentary"><a id="SP27" class="paragraph-anchor"></a><b>&#167;27. Writing text. </b>To begin with, to XML:
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -974,7 +988,7 @@ need to run quickly.
<span class="plain-syntax"> }</span>
<span class="plain-syntax">}</span>
</pre>
<p class="commentary firstcommentary"><a id="SP27" class="paragraph-anchor"></a><b>&#167;27. </b>And now to HTML. This would be very similar, except:
<p class="commentary firstcommentary"><a id="SP28" class="paragraph-anchor"></a><b>&#167;28. </b>And now to HTML. This would be very similar, except:
</p>
<ul class="items"><li>(a) if the <span class="extract"><span class="extract-syntax">words</span></span> and <span class="extract"><span class="extract-syntax">html</span></span> modules are both present, we recognise
@ -996,7 +1010,7 @@ respectively. These do not occur in Inform source text.
<span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">source_ref_field</span><span class="plain-syntax"> = -1; </span><span class="comment-syntax"> which field we are buffering</span>
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">HTML::put</span><span class="plain-syntax">(</span><span class="constant-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">int</span><span class="plain-syntax"> </span><span class="identifier-syntax">charcode</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-htm.html#SP27_1" class="named-paragraph-link"><span class="named-paragraph">Buffer into one of the source reference fields</span><span class="named-paragraph-number">27.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-htm.html#SP28_1" class="named-paragraph-link"><span class="named-paragraph">Buffer into one of the source reference fields</span><span class="named-paragraph-number">28.1</span></a></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">charcode</span><span class="plain-syntax">) {</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="character-syntax">'"'</span><span class="plain-syntax">: </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"&amp;quot;"</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="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><span class="reserved-syntax">break</span><span class="plain-syntax">;</span>
@ -1011,14 +1025,14 @@ respectively. These do not occur in Inform source text.
<span class="plain-syntax"> #</span><span class="identifier-syntax">endif</span>
<span class="plain-syntax"> #</span><span class="identifier-syntax">ifdef</span><span class="plain-syntax"> </span><span class="identifier-syntax">WORDS_MODULE</span>
<span class="plain-syntax"> </span><span class="reserved-syntax">case</span><span class="plain-syntax"> </span><span class="identifier-syntax">SOURCE_REF_CHAR:</span><span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-htm.html#SP27_2" class="named-paragraph-link"><span class="named-paragraph">Deal with a source reference field divider</span><span class="named-paragraph-number">27.2</span></a></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">SOURCE_REF_CHAR:</span><span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="5-htm.html#SP28_2" class="named-paragraph-link"><span class="named-paragraph">Deal with a source reference field divider</span><span class="named-paragraph-number">28.2</span></a></span><span class="plain-syntax">; </span><span class="reserved-syntax">break</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> #</span><span class="identifier-syntax">endif</span>
<span class="plain-syntax"> </span><span class="identifier-syntax">default:</span><span class="plain-syntax"> </span><span class="identifier-syntax">PUT</span><span class="plain-syntax">(</span><span class="identifier-syntax">charcode</span><span class="plain-syntax">); </span><span class="reserved-syntax">break</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> }</span>
<span class="plain-syntax">}</span>
</pre>
<p class="commentary firstcommentary"><a id="SP27_1" class="paragraph-anchor"></a><b>&#167;27.1. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Buffer into one of the source reference fields</span><span class="named-paragraph-number">27.1</span></span><span class="comment-syntax"> =</span>
<p class="commentary firstcommentary"><a id="SP28_1" class="paragraph-anchor"></a><b>&#167;28.1. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Buffer into one of the source reference fields</span><span class="named-paragraph-number">28.1</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -1026,8 +1040,8 @@ respectively. These do not occur in Inform source text.
<span class="plain-syntax"> </span><span class="identifier-syntax">PUT_TO</span><span class="plain-syntax">(</span><span class="identifier-syntax">source_ref_fields</span><span class="plain-syntax">[</span><span class="identifier-syntax">source_ref_field</span><span class="plain-syntax">], </span><span class="identifier-syntax">charcode</span><span class="plain-syntax">); </span><span class="reserved-syntax">return</span><span class="plain-syntax">;</span>
<span class="plain-syntax"> }</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-htm.html#SP27">&#167;27</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP27_2" class="paragraph-anchor"></a><b>&#167;27.2. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a source reference field divider</span><span class="named-paragraph-number">27.2</span></span><span class="comment-syntax"> =</span>
<ul class="endnotetexts"><li>This code is used in <a href="5-htm.html#SP28">&#167;28</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP28_2" class="paragraph-anchor"></a><b>&#167;28.2. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Deal with a source reference field divider</span><span class="named-paragraph-number">28.2</span></span><span class="comment-syntax"> =</span>
</p>
<pre class="displayed-code all-displayed-code code-font">
@ -1046,7 +1060,7 @@ respectively. These do not occur in Inform source text.
<span class="plain-syntax"> </span><a href="4-sm.html#SP15" class="function-link"><span class="function-syntax">Str::clear</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">source_ref_fields</span><span class="plain-syntax">[</span><span class="identifier-syntax">source_ref_field</span><span class="plain-syntax">]);</span>
<span class="plain-syntax"> }</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-htm.html#SP27">&#167;27</a>.</li></ul>
<ul class="endnotetexts"><li>This code is used in <a href="5-htm.html#SP28">&#167;28</a>.</li></ul>
<nav role="progress"><div class="progresscontainer">
<ul class="progressbar"><li class="progressprev"><a href="4-jsn.html">&#10094;</a></li><li class="progresschapter"><a href="P-abgtf.html">P</a></li><li class="progresschapter"><a href="1-fm.html">1</a></li><li class="progresschapter"><a href="2-dl.html">2</a></li><li class="progresschapter"><a href="3-em.html">3</a></li><li class="progresschapter"><a href="4-chr.html">4</a></li><li class="progresscurrentchapter">5</li><li class="progresscurrent">htm</li><li class="progresssection"><a href="5-ee.html">ee</a></li><li class="progresschapter"><a href="6-bf.html">6</a></li><li class="progresschapter"><a href="7-vn.html">7</a></li><li class="progresschapter"><a href="8-ws.html">8</a></li><li class="progressnext"><a href="5-ee.html">&#10095;</a></li></ul></div>
</nav><!--End of weave-->

Binary file not shown.

View file

@ -889,6 +889,20 @@ void HTML::end_colour(OUTPUT_STREAM) {
HTML_CLOSE("span");
}
@h Spans by class.
=
void HTML::begin_span(OUTPUT_STREAM, text_stream *class_name) {
if (Str::len(class_name) > 0) {
HTML_OPEN_WITH("span", "class=\"%S\"", class_name);
} else {
HTML_OPEN("span");
}
}
void HTML::end_span(OUTPUT_STREAM) {
HTML_CLOSE("span");
}
@h Writing text.
To begin with, to XML: