force use of pandoc version >= 3.1.12.2

The `bin/pandoc-wrapper.sh` tool will verify that the ssytem
has a recent enough version of `pandoc(1)`.

We explain why we insist on `pandoc(1)`. version >= 3.1.12.2
in comments where the $PANDOC_MIN_VERSION is set.

Added `--wrap=preserve` as a default argument to `pandoc(1)`.
While this change will impact every HTML file generated,
we believe this will improve the ability of someone to look
at the generated HTML and correlate with the original markdown.

Changed `bin/pandoc-wrapper.sh` VERSION from "1.4.2 2024-03-17"
to "1.4.3 2024-03-18".

Performed `make www` to achieve all of the above and to generate
HTML using the new  `--wrap=preserve` `pandoc(1)` mode.
This commit is contained in:
Landon Curt Noll committed 2024-03-18 01:26:39 -07:00
1 parent 9eb7a54e9f
commit b0b212acb1
402 files changed
+37061 -55132

No files matched your search

+51 -81
View File
@@ -130,8 +130,8 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Qiming_HOU">Qiming HOU</a><br>
Location: <a href="../../location.html#CN">CN</a> - <em>People’s
Republic of China</em> (<em>China</em>) <br><br></li>
Location: <a href="../../location.html#CN">CN</a> - <em>People’s Republic of China</em> (<em>China</em>)
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -145,8 +145,8 @@ Republic of China</em> (<em>China</em>) <br><br></li>
<div class="sourceCode" id="cb2"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./hou</span> <span class="st">&#39;expression&#39;</span></span></code></pre></div>
<h2 id="try">Try:</h2>
<div class="sourceCode" id="cb3"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span></code></pre></div>
<p>As the script asks you, what does the last one mean? Can you get it
to report a different value? Hint: it’s in this file, kind of.</p>
<p>As the script asks you, what does the last one mean? Can you get it to report a
different value? Hint: it’s in this file, kind of.</p>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>This self-documenting scientific calculator compiles clean with no
warnings under the most strict pedantic mode of gcc and clang.</p>
@@ -160,112 +160,82 @@ source code. What does it mean?</p>
<div class="sourceCode" id="cb5"><pre class="sourceCode c"><code class="sourceCode c"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="op">+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+</span></span></code></pre></div>
<h3 id="self-documenting-source">Self documenting source</h3>
<p>Comments would almost be redundant. :-}</p>
<h3 id="the-ascii-art-is-valid-c-code">The ASCII art is valid C
code</h3>
<p>… and not just fancy formatted comment removed by the C
Pre-processor.</p>
<h3 id="the-only-multi-byte-strings-are-format-strings">The only
multi-byte strings are format strings</h3>
<p>The code does not contain some simple string-encoded lookup table for
calculator operations.</p>
<h3 id="example-input-and-output-in-the-source">Example input and output
in the source</h3>
<p>The example input and output in the C code is significant. Can you
find out why?</p>
<h3 id="the-ascii-art-is-valid-c-code">The ASCII art is valid C code</h3>
<p>… and not just fancy formatted comment removed by the C Pre-processor.</p>
<h3 id="the-only-multi-byte-strings-are-format-strings">The only multi-byte strings are format strings</h3>
<p>The code does not contain some simple string-encoded lookup table for calculator
operations.</p>
<h3 id="example-input-and-output-in-the-source">Example input and output in the source</h3>
<p>The example input and output in the C code is significant. Can you find out
why?</p>
<h3 id="the-button-layout">The button layout</h3>
<p>The button layout in the C code is significant … not just a nice
looking layout.</p>
<p>The button layout in the C code is significant … not just a nice looking
layout.</p>
<h3 id="input-parsing">Input parsing</h3>
<p>The parser is functionally equivalent to a normal arithmetic parser
for all valid inputs. For another fun challenge: try to determine how it
parses the command line argument.</p>
<p>The parser is functionally equivalent to a normal arithmetic parser for all
valid inputs. For another fun challenge: try to determine how it parses the
command line argument.</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<h3 id="obfuscations">Obfuscations</h3>
<p>This program is designed to be self-documenting. It doesn’t just
provide an example command line. It also provides the expected output
and illustrates all supported functionality using embedded ASCII
art.</p>
<p>This program is designed to be self-documenting. It doesn’t just provide an
example command line. It also provides the expected output and illustrates all
supported functionality using embedded ASCII art.</p>
<ul>
<li>A few line numbers are significant and careless beautification will
break the program.</li>
<li>The entire ASCII art is valid code. The preprocessor won’t remove
any part of it.</li>
<li>The only strings longer than 1 byte are
<code>printf(3)</code>/<code>sscanf(3)</code> format strings, even after
preprocessing. No string-encoded lookup table is used.</li>
<li>A few line numbers are significant and careless beautification will break the
program.</li>
<li>The entire ASCII art is valid code. The preprocessor won’t remove any part of it.</li>
<li>The only strings longer than 1 byte are <code>printf(3)</code>/<code>sscanf(3)</code> format strings, even
after preprocessing. No string-encoded lookup table is used.</li>
<li>The example input and its expected output are both algorithmically
significant.</li>
<li>The button layout is also significant.</li>
<li>The actual syntax being parsed is not that obvious, despite being
functionally equivalent for all correct inputs.</li>
<li>The actual syntax being parsed is not that obvious, despite being functionally
equivalent for all correct inputs.</li>
</ul>
<h3 id="portability">Portability</h3>
<ul>
<li>This program requires <code>argv</code> to point to writable memory.
It doesn’t require the actual <code>argv</code> strings to be writable,
though.</li>
<li>This program requires <code>argv</code> to point to writable memory. It doesn’t require
the actual <code>argv</code> strings to be writable, though.</li>
<li>This program requires ASCII.</li>
<li>This program doesn’t work with <code>%e</code> style numbers like
<code>1e-4</code>.</li>
<li>Some seemingly redundant code works to eliminate warnings and evade
a gcc bug.</li>
<li>This program doesn’t work with <code>%e</code> style numbers like <code>1e-4</code>.</li>
<li>Some seemingly redundant code works to eliminate warnings and evade a gcc bug.</li>
</ul>
<h3 id="spoilers">Spoilers</h3>
<p>The parser parses function names, subtraction, and division as
single-letter unary operators. A bitmask encoded hash table is used to
check no-ops/digits and another hash function maps the ASCII to a
function ordinal, which is then executed by the button panel.</p>
<p>Both hash functions were found using a separate search program.
Another program was used to find a way to format one hash function as
example input such that it produces something resembling the bitmask
hash table as part of its output.</p>
<h2 id="copyright-and-cc-by-sa-4.0-license">Copyright and CC BY-SA 4.0
License:</h2>
<p>This file is Copyright (c) 2023 by Landon Curt Noll. All Rights
Reserved. You are free to share and adapt this file under the terms of
this license:</p>
<p>The parser parses function names, subtraction, and division as single-letter
unary operators. A bitmask encoded hash table is used to check no-ops/digits
and another hash function maps the ASCII to a function ordinal, which is then
executed by the button panel.</p>
<p>Both hash functions were found using a separate search program. Another program
was used to find a way to format one hash function as example input such that
it produces something resembling the bitmask hash table as part of its output.</p>
<h2 id="copyright-and-cc-by-sa-4.0-license">Copyright and CC BY-SA 4.0 License:</h2>
<p>This file is Copyright (c) 2023 by Landon Curt Noll. All Rights Reserved.
You are free to share and adapt this file under the terms of this license:</p>
<pre><code>Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)</code></pre>
<p>For more information, see:
https://creativecommons.org/licenses/by-sa/4.0/</p>
<p>For more information, see: https://creativecommons.org/licenses/by-sa/4.0/</p>
<!-- END: this line ends content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<!-- START: this line starts content for HTML phase 22 by: bin/output-index-inventory.sh via bin/md2html.sh -->
<!-- START: this line starts content generated by: bin/output-index-inventory.sh -->
<h1 id="inventory-for-2011hou"><a name="inventory"></a>Inventory for
2011/hou</h1>
<h1 id="inventory-for-2011hou"><a name="inventory"></a>Inventory for 2011/hou</h1>
<p><a href="#top">Jump to top</a></p>
<h2 id="primary-files">Primary files</h2>
<ul>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/hou.c">hou.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/hou.orig.c">hou.orig.c</a>
- original source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/try.sh">try.sh</a>
- how to run</li>
<li><a href="2011_hou.tar.bz2">2011_hou.tar.bz2</a> - download entry
source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/hou.c">hou.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/hou.orig.c">hou.orig.c</a> - original source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/try.sh">try.sh</a> - how to run</li>
<li><a href="2011_hou.tar.bz2">2011_hou.tar.bz2</a> - download entry source</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="index.html">index.html</a> - entry home page</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/.gitignore">.gitignore</a>
- list of files that should not be committed under git</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/.gitignore">.gitignore</a> - list of files that should not be committed under git</li>
<li><a href=".path">.path</a> - directory path from top directory</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2011/hou/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->