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

+69 -86
View File
@@ -129,9 +129,9 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Jason_Orendorff">Jason
Orendorff</a><br> Location: <a href="../../location.html#US">US</a> -
<em>United States of America</em> (<em>United States</em>) <br><br></li>
<li>Name: <a href="../../authors.html#Jason_Orendorff">Jason Orendorff</a><br>
Location: <a href="../../location.html#US">US</a> - <em>United States of America</em> (<em>United States</em>)
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -145,18 +145,17 @@ Orendorff</a><br> Location: <a href="../../location.html#US">US</a> -
<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">./jason</span></span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>You are in a maze of twisty little passages, all alike.</p>
<p>The really amazing part of this is that it’s a text adventure, and
there’s not a single word in the source that isn’t a C keyword or
function name, being used as such.</p>
<p>The really amazing part of this is that it’s a text adventure, and there’s
not a single word in the source that isn’t a C keyword or function name,
being used as such.</p>
<p>The interface isn’t very tolerant of errors, but you can’t really
expect that from something this small.</p>
<p>Of particular interest: Go ahead, run it through the preprocessor.
You <em>still</em> won’t see the words that are used in the game.</p>
<p>If you run it through a beautifier you might cause a crash as most of
the whitespace is significant. Also, if you attempt to change one
character identifiers to longer names expect problems. Even swapping the
<code>Y</code> and <code>Z</code> can cause problems. Go ahead, try it!
:-)</p>
<p>Of particular interest: Go ahead, run it through the preprocessor. You
<em>still</em> won’t see the words that are used in the game.</p>
<p>If you run it through a beautifier you might cause a crash as most of the
whitespace is significant. Also, if you attempt to change one character
identifiers to longer names expect problems. Even swapping the <code>Y</code> and <code>Z</code> can
cause problems. Go ahead, try it! :-)</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<p>TED Shroyer came up with the idea that made it possible to hide all
the text. Thanks, TED. You won. :)</p>
@@ -167,106 +166,90 @@ the text. Thanks, TED. You won. :)</p>
<span id="cb3-5"><a href="#cb3-5" aria-hidden="true" tabindex="-1"></a><span class="ex">you</span> see</span>
<span id="cb3-6"><a href="#cb3-6" aria-hidden="true" tabindex="-1"></a> <span class="ex">a</span> lamp</span>
<span id="cb3-7"><a href="#cb3-7" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> _</span></code></pre></div>
<p>This program is a rather nostalgic little labyrinth game. Start out
by typing “<code>get lamp</code>”, then use the direction words
“<code>left</code>”, “<code>right</code>”, “<code>forward</code>”, and
“<code>back</code>” to explore the caves. Note that these words can
refer to different passages depending on which way you’re facing.
“<code>back</code>” always takes you back the way you came. Type
“<code>quit</code>” to quit.</p>
<p>This program is a rather nostalgic little labyrinth game. Start
out by typing “<code>get lamp</code>”, then use the direction words “<code>left</code>”,
“<code>right</code>”, “<code>forward</code>”, and “<code>back</code>” to explore the caves. Note that
these words can refer to different passages depending on which way
you’re facing. “<code>back</code>” always takes you back the way you came.
Type “<code>quit</code>” to quit.</p>
<p>The maze is randomly generated each time you play. The algorithm
ensures that you start at least 6 hops away from the exit. All passages
are two-way.</p>
<p>(There is a trick, well-known among <a
href="https://en.wikipedia.org/wiki/Colossal_Cave_Adventure">Adventure</a>
game fans, to keeping one’s bearings in games like this. Unless you know
the trick, it can be very difficult to find your way around. Try it out
first; I’ll give away the secret at the bottom of this document.)</p>
ensures that you start at least 6 hops away from the exit. All
passages are two-way.</p>
<p>(There is a trick, well-known among
<a href="https://en.wikipedia.org/wiki/Colossal_Cave_Adventure">Adventure</a> game fans, to
keeping one’s bearings in games like this. Unless you know the
trick, it can be very difficult to find your way around. Try it
out first; I’ll give away the secret at the bottom of this
document.)</p>
<p>The goal is to collect 8 treasures (plus the lamp) and escape into
the sunlight - or moonlight, as the case may be. After a few minutes,
the lamp runs out of oil, and things become perilous.</p>
<p>If you manage to escape, you score 50 points for your hide, 50 points
per item, and bonus points for speed.</p>
the sunlight - or moonlight, as the case may be. After a few
minutes, the lamp runs out of oil, and things become perilous.</p>
<p>If you manage to escape, you score 50 points for your hide, 50
points per item, and bonus points for speed.</p>
<p>Why I think this program is obfuscated:</p>
<ul>
<li><p>70% more <code>#</code> symbols than the average entry.</p></li>
<li><p>Where are all the messages? The game is downright chatty for only
having two string literals (<code>"%d \n"</code> and
<code>"Y\n : ! ,.?&gt;"</code>).</p></li>
<li><p>There is exactly one loop in the program, a <code>for</code>
loop, and it is clearly the product of a deranged mind. Running the
<li><p>Where are all the messages? The game is downright chatty for
only having two string literals (<code>"%d \n"</code> and <code>"Y\n : ! ,.?&gt;"</code>).</p></li>
<li><p>There is exactly one loop in the program, a <code>for</code> loop, and it is
clearly the product of a deranged mind. Running the
preprocessor only makes it worse.</p></li>
<li><p>Microsoft Visual C++ won’t even compile this program, even though
it is plain ANSI C (<em>innocent look</em>) and limits itself to the
most standard and portable of the standard library facilities.</p></li>
<li><p>Most of the whitespace is significant, so attempts to beautify it
can easily lead to segmentation faults.</p></li>
<li><p>Microsoft Visual C++ won’t even compile this program, even
though it is plain ANSI C (<em>innocent look</em>) and limits itself to
the most standard and portable of the standard library
facilities.</p></li>
<li><p>Most of the whitespace is significant, so attempts to
beautify it can easily lead to segmentation faults.</p></li>
<li><p>Attempts to replace the one-character identifiers with longer,
more meaningful names will likewise cause problems. In fact, simply
changing all the <code>Y</code>s to <code>Z</code>s and vice versa
results in some unexpected side effects.</p></li>
more meaningful names will likewise cause problems. In fact,
simply changing all the <code>Y</code>s to <code>Z</code>s and vice versa results in
some unexpected side effects.</p></li>
</ul>
<p>When all warnings are enabled, some compilers express the desire to
see a few more parentheses. I respectfully submit that there are plenty
of parentheses in the program (370 in all.) Besides, any more would put
me over the size limit. <code>gcc</code> also generates a warning about
some calculations not being used. Having just spent 19 hours staring at
this program, sweating over every character, I swear gcc is wrong.</p>
<p>The program is formatted as a poem, to make it more readable. I find
the plaintive chorus “B? B?” particularly poignant. Also, smiley faces
are formatted flush left. (If you don’t find the game entertaining, see
if you can find</p>
<p>When all warnings are enabled, some compilers express the desire
to see a few more parentheses. I respectfully submit that there are
plenty of parentheses in the program (370 in all.) Besides, any
more would put me over the size limit. <code>gcc</code> also generates a
warning about some calculations not being used. Having just spent
19 hours staring at this program, sweating over every character, I
swear gcc is wrong.</p>
<p>The program is formatted as a poem, to make it more readable.
I find the plaintive chorus “B? B?” particularly poignant.
Also, smiley faces are formatted flush left. (If you don’t find
the game entertaining, see if you can find</p>
<pre><code> the fish scales Q)++j&lt;
the shooting star -~- ~ -~i +</code></pre>
<p>in the source code.)</p>
<h3 id="game-strategy-spoiler">GAME STRATEGY SPOILER</h3>
<p>The trick, of course, is to drop items in empty rooms to mark them.
That way you usually know if you’re in a room you’ve seen before. It
greatly aids mapping.</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 trick, of course, is to drop items in empty rooms to mark them. That way
you usually know if you’re in a room you’ve seen before. It greatly aids
mapping.</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-2001jason"><a name="inventory"></a>Inventory for
2001/jason</h1>
<h1 id="inventory-for-2001jason"><a name="inventory"></a>Inventory for 2001/jason</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/2001/jason/jason.c">jason.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2001/jason/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2001/jason/jason.orig.c">jason.orig.c</a>
- original source</li>
<li><a href="2001_jason.tar.bz2">2001_jason.tar.bz2</a> - download entry
source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2001/jason/jason.c">jason.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2001/jason/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2001/jason/jason.orig.c">jason.orig.c</a> - original source</li>
<li><a href="2001_jason.tar.bz2">2001_jason.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/2001/jason/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2001/jason/.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/2001/jason/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2001/jason/.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/2001/jason/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2001/jason/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->