mirror of
https://github.com/ganelson/inform.git
synced 2024-06-17 07:40:47 +03:00
Preparatory work for in-app testing
This commit is contained in:
parent
af93c8be08
commit
02b84ca8d9
|
@ -1,6 +1,6 @@
|
|||
# Inform 7
|
||||
|
||||
[Version](notes/versioning.md): 10.2.0-beta+6X20 'Krypton' (21 September 2023)
|
||||
[Version](notes/versioning.md): 10.2.0-beta+6X21 'Krypton' (25 September 2023)
|
||||
|
||||
## About Inform
|
||||
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
Prerelease: beta
|
||||
Build Date: 21 September 2023
|
||||
Build Number: 6X20
|
||||
Build Date: 25 September 2023
|
||||
Build Number: 6X21
|
||||
|
|
|
@ -132,11 +132,10 @@ if they would prefer that:
|
|||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="identifier-syntax">filename</span><span class="plain-syntax"> *</span><span class="function-syntax">InstalledFiles::varied_by_platform</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">InstalledFiles::varied_by_platform</span></span>:<br/><a href="2-if.html#SP1">§1</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">pathname</span><span class="plain-syntax"> *</span><span class="identifier-syntax">models</span><span class="plain-syntax">, </span><span class="identifier-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="identifier-syntax">filename</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">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">variation</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">variation</span><span class="plain-syntax">, </span><span class="string-syntax">"%s-%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">PLATFORM_STRING</span><span class="plain-syntax">, </span><span class="identifier-syntax">leafname</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="comment-syntax"> NB: PLATFORM_STRING is a C string, so that %s is correct</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">F</span><span class="plain-syntax"> = </span><span class="identifier-syntax">Filenames::in</span><span class="plain-syntax">(</span><span class="identifier-syntax">models</span><span class="plain-syntax">, </span><span class="identifier-syntax">variation</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">F</span><span class="plain-syntax"> = </span><span class="identifier-syntax">Filenames::in</span><span class="plain-syntax">(</span><span class="identifier-syntax">models</span><span class="plain-syntax">, </span><span class="identifier-syntax">variation</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">TextFiles::exists</span><span class="plain-syntax">(</span><span class="identifier-syntax">F</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">) </span><span class="identifier-syntax">F</span><span class="plain-syntax"> = </span><span class="identifier-syntax">Filenames::in</span><span class="plain-syntax">(</span><span class="identifier-syntax">models</span><span class="plain-syntax">, </span><span class="identifier-syntax">leafname</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">variation</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">F</span><span class="plain-syntax">;</span>
|
||||
|
@ -178,11 +177,9 @@ if they would prefer that:
|
|||
|
||||
<span class="identifier-syntax">filename</span><span class="plain-syntax"> *</span><span class="function-syntax">InstalledFiles::varied_by_named_platform</span><span class="plain-syntax">(</span><span class="identifier-syntax">pathname</span><span class="plain-syntax"> *</span><span class="identifier-syntax">models</span><span class="plain-syntax">, </span><span class="identifier-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="identifier-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">platform</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">filename</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">TEMPORARY_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">variation</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">variation</span><span class="plain-syntax">, </span><span class="string-syntax">"%S-%S"</span><span class="plain-syntax">, </span><span class="identifier-syntax">platform</span><span class="plain-syntax">, </span><span class="identifier-syntax">leafname</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="comment-syntax"> NB: PLATFORM_STRING is a C string, so that %s is correct</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">F</span><span class="plain-syntax"> = </span><span class="identifier-syntax">Filenames::in</span><span class="plain-syntax">(</span><span class="identifier-syntax">models</span><span class="plain-syntax">, </span><span class="identifier-syntax">variation</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">F</span><span class="plain-syntax"> = </span><span class="identifier-syntax">Filenames::in</span><span class="plain-syntax">(</span><span class="identifier-syntax">models</span><span class="plain-syntax">, </span><span class="identifier-syntax">variation</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">TextFiles::exists</span><span class="plain-syntax">(</span><span class="identifier-syntax">F</span><span class="plain-syntax">) == </span><span class="identifier-syntax">FALSE</span><span class="plain-syntax">) </span><span class="identifier-syntax">F</span><span class="plain-syntax"> = </span><span class="identifier-syntax">Filenames::in</span><span class="plain-syntax">(</span><span class="identifier-syntax">models</span><span class="plain-syntax">, </span><span class="identifier-syntax">leafname</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">variation</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">F</span><span class="plain-syntax">;</span>
|
||||
|
|
|
@ -239,7 +239,7 @@ error in this case.
|
|||
<span class="plain-syntax"> </span><a href="../../../inweb/foundation-module/3-em.html#SP2" class="function-link"><span class="function-syntax">Errors::fatal</span></a><span class="plain-syntax">(</span><span class="string-syntax">"need to specify '-document-to' directory"</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">compiled_documentation</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cd</span><span class="plain-syntax"> = </span><a href="../supervisor-module/7-dc.html#SP1" class="function-link"><span class="function-syntax">DocumentationCompiler::compile_from_file</span></a><span class="plain-syntax">(</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">documentation_source</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">documentation_sitemap</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">cd</span><span class="plain-syntax">) </span><a href="../supervisor-module/7-dr.html#SP2" class="function-link"><span class="function-syntax">DocumentationRenderer::as_HTML</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">documentation_dest</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</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">cd</span><span class="plain-syntax">) </span><a href="../supervisor-module/7-dr.html#SP2" class="function-link"><span class="function-syntax">DocumentationRenderer::as_HTML</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">documentation_dest</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</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>
|
||||
</pre>
|
||||
<ul class="endnotetexts"><li>This code is used in <a href="1-mn.html#SP2">§2</a>.</li></ul>
|
||||
<p class="commentary firstcommentary"><a id="SP2_7" class="paragraph-anchor"></a><b>§2.7. </b><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Document from a set</span><span class="named-paragraph-number">2.7</span></span><span class="comment-syntax"> =</span>
|
||||
|
@ -250,7 +250,7 @@ error in this case.
|
|||
<span class="plain-syntax"> </span><a href="../../../inweb/foundation-module/3-em.html#SP2" class="function-link"><span class="function-syntax">Errors::fatal</span></a><span class="plain-syntax">(</span><span class="string-syntax">"need to specify '-document-to' directory"</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">compiled_documentation</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cd</span><span class="plain-syntax"> = </span><a href="../supervisor-module/7-dc.html#SP3" class="function-link"><span class="function-syntax">DocumentationCompiler::compile_from_path</span></a><span class="plain-syntax">(</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">documentation_set</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">documentation_sitemap</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">cd</span><span class="plain-syntax">) </span><a href="../supervisor-module/7-dr.html#SP2" class="function-link"><span class="function-syntax">DocumentationRenderer::as_HTML</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">documentation_dest</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</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">cd</span><span class="plain-syntax">) </span><a href="../supervisor-module/7-dr.html#SP2" class="function-link"><span class="function-syntax">DocumentationRenderer::as_HTML</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">documentation_dest</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</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>
|
||||
</pre>
|
||||
<ul class="endnotetexts"><li>This code is used in <a href="1-mn.html#SP2">§2</a>.</li></ul>
|
||||
<p class="commentary firstcommentary"><a id="SP2_8" class="paragraph-anchor"></a><b>§2.8. </b>We make the function call <span class="extract"><span class="extract-syntax">Supervisor::go_operational</span></span> to signal to <span class="extract"><span class="extract-syntax">inbuild</span></span>
|
||||
|
|
|
@ -1025,7 +1025,7 @@ then its sentences will go to the extension's own tree.
|
|||
</p>
|
||||
|
||||
<pre class="displayed-code all-displayed-code code-font">
|
||||
<span class="reserved-syntax">compiled_documentation</span><span class="plain-syntax"> *</span><span class="function-syntax">Extensions::get_documentation</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">Extensions::get_documentation</span></span>:<br/><a href="5-es.html#SP13">§13</a><br/>The Mini-Website - <a href="7-tm.html#SP7">§7</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">inform_extension</span><span class="plain-syntax"> *</span><span class="identifier-syntax">E</span><span class="plain-syntax">,</span>
|
||||
<span class="reserved-syntax">compiled_documentation</span><span class="plain-syntax"> *</span><span class="function-syntax">Extensions::get_documentation</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">Extensions::get_documentation</span></span>:<br/><a href="5-es.html#SP13">§13</a><br/>The Mini-Website - <a href="7-tm.html#SP7">§7</a><br/>Documentation Renderer - <a href="7-dr.html#SP6">§6</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">inform_extension</span><span class="plain-syntax"> *</span><span class="identifier-syntax">E</span><span class="plain-syntax">,</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">sitemap</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">E</span><span class="plain-syntax"> == </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><a href="2-cps.html#SP7" class="function-link"><span class="function-syntax">Copies::get_source_text</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">E</span><span class="plain-syntax">-></span><span class="element-syntax">as_copy</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"getting documentation"</span><span class="plain-syntax">); </span><span class="comment-syntax"> in the unlikely event this has not happened yet</span>
|
||||
|
@ -1061,7 +1061,7 @@ then its sentences will go to the extension's own tree.
|
|||
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">Extensions::document</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">Extensions::document</span></span>:<br/>Extension Manager - <a href="4-em.html#SP10">§10</a><br/>Extension Bundle Manager - <a href="4-ebm.html#SP10">§10</a></span></button><span class="plain-syntax">(</span><span class="reserved-syntax">inform_extension</span><span class="plain-syntax"> *</span><span class="identifier-syntax">E</span><span class="plain-syntax">, </span><span class="identifier-syntax">pathname</span><span class="plain-syntax"> *</span><span class="identifier-syntax">dest</span><span class="plain-syntax">, </span><span class="identifier-syntax">filename</span><span class="plain-syntax"> *</span><span class="identifier-syntax">sitemap</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">SVEXPLAIN</span><span class="plain-syntax">(1, </span><span class="string-syntax">"(documenting %X to %p)\n"</span><span class="plain-syntax">, </span><span class="identifier-syntax">E</span><span class="plain-syntax">-></span><span class="element-syntax">as_copy</span><span class="plain-syntax">-></span><span class="element-syntax">edition</span><span class="plain-syntax">-></span><span class="element-syntax">work</span><span class="plain-syntax">, </span><span class="identifier-syntax">dest</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">compiled_documentation</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cd</span><span class="plain-syntax"> = </span><a href="5-es.html#SP12" class="function-link"><span class="function-syntax">Extensions::get_documentation</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">E</span><span class="plain-syntax">, </span><span class="identifier-syntax">sitemap</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><a href="7-dr.html#SP2" class="function-link"><span class="function-syntax">DocumentationRenderer::as_HTML</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">dest</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><a href="7-dr.html#SP2" class="function-link"><span class="function-syntax">DocumentationRenderer::as_HTML</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">dest</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</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="plain-syntax">}</span>
|
||||
</pre>
|
||||
<p class="commentary firstcommentary"><a id="SP14" class="paragraph-anchor"></a><b>§14. </b>When the extension source text was read from its <span class="extract"><span class="extract-syntax">source_file</span></span>, we
|
||||
|
|
|
@ -92,7 +92,8 @@ except the examples, and then up to 26 pages holding the content of examples A t
|
|||
</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">DocumentationRenderer::as_HTML</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">DocumentationRenderer::as_HTML</span></span>:<br/>Extension Services - <a href="5-es.html#SP13">§13</a><br/>The Mini-Website - <a href="7-tm.html#SP7">§7</a>, <a href="7-tm.html#SP7_1_2">§7.1.2</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">pathname</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax">, </span><span class="reserved-syntax">compiled_documentation</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cd</span><span class="plain-syntax">, </span><span class="identifier-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">extras</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">DocumentationRenderer::as_HTML</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">DocumentationRenderer::as_HTML</span></span>:<br/>Extension Services - <a href="5-es.html#SP13">§13</a><br/>The Mini-Website - <a href="7-tm.html#SP7">§7</a>, <a href="7-tm.html#SP7_1_2">§7.1.2</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">pathname</span><span class="plain-syntax"> *</span><span class="identifier-syntax">P</span><span class="plain-syntax">, </span><span class="reserved-syntax">compiled_documentation</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cd</span><span class="plain-syntax">,</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">extras</span><span class="plain-syntax">, </span><span class="reserved-syntax">inform_project</span><span class="plain-syntax"> *</span><span class="identifier-syntax">proj</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">inbuild_nest</span><span class="plain-syntax"> *</span><span class="identifier-syntax">N</span><span class="plain-syntax"> = </span><a href="1-ic.html#SP16" class="function-link"><span class="function-syntax">Supervisor::internal</span></a><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">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">pathname</span><span class="plain-syntax"> *</span><span class="identifier-syntax">LP</span><span class="plain-syntax"> = </span><span class="identifier-syntax">Pathnames::down</span><span class="plain-syntax">(</span><a href="2-nst.html#SP5" class="function-link"><span class="function-syntax">Nests::get_location</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">N</span><span class="plain-syntax">), </span><span class="identifier-syntax">I</span><span class="string-syntax">"PLs"</span><span class="plain-syntax">);</span>
|
||||
|
@ -114,7 +115,7 @@ except the examples, and then up to 26 pages holding the content of examples A t
|
|||
<span class="plain-syntax"> </span><span class="identifier-syntax">InformPages::header</span><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"Contents"</span><span class="plain-syntax">, </span><span class="identifier-syntax">JAVASCRIPT_FOR_STANDARD_PAGES_IRES</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><a href="7-im.html#SP1" class="function-link"><span class="function-syntax">Manuals::duplex_contents_page</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</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><a href="7-dr.html#SP3" class="function-link"><span class="function-syntax">DocumentationRenderer::render_index_page</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</span><span class="plain-syntax">, </span><span class="identifier-syntax">md</span><span class="plain-syntax">, </span><span class="identifier-syntax">extras</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><a href="7-dr.html#SP3" class="function-link"><span class="function-syntax">DocumentationRenderer::render_index_page</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</span><span class="plain-syntax">, </span><span class="identifier-syntax">md</span><span class="plain-syntax">, </span><span class="identifier-syntax">extras</span><span class="plain-syntax">, </span><span class="identifier-syntax">proj</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
<span class="plain-syntax"> </span><a href="7-dr.html#SP1" class="function-link"><span class="function-syntax">DocumentationRenderer::close_subpage</span></a><span class="plain-syntax">();</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
|
@ -281,10 +282,10 @@ except the examples, and then up to 26 pages holding the content of examples A t
|
|||
<span class="plain-syntax">}</span>
|
||||
|
||||
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">DocumentationRenderer::render_index_page</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">DocumentationRenderer::render_index_page</span></span>:<br/><a href="7-dr.html#SP2">§2</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">compiled_documentation</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cd</span><span class="plain-syntax">,</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">markdown_item</span><span class="plain-syntax"> *</span><span class="identifier-syntax">md</span><span class="plain-syntax">, </span><span class="identifier-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">extras</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">markdown_item</span><span class="plain-syntax"> *</span><span class="identifier-syntax">md</span><span class="plain-syntax">, </span><span class="identifier-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">extras</span><span class="plain-syntax">, </span><span class="reserved-syntax">inform_project</span><span class="plain-syntax"> *</span><span class="identifier-syntax">proj</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><a href="7-dr.html#SP5" class="function-link"><span class="function-syntax">DocumentationRenderer::render_header</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</span><span class="plain-syntax">-></span><span class="element-syntax">title</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</span><span class="plain-syntax">-></span><span class="element-syntax">within_extension</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">cd</span><span class="plain-syntax">-></span><span class="element-syntax">associated_extension</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><a href="7-dr.html#SP6" class="function-link"><span class="function-syntax">DocumentationRenderer::render_extension_details</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</span><span class="plain-syntax">-></span><span class="element-syntax">associated_extension</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><a href="7-dr.html#SP6" class="function-link"><span class="function-syntax">DocumentationRenderer::render_extension_details</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">cd</span><span class="plain-syntax">-></span><span class="element-syntax">associated_extension</span><span class="plain-syntax">, </span><span class="identifier-syntax">proj</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_TAG</span><span class="plain-syntax">(</span><span class="string-syntax">"hr"</span><span class="plain-syntax">);</span>
|
||||
|
@ -441,7 +442,8 @@ extension.
|
|||
</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">DocumentationRenderer::render_extension_details</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">DocumentationRenderer::render_extension_details</span></span>:<br/><a href="7-dr.html#SP3">§3</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">inform_extension</span><span class="plain-syntax"> *</span><span class="identifier-syntax">E</span><span class="plain-syntax">) {</span>
|
||||
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">DocumentationRenderer::render_extension_details</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">DocumentationRenderer::render_extension_details</span></span>:<br/><a href="7-dr.html#SP3">§3</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">inform_extension</span><span class="plain-syntax"> *</span><span class="identifier-syntax">E</span><span class="plain-syntax">,</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">inform_project</span><span class="plain-syntax"> *</span><span class="identifier-syntax">proj</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">inbuild_edition</span><span class="plain-syntax"> *</span><span class="identifier-syntax">edition</span><span class="plain-syntax"> = </span><span class="identifier-syntax">E</span><span class="plain-syntax">-></span><span class="element-syntax">as_copy</span><span class="plain-syntax">-></span><span class="element-syntax">edition</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">inbuild_work</span><span class="plain-syntax"> *</span><span class="identifier-syntax">work</span><span class="plain-syntax"> = </span><span class="identifier-syntax">edition</span><span class="plain-syntax">-></span><span class="element-syntax">work</span><span class="plain-syntax">;</span>
|
||||
|
||||
|
@ -480,6 +482,28 @@ extension.
|
|||
<span class="plain-syntax"> </span><span class="identifier-syntax">InformFlavouredMarkdown::render_text</span><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">-></span><span class="identifier-syntax">parsed_from</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="plain-syntax"> </span><span class="reserved-syntax">compiled_documentation</span><span class="plain-syntax"> *</span><span class="identifier-syntax">cd</span><span class="plain-syntax"> = </span><a href="5-es.html#SP12" class="function-link"><span class="function-syntax">Extensions::get_documentation</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">E</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</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">no_egs</span><span class="plain-syntax"> = </span><span class="identifier-syntax">LinkedLists::len</span><span class="plain-syntax">(</span><span class="identifier-syntax">cd</span><span class="plain-syntax">-></span><span class="element-syntax">examples</span><span class="plain-syntax">), </span><span class="identifier-syntax">no_cases</span><span class="plain-syntax"> = </span><span class="identifier-syntax">LinkedLists::len</span><span class="plain-syntax">(</span><span class="identifier-syntax">cd</span><span class="plain-syntax">-></span><span class="element-syntax">cases</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">proj</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">no_egs</span><span class="plain-syntax"> + </span><span class="identifier-syntax">no_cases</span><span class="plain-syntax"> > </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">"p"</span><span class="plain-syntax">, </span><span class="string-syntax">"class=\"extensionsubheading\""</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">"testing"</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">HTML_OPEN</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">"This extension provides "</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">no_egs</span><span class="plain-syntax"> == </span><span class="constant-syntax">1</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"one example"</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">no_egs</span><span class="plain-syntax"> > </span><span class="constant-syntax">1</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"%d examples"</span><span class="plain-syntax">, </span><span class="identifier-syntax">no_egs</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">no_egs</span><span class="plain-syntax"> > </span><span class="constant-syntax">0</span><span class="plain-syntax">) && (</span><span class="identifier-syntax">no_cases</span><span class="plain-syntax"> > </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">" and "</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">no_cases</span><span class="plain-syntax"> == </span><span class="constant-syntax">1</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"one test case"</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">no_cases</span><span class="plain-syntax"> > </span><span class="constant-syntax">1</span><span class="plain-syntax">) </span><span class="identifier-syntax">WRITE</span><span class="plain-syntax">(</span><span class="string-syntax">"%d test cases"</span><span class="plain-syntax">, </span><span class="identifier-syntax">no_cases</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">". "</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><a href="7-ti.html#SP8" class="function-link"><span class="function-syntax">ExtensionInstaller::open_test_link</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">proj</span><span class="plain-syntax">, </span><span class="identifier-syntax">E</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"-test"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"all"</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">"test all"</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><a href="7-ti.html#SP8" class="function-link"><span class="function-syntax">ExtensionInstaller::close_test_link</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">proj</span><span class="plain-syntax">, </span><span class="identifier-syntax">E</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"-test"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"all"</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="plain-syntax">}</span>
|
||||
</pre>
|
||||
<p class="commentary firstcommentary"><a id="SP7" class="paragraph-anchor"></a><b>§7. </b>Now for the Table of Contents, which shows chapters, sections and examples
|
||||
|
|
|
@ -874,7 +874,26 @@ produces a second report.
|
|||
<span class="plain-syntax"> }</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">path</span><span class="plain-syntax">)</span>
|
||||
</pre>
|
||||
<ul class="endnotetexts"><li>This code is used in <a href="7-ti.html#SP7">§7</a> (twice).</li></ul>
|
||||
<ul class="endnotetexts"><li>This code is used in <a href="7-ti.html#SP7">§7</a> (twice), <a href="7-ti.html#SP8">§8</a>.</li></ul>
|
||||
<p class="commentary firstcommentary"><a id="SP8" class="paragraph-anchor"></a><b>§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">ExtensionInstaller::open_test_link</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">ExtensionInstaller::open_test_link</span></span>:<br/>Documentation Renderer - <a href="7-dr.html#SP6">§6</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">inform_project</span><span class="plain-syntax"> *</span><span class="identifier-syntax">proj</span><span class="plain-syntax">,</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">inform_extension</span><span class="plain-syntax"> *</span><span class="identifier-syntax">E</span><span class="plain-syntax">, </span><span class="identifier-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">intest_command</span><span class="plain-syntax">, </span><span class="identifier-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">intest_case</span><span class="plain-syntax">) {</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">inbuild_copy</span><span class="plain-syntax"> *</span><span class="identifier-syntax">C</span><span class="plain-syntax"> = </span><span class="identifier-syntax">E</span><span class="plain-syntax">-></span><span class="element-syntax">as_copy</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">js_path</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="7-ti.html#SP7_1" class="named-paragraph-link"><span class="named-paragraph">Get the extension path escaped for use in Javascript</span><span class="named-paragraph-number">7.1</span></a></span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">HTML_OPEN_WITH</span><span class="plain-syntax">(</span><span class="string-syntax">"a"</span><span class="plain-syntax">,</span>
|
||||
<span class="plain-syntax"> </span><span class="string-syntax">"class=\"registrycontentslink\" href='javascript:project().test(\"%S\", \"%S\", \"%S\")'"</span><span class="plain-syntax">,</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">js_path</span><span class="plain-syntax">, </span><span class="identifier-syntax">intest_command</span><span class="plain-syntax">, </span><span class="identifier-syntax">intest_case</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">js_path</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">ExtensionInstaller::close_test_link</span><button class="popup" onclick="togglePopup('usagePopup11')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup11">Usage of <span class="code-font"><span class="function-syntax">ExtensionInstaller::close_test_link</span></span>:<br/>Documentation Renderer - <a href="7-dr.html#SP6">§6</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">OUTPUT_STREAM</span><span class="plain-syntax">, </span><span class="reserved-syntax">inform_project</span><span class="plain-syntax"> *</span><span class="identifier-syntax">proj</span><span class="plain-syntax">,</span>
|
||||
<span class="plain-syntax"> </span><span class="reserved-syntax">inform_extension</span><span class="plain-syntax"> *</span><span class="identifier-syntax">E</span><span class="plain-syntax">, </span><span class="identifier-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">intest_command</span><span class="plain-syntax">, </span><span class="identifier-syntax">text_stream</span><span class="plain-syntax"> *</span><span class="identifier-syntax">intest_case</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">"a"</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax">}</span>
|
||||
</pre>
|
||||
<nav role="progress"><div class="progresscontainer">
|
||||
<ul class="progressbar"><li class="progressprev"><a href="7-eip.html">❮</a></li><li class="progresschapter"><a href="P-wtmd.html">P</a></li><li class="progresschapter"><a href="1-sm.html">1</a></li><li class="progresschapter"><a href="2-gnr.html">2</a></li><li class="progresschapter"><a href="3-bg.html">3</a></li><li class="progresschapter"><a href="4-em.html">4</a></li><li class="progresschapter"><a href="5-es.html">5</a></li><li class="progresschapter"><a href="6-st.html">6</a></li><li class="progresscurrentchapter">7</li><li class="progresssection"><a href="7-tm.html">tm</a></li><li class="progresssection"><a href="7-eip.html">eip</a></li><li class="progresscurrent">ti</li><li class="progresssection"><a href="7-tc.html">tc</a></li><li class="progresssection"><a href="7-dc.html">dc</a></li><li class="progresssection"><a href="7-dr.html">dr</a></li><li class="progresssection"><a href="7-im.html">im</a></li><li class="progresssection"><a href="7-mrp.html">mrp</a></li><li class="progresssection"><a href="7-iu.html">iu</a></li><li class="progresssection"><a href="7-gi.html">gi</a></li><li class="progresssection"><a href="7-ei.html">ei</a></li><li class="progressnext"><a href="7-tc.html">❯</a></li></ul></div>
|
||||
</nav><!--End of weave-->
|
||||
|
|
|
@ -236,7 +236,7 @@ examples provided in the extension.
|
|||
<span class="plain-syntax"> </span><span class="named-paragraph-container code-font"><a href="7-tm.html#SP7_1" class="named-paragraph-link"><span class="named-paragraph">Add internals</span><span class="named-paragraph-number">7.1</span></a></span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">details</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> #</span><span class="identifier-syntax">endif</span>
|
||||
<span class="plain-syntax"> </span><a href="7-dr.html#SP2" class="function-link"><span class="function-syntax">DocumentationRenderer::as_HTML</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">P</span><span class="plain-syntax">, </span><span class="identifier-syntax">doc</span><span class="plain-syntax">, </span><span class="identifier-syntax">OUT</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><a href="7-dr.html#SP2" class="function-link"><span class="function-syntax">DocumentationRenderer::as_HTML</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">P</span><span class="plain-syntax">, </span><span class="identifier-syntax">doc</span><span class="plain-syntax">, </span><span class="identifier-syntax">OUT</span><span class="plain-syntax">, </span><span class="identifier-syntax">proj</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">DISCARD_TEXT</span><span class="plain-syntax">(</span><span class="identifier-syntax">OUT</span><span class="plain-syntax">)</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
<span class="plain-syntax"> </span><span class="identifier-syntax">E</span><span class="plain-syntax">-></span><span class="element-syntax">documented_on_this_run</span><span class="plain-syntax"> = </span><span class="identifier-syntax">TRUE</span><span class="plain-syntax">;</span>
|
||||
|
@ -309,7 +309,7 @@ examples provided in the extension.
|
|||
<span class="plain-syntax"> </span><a href="7-dr.html#SP1" class="function-link"><span class="function-syntax">DocumentationRenderer::close_subpage</span></a><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">doc</span><span class="plain-syntax">-></span><span class="element-syntax">within_extension</span><span class="plain-syntax"> = </span><span class="identifier-syntax">E</span><span class="plain-syntax">;</span>
|
||||
<span class="plain-syntax"> </span><a href="7-dr.html#SP2" class="function-link"><span class="function-syntax">DocumentationRenderer::as_HTML</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">KP</span><span class="plain-syntax">, </span><span class="identifier-syntax">doc</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> </span><a href="7-dr.html#SP2" class="function-link"><span class="function-syntax">DocumentationRenderer::as_HTML</span></a><span class="plain-syntax">(</span><span class="identifier-syntax">KP</span><span class="plain-syntax">, </span><span class="identifier-syntax">doc</span><span class="plain-syntax">, </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">, </span><span class="identifier-syntax">proj</span><span class="plain-syntax">);</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
<span class="plain-syntax"> }</span>
|
||||
</pre>
|
||||
|
|
|
@ -155,14 +155,14 @@ error in this case.
|
|||
Errors::fatal("need to specify '-document-to' directory");
|
||||
compiled_documentation *cd = DocumentationCompiler::compile_from_file(
|
||||
documentation_source, NULL, documentation_sitemap);
|
||||
if (cd) DocumentationRenderer::as_HTML(documentation_dest, cd, NULL);
|
||||
if (cd) DocumentationRenderer::as_HTML(documentation_dest, cd, NULL, NULL);
|
||||
|
||||
@<Document from a set@> =
|
||||
if (documentation_dest == NULL)
|
||||
Errors::fatal("need to specify '-document-to' directory");
|
||||
compiled_documentation *cd = DocumentationCompiler::compile_from_path(
|
||||
documentation_set, NULL, documentation_sitemap);
|
||||
if (cd) DocumentationRenderer::as_HTML(documentation_dest, cd, NULL);
|
||||
if (cd) DocumentationRenderer::as_HTML(documentation_dest, cd, NULL, NULL);
|
||||
|
||||
@ We make the function call |Supervisor::go_operational| to signal to |inbuild|
|
||||
that we want to start work now.
|
||||
|
|
|
@ -866,7 +866,7 @@ compiled_documentation *Extensions::get_documentation(inform_extension *E,
|
|||
void Extensions::document(inform_extension *E, pathname *dest, filename *sitemap) {
|
||||
SVEXPLAIN(1, "(documenting %X to %p)\n", E->as_copy->edition->work, dest);
|
||||
compiled_documentation *cd = Extensions::get_documentation(E, sitemap);
|
||||
DocumentationRenderer::as_HTML(dest, cd, NULL);
|
||||
DocumentationRenderer::as_HTML(dest, cd, NULL, NULL);
|
||||
}
|
||||
|
||||
@ When the extension source text was read from its |source_file|, we
|
||||
|
|
|
@ -33,7 +33,8 @@ void DocumentationRenderer::close_subpage(void) {
|
|||
except the examples, and then up to 26 pages holding the content of examples A to Z.
|
||||
|
||||
=
|
||||
void DocumentationRenderer::as_HTML(pathname *P, compiled_documentation *cd, text_stream *extras) {
|
||||
void DocumentationRenderer::as_HTML(pathname *P, compiled_documentation *cd,
|
||||
text_stream *extras, inform_project *proj) {
|
||||
inbuild_nest *N = Supervisor::internal();
|
||||
if (N) {
|
||||
pathname *LP = Pathnames::down(Nests::get_location(N), I"PLs");
|
||||
|
@ -55,7 +56,7 @@ void DocumentationRenderer::as_HTML(pathname *P, compiled_documentation *cd, tex
|
|||
InformPages::header(OUT, I"Contents", JAVASCRIPT_FOR_STANDARD_PAGES_IRES, NULL);
|
||||
Manuals::duplex_contents_page(OUT, cd);
|
||||
} else {
|
||||
DocumentationRenderer::render_index_page(OUT, cd, md, extras);
|
||||
DocumentationRenderer::render_index_page(OUT, cd, md, extras, proj);
|
||||
}
|
||||
DocumentationRenderer::close_subpage();
|
||||
}
|
||||
|
@ -220,10 +221,10 @@ int DocumentationRenderer::list_actual_tags(OUTPUT_STREAM, markdown_item *md, in
|
|||
}
|
||||
|
||||
void DocumentationRenderer::render_index_page(OUTPUT_STREAM, compiled_documentation *cd,
|
||||
markdown_item *md, text_stream *extras) {
|
||||
markdown_item *md, text_stream *extras, inform_project *proj) {
|
||||
DocumentationRenderer::render_header(OUT, cd->title, NULL, cd->within_extension);
|
||||
if (cd->associated_extension) {
|
||||
DocumentationRenderer::render_extension_details(OUT, cd->associated_extension);
|
||||
DocumentationRenderer::render_extension_details(OUT, cd->associated_extension, proj);
|
||||
}
|
||||
|
||||
HTML_TAG("hr");
|
||||
|
@ -370,7 +371,8 @@ void DocumentationRenderer::render_footer(OUTPUT_STREAM) {
|
|||
extension.
|
||||
|
||||
=
|
||||
void DocumentationRenderer::render_extension_details(OUTPUT_STREAM, inform_extension *E) {
|
||||
void DocumentationRenderer::render_extension_details(OUTPUT_STREAM, inform_extension *E,
|
||||
inform_project *proj) {
|
||||
inbuild_edition *edition = E->as_copy->edition;
|
||||
inbuild_work *work = edition->work;
|
||||
|
||||
|
@ -409,6 +411,28 @@ void DocumentationRenderer::render_extension_details(OUTPUT_STREAM, inform_exten
|
|||
InformFlavouredMarkdown::render_text(OUT, C->parsed_from);
|
||||
HTML_CLOSE("p");
|
||||
}
|
||||
|
||||
compiled_documentation *cd = Extensions::get_documentation(E, NULL);
|
||||
int no_egs = LinkedLists::len(cd->examples), no_cases = LinkedLists::len(cd->cases);
|
||||
|
||||
if ((proj) && (no_egs + no_cases > 0)) {
|
||||
HTML_OPEN_WITH("p", "class=\"extensionsubheading\"");
|
||||
WRITE("testing");
|
||||
HTML_CLOSE("p");
|
||||
HTML_OPEN("p");
|
||||
WRITE("This extension provides ");
|
||||
if (no_egs == 1) WRITE("one example");
|
||||
if (no_egs > 1) WRITE("%d examples", no_egs);
|
||||
if ((no_egs > 0) && (no_cases > 0)) WRITE(" and ");
|
||||
if (no_cases == 1) WRITE("one test case");
|
||||
if (no_cases > 1) WRITE("%d test cases", no_cases);
|
||||
WRITE(". ");
|
||||
ExtensionInstaller::open_test_link(OUT, proj, E, I"-test", I"all");
|
||||
WRITE("test all");
|
||||
ExtensionInstaller::close_test_link(OUT, proj, E, I"-test", I"all");
|
||||
HTML_CLOSE("p");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ Now for the Table of Contents, which shows chapters, sections and examples
|
||||
|
|
|
@ -733,3 +733,22 @@ void ExtensionInstaller::uninstall_icon(OUTPUT_STREAM) {
|
|||
PUT_TO(js_path, c);
|
||||
}
|
||||
DISCARD_TEXT(path)
|
||||
|
||||
@
|
||||
|
||||
=
|
||||
void ExtensionInstaller::open_test_link(OUTPUT_STREAM, inform_project *proj,
|
||||
inform_extension *E, text_stream *intest_command, text_stream *intest_case) {
|
||||
inbuild_copy *C = E->as_copy;
|
||||
TEMPORARY_TEXT(js_path)
|
||||
@<Get the extension path escaped for use in Javascript@>
|
||||
HTML_OPEN_WITH("a",
|
||||
"class=\"registrycontentslink\" href='javascript:project().test(\"%S\", \"%S\", \"%S\")'",
|
||||
js_path, intest_command, intest_case);
|
||||
DISCARD_TEXT(js_path)
|
||||
}
|
||||
|
||||
void ExtensionInstaller::close_test_link(OUTPUT_STREAM, inform_project *proj,
|
||||
inform_extension *E, text_stream *intest_command, text_stream *intest_case) {
|
||||
HTML_CLOSE("a");
|
||||
}
|
||||
|
|
|
@ -171,7 +171,7 @@ void ExtensionWebsite::document_extension(inform_extension *E, inform_project *p
|
|||
@<Add internals@>;
|
||||
DISCARD_TEXT(details)
|
||||
#endif
|
||||
DocumentationRenderer::as_HTML(P, doc, OUT);
|
||||
DocumentationRenderer::as_HTML(P, doc, OUT, proj);
|
||||
DISCARD_TEXT(OUT)
|
||||
}
|
||||
E->documented_on_this_run = TRUE;
|
||||
|
@ -233,7 +233,7 @@ void ExtensionWebsite::document_extension(inform_extension *E, inform_project *p
|
|||
DocumentationRenderer::close_subpage();
|
||||
} else {
|
||||
doc->within_extension = E;
|
||||
DocumentationRenderer::as_HTML(KP, doc, NULL);
|
||||
DocumentationRenderer::as_HTML(KP, doc, NULL, proj);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -264,7 +264,7 @@ Total memory consumption was 139600K = 136 MB
|
|||
|
||||
100.0% was used for memory not allocated for objects:
|
||||
|
||||
62.4% text stream storage 89201916 bytes in 512710 claims
|
||||
62.4% text stream storage 89202128 bytes in 512712 claims
|
||||
3.8% dictionary storage 5497920 bytes in 7767 claims
|
||||
---- sorting 2624 bytes in 531 claims
|
||||
5.0% source text 7200000 bytes in 3 claims
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
100.0% in inform7 run
|
||||
68.1% in compilation to Inter
|
||||
67.7% in compilation to Inter
|
||||
46.1% in //Sequence::undertake_queued_tasks//
|
||||
4.3% in //MajorNodes::pre_pass//
|
||||
3.6% in //MajorNodes::pass_1//
|
||||
|
@ -7,13 +7,13 @@
|
|||
1.4% in //RTKindConstructors::compile//
|
||||
1.4% in //RTPhrasebook::compile_entries//
|
||||
1.0% in //Sequence::lint_inter//
|
||||
0.7% in //CompletionModule::compile//
|
||||
0.7% in //ImperativeDefinitions::compile_first_block//
|
||||
0.7% in //Sequence::undertake_queued_tasks//
|
||||
0.3% in //CompletionModule::compile//
|
||||
0.3% in //MajorNodes::pass_2//
|
||||
0.3% in //Sequence::undertake_queued_tasks//
|
||||
0.3% in //World::stage_V//
|
||||
4.8% not specifically accounted for
|
||||
4.7% not specifically accounted for
|
||||
27.4% in running Inter pipeline
|
||||
9.1% in step 14/15: generate inform6 -> auto.inf
|
||||
6.9% in step 5/15: load-binary-kits
|
||||
|
@ -25,4 +25,4 @@
|
|||
0.3% in step 8/15: detect-indirect-calls
|
||||
2.2% not specifically accounted for
|
||||
4.0% in supervisor
|
||||
0.4% not specifically accounted for
|
||||
0.8% not specifically accounted for
|
||||
|
|
2
inform7/Internal/Delia/GQ.sol
Normal file
2
inform7/Internal/Delia/GQ.sol
Normal file
|
@ -0,0 +1,2 @@
|
|||
quit
|
||||
y
|
3
inform7/Internal/Delia/GT.sol
Normal file
3
inform7/Internal/Delia/GT.sol
Normal file
|
@ -0,0 +1,3 @@
|
|||
test me
|
||||
quit
|
||||
y
|
|
@ -4,12 +4,41 @@ default: $COMPILEONLY = No
|
|||
default: $TESTCOMPILERINTERNALS = No
|
||||
default: $GENERATEINDEX = No
|
||||
default: $GENERATEDIAGNOSTICS = No
|
||||
default: $INTERNAL = inform7/Internal
|
||||
default: $TESTRELEASEMETADATA = No
|
||||
default: $SCRIPT =
|
||||
default: $LANGUAGE = Inform
|
||||
default: $COMPATIBLEWITH = all
|
||||
|
||||
ifdef: $$I7COMPILER
|
||||
set: $I7 = $$I7COMPILER
|
||||
else:
|
||||
default: $I7 = inform7/Tangled/inform7
|
||||
endif
|
||||
|
||||
ifdef: $$I6COMPILER
|
||||
set: $I6 = $$I6COMPILER
|
||||
else:
|
||||
default: $I6 = inform6/Tangled/inform6
|
||||
endif
|
||||
|
||||
ifdef: $$GINTERPRETER
|
||||
set: $GINT = $$GINTERPRETER
|
||||
else:
|
||||
default: $GINT = inform6/Tests/Assistants/dumb-glulx/glulxe/glulxe
|
||||
endif
|
||||
|
||||
ifdef: $$ZINTERPRETER
|
||||
set: $ZINT = $$ZINTERPRETER
|
||||
else:
|
||||
default: $ZINT = inform6/Tests/Assistants/dumb-frotz/dumb-frotz
|
||||
endif
|
||||
|
||||
ifdef: $$internal
|
||||
set: $INTERNAL = $$internal
|
||||
else:
|
||||
default: $INTERNAL = inform7/Internal
|
||||
endif
|
||||
|
||||
! (1) Set $FORMAT to the full description of the language we will transpile to.
|
||||
|
||||
if compatible: inform6/32 `$COMPATIBLEWITH
|
||||
|
@ -105,7 +134,6 @@ endif
|
|||
|
||||
! (5) The location of inform7 and where to write its console output.
|
||||
|
||||
set: $I7 = inform7/Tangled/inform7
|
||||
set: $I7CONSOLE = $WORK/Example.inform/Build/i7_output.txt
|
||||
set: $I7LOG = '$WORK/Example.inform/Build/Debug log.txt'
|
||||
|
||||
|
@ -257,12 +285,12 @@ else
|
|||
|
||||
if: $FOR Glulx
|
||||
default: $I6OPTIONS = -E2SDwGx
|
||||
default: $INTERPRETER = inform6/Tests/Assistants/dumb-glulx/glulxe/glulxe
|
||||
default: $INTERPRETER = $GINT
|
||||
default: $INTOPTIONS = -u -q
|
||||
set: $EXT = ulx
|
||||
else
|
||||
default: $I6OPTIONS = -E2SDwv8x
|
||||
default: $INTERPRETER = inform6/Tests/Assistants/dumb-frotz/dumb-frotz
|
||||
default: $INTERPRETER = $ZINT
|
||||
default: $INTOPTIONS = -w 1000
|
||||
set: $EXT = z8
|
||||
endif
|
||||
|
@ -285,8 +313,6 @@ else
|
|||
endif
|
||||
|
||||
if: $COMPILEONLY No
|
||||
set: $I6 = inform6/Tangled/inform6
|
||||
|
||||
hash: $I6SOURCE
|
||||
or: 'passed (matching cached I6 known to work)'
|
||||
|
||||
|
|
1
inform7/Internal/Delia/ZQ.sol
Normal file
1
inform7/Internal/Delia/ZQ.sol
Normal file
|
@ -0,0 +1 @@
|
|||
quit
|
1
inform7/Internal/Delia/ZT.sol
Normal file
1
inform7/Internal/Delia/ZT.sol
Normal file
|
@ -0,0 +1 @@
|
|||
test me
|
|
@ -2,7 +2,7 @@
|
|||
"is": {
|
||||
"type": "kit",
|
||||
"title": "Architecture16Kit",
|
||||
"version": "10.2.0-beta+6X20"
|
||||
"version": "10.2.0-beta+6X21"
|
||||
},
|
||||
"compatibility": "16-bit",
|
||||
"kit-details": {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"is": {
|
||||
"type": "kit",
|
||||
"title": "Architecture32Kit",
|
||||
"version": "10.2.0-beta+6X20"
|
||||
"version": "10.2.0-beta+6X21"
|
||||
},
|
||||
"compatibility": "32-bit",
|
||||
"kit-details": {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"is": {
|
||||
"type": "kit",
|
||||
"title": "BasicInformKit",
|
||||
"version": "10.2.0-beta+6X20"
|
||||
"version": "10.2.0-beta+6X21"
|
||||
},
|
||||
"needs": [ {
|
||||
"need": {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"is": {
|
||||
"type": "kit",
|
||||
"title": "CommandParserKit",
|
||||
"version": "10.2.0-beta+6X20"
|
||||
"version": "10.2.0-beta+6X21"
|
||||
},
|
||||
"needs": [ {
|
||||
"need": {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"is": {
|
||||
"type": "kit",
|
||||
"title": "EnglishLanguageKit",
|
||||
"version": "10.2.0-beta+6X20"
|
||||
"version": "10.2.0-beta+6X21"
|
||||
},
|
||||
"needs": [ {
|
||||
"need": {
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
"is": {
|
||||
"type": "kit",
|
||||
"title": "WorldModelKit",
|
||||
"version": "10.2.0-beta+6X20"
|
||||
"version": "10.2.0-beta+6X21"
|
||||
},
|
||||
"needs": [ {
|
||||
"need": {
|
||||
|
|
|
@ -74,11 +74,10 @@ if they would prefer that:
|
|||
|
||||
=
|
||||
filename *InstalledFiles::varied_by_platform(pathname *models, text_stream *leafname) {
|
||||
filename *F = NULL;
|
||||
TEMPORARY_TEXT(variation)
|
||||
WRITE_TO(variation, "%s-%S", PLATFORM_STRING, leafname);
|
||||
/* NB: PLATFORM_STRING is a C string, so that %s is correct */
|
||||
F = Filenames::in(models, variation);
|
||||
filename *F = Filenames::in(models, variation);
|
||||
if (TextFiles::exists(F) == FALSE) F = Filenames::in(models, leafname);
|
||||
DISCARD_TEXT(variation)
|
||||
return F;
|
||||
|
@ -119,11 +118,9 @@ filename *InstalledFiles::filename_for_platform(int ires, text_stream *platform)
|
|||
|
||||
filename *InstalledFiles::varied_by_named_platform(pathname *models, text_stream *leafname,
|
||||
text_stream *platform) {
|
||||
filename *F = NULL;
|
||||
TEMPORARY_TEXT(variation)
|
||||
WRITE_TO(variation, "%S-%S", platform, leafname);
|
||||
/* NB: PLATFORM_STRING is a C string, so that %s is correct */
|
||||
F = Filenames::in(models, variation);
|
||||
filename *F = Filenames::in(models, variation);
|
||||
if (TextFiles::exists(F) == FALSE) F = Filenames::in(models, leafname);
|
||||
DISCARD_TEXT(variation)
|
||||
return F;
|
||||
|
|
Loading…
Reference in a new issue