add rules, guidelines, fix HTML code, move compressed tarball in inventory

By changing the _inventory_order_ of the compressed tarball from
**100000** to **1415926535**, the compressed tarball will land at
the top of the secondary file list and remain still easy to find.

Updated the `manifest.numbers` spreadsheet and rebuilt
the `.entry.json` files.

Added `next/` directory to hold the next IOCCC rules and guidelines.
Added `next/README.md` that `bin/gen-top-html.sh` uses to form
the `next/index.html` file.

Added _Rules and Guidelines_ link to the sidenav bar to link to the
`next/index.html` file.

Added _IOCCC Rules_ as `next/rules.md` that `bin/gen-top-html.sh`
uses to form the `next/rules.html` file.

Added _IOCCC Guidelines_ as `next/guidelines.md` that `bin/gen-top-html.sh`
uses to form the `next/guidelines.html` file.

Changed `bin/gen-top-html.sh` VERSION from "1.2.4 2024-04-13"
to "1.3 2024-04-14".

Prevent `pandoc(1)` from interpreting the commented out language
of a markdown code block as a code class.  So a markdown such as:

````
``` <!---sh-->
...
```
````

that produced HTML of the form:

```html
<pre class="&lt;!---sh--&gt;"><code>...</code></pre>
```

will now produce HTML of the form:

```html
<pre><code>...</code></pre>
```

NOTE: Before when the language of a markdown code block
was not commented, the HTML produced by `pandoc(1)` was
oddly indented with extra whitespace on the first line
of the code block.  While commenting out the language
of the code block removed some of the odd intending,
it left a weird class in the HTML pre block that
surrounded the HTML code block.  This hack prevents
`pandoc(1)` from assigning a class to the HTML pre block.

Changed `in/md2html.sh` VERSION from "1.2.1 2024-04-13"
to "1.3 2024-04-14".

Added `make gen_sitemap` to end of both `make www` and `make
quick_www` in top level Makefile.

Ram `make www` to test under macOS and to perform the above.

**IMPORTANT NOTE**: The current `next/rules.md` and `next/guidelines.md`
are simply the 2020 IOCCC Rules and Guidelines converted into
markdown form.  There are **NOT** the Rules and Guidelines that
will be used the IOCCC MOCK, nor the next IOCCC.

TODO: Improve the `bin/gen-status.sh` tool to modify the top of the
      `next/rules.md` and `next/guidelines.md` files to keep them
      in sync with the _contest_status_ as found in `status.json`.

TODO: Improve the look and feel of the `next/rules.md` and
      `next/guidelines.md` markdown files.
This commit is contained in:
Landon Curt Noll committed 2024-04-14 16:54:24 -07:00
1 parent a672335d2d
commit 518a6336d0
734 files changed
+7919 -4119

No files matched your search

+1 -1
View File
@@ -235,7 +235,7 @@
},
{
"file_path" : "2012_endoh1.tar.bz2",
"inventory_order" : 100000,
"inventory_order" : 1415926535,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
+17 -16
View File
@@ -88,6 +88,7 @@
<div class="sidenav">
<a href="../../news.html">IOCCC News</a>
<a href="../../status.html">Contest status</a>
<a href="../../next/index.html">Rules and Guidelines</a>
<a href="../../faq.html#submit">How to enter the IOCCC</a>
<a href="../../faq.html">FAQ</a>
</div>
@@ -140,7 +141,7 @@ Location: <a href="../../location.html#JP">JP</a> - <em>Japan</em></li>
<!-- END: this line ends content for HTML phase 20 by: bin/output-index-author.sh via bin/md2html.sh -->
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
<pre class="&lt;!---sh--&gt;"><code> make</code></pre>
<pre><code> make</code></pre>
<p>There are two alt versions that let you control the compile time variables that
control the fluid behaviour and the added variables to speed up or slow down the
fluid as well as setting a timeout (if not 0): one for the original black and
@@ -149,12 +150,12 @@ judges at the time of the contest). Another version is the deobfuscated version
provided by the author as well. See the <a href="#alternate-code">Alternate code</a>
section below for more details.</p>
<h2 id="to-use">To use:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./endoh1 &lt; file</code></pre>
<pre><code> ./endoh1 &lt; file</code></pre>
<p>WARNING: if you’re sensitive to/don’t like flashing colours/text or just want to
see what this looks like not going so fast then you might wish to try the
<a href="#alternate-code">Alternate code</a> instead.</p>
<h2 id="try">Try:</h2>
<pre class="&lt;!---sh--&gt;"><code> ./try.bw.sh endoh1.c
<pre><code> ./try.bw.sh endoh1.c
./try.sh endoh1.c
./try.bw.sh pour-out.txt
@@ -170,39 +171,39 @@ the fluid and change the behaviour of the fluid. The file
<a href="endoh1.alt.c">endoh1.alt2.c</a> is deobfuscated and was provided by the author.</p>
<h3 id="alternate-build">Alternate build:</h3>
<p>For the default values, try:</p>
<pre class="&lt;!---sh--&gt;"><code> make alt</code></pre>
<pre><code> make alt</code></pre>
<p>In the <code>alt</code> versions a default time of 10 seconds is set as an alarm so that
one can more easily go through the list of files to see them all in succession,
for fun. That is controlled by the variable <code>TIMER</code> at compilation.
For instance if you wish to change the value to 5:</p>
<pre class="&lt;!---sh--&gt;"><code> make clobber TIMER=5 alt</code></pre>
<pre><code> make clobber TIMER=5 alt</code></pre>
<p>If you want to disable the alarm time, set it to 0:</p>
<pre class="&lt;!---sh--&gt;"><code> make clobber TIMER=0 alt</code></pre>
<pre><code> make clobber TIMER=0 alt</code></pre>
<p>It cannot be &lt; 0 or &gt; 60 (arbitrarily selected).</p>
<p>The <code>SLEEP</code> variable is to delay the time between updates to make it easier to
see and to not flash too quickly. The code protects against a value &lt; 0 and
defaults to 12321 but you can change it to. For instance to slow it down you
could increase the sleep time from <code>12321</code> to <code>50000</code>:</p>
<pre class="&lt;!---sh--&gt;"><code> make clobber SLEEP=50000 alt</code></pre>
<pre><code> make clobber SLEEP=50000 alt</code></pre>
<p>If you wish to speed it up you might decrease the sleep time from <code>12321</code> to
<code>9999</code>:</p>
<pre class="&lt;!---sh--&gt;"><code> make clobber SLEEP=9999 alt</code></pre>
<pre><code> make clobber SLEEP=9999 alt</code></pre>
<p>WARNING: the lower the value the faster it will flash so be careful if you’re
sensitive to this.</p>
<p>If you wish to change the gravity factor, pressure factor and/or
viscosity factor, you should redefine the values <code>GRAVITY</code>, <code>PRESSURE</code> and/or
<code>VISCOSITY</code> macros, respectively. For instance if you wish to change the
viscosity and pressure factors but leave the other values alone:</p>
<pre class="&lt;!---sh--&gt;"><code> make clobber VISCOSITY=X PRESSURE=Y alt</code></pre>
<pre><code> make clobber VISCOSITY=X PRESSURE=Y alt</code></pre>
<p>where <code>X</code> and <code>Y</code> are numbers or the letter <code>I</code> and which are, respectively, the
viscosity and pressure factors. There is no attempt to check the value or type
because doing so prevents the macros from being defined to <code>I</code> which would
prevent the author’s remarks about it from being done.</p>
<p>You might also wish to try redefining the macros <code>G</code>, <code>P</code> and/or <code>V</code>. For
instance:</p>
<pre class="&lt;!---sh--&gt;"><code> make clobber GRAVITY=5 PRESSURE=5 VISCOSITY=5 alt</code></pre>
<pre><code> make clobber GRAVITY=5 PRESSURE=5 VISCOSITY=5 alt</code></pre>
<p>You might try even:</p>
<pre class="&lt;!---sh--&gt;"><code> make clobber GRAVITY=I alt</code></pre>
<pre><code> make clobber GRAVITY=I alt</code></pre>
<p>See the author’s remarks for details on these macros where:</p>
<pre><code> G = GRAVITY
P = PRESSURE
@@ -213,10 +214,10 @@ and <code>endoh1_color</code> above.</p>
<h3 id="alternate-try">Alternate try:</h3>
<p>To see two different ways run on the source file and each of the text files,
try:</p>
<pre class="&lt;!---sh--&gt;"><code> ./try.alt.sh</code></pre>
<pre><code> ./try.alt.sh</code></pre>
<p>The second run of each will be with the gravity factor set to <code>I</code>.</p>
<p>To see the same thing but in the original uncoloured version, try:</p>
<pre class="&lt;!---sh--&gt;"><code> ./try.alt.bw.sh</code></pre>
<pre><code> ./try.alt.bw.sh</code></pre>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>Let’s play <a href="https://en.wikipedia.org/wiki/Jeopardy!">Jeopardy!</a></p>
<p>A: An obfuscated program that deals with complex numbers and produces animated ASCII graphics.
@@ -231,7 +232,7 @@ entry</a>.</p>
<h3 id="synopsis">Synopsis</h3>
<p><strong>DO NOT FORGET</strong> <code>-DG=1 -DP=4 -DV=8</code> and make your terminal window larger
than 80 x 25.</p>
<pre class="&lt;!---sh--&gt;"><code> cc endoh1.c -DG=1 -DP=4 -DV=8 -D_BSD_SOURCE -o endoh1 -lm
<pre><code> cc endoh1.c -DG=1 -DP=4 -DV=8 -D_BSD_SOURCE -o endoh1 -lm
./endoh1 &lt; endoh1.c
./endoh1 &lt; logo.txt
./endoh1 &lt; column.txt
@@ -284,7 +285,7 @@ comments. It also uses <code>usleep(3)</code>, which may require <code>-D_BSD_SO
to build with no warning. Under these conditions, it should be portable.
At least, recent compilers with <code>-std=c99 -Wall -W -Wextra -pedantic</code> say
nothing.</p>
<pre class="&lt;!---sh--&gt;"><code> gcc -DG=1 -DP=4 -DV=8 -D_BSD_SOURCE -std=c99 -Wall -W -Wextra -pedantic endoh1.c
<pre><code> gcc -DG=1 -DP=4 -DV=8 -D_BSD_SOURCE -std=c99 -Wall -W -Wextra -pedantic endoh1.c
clang -DG=1 -DP=4 -DV=8 -D_BSD_SOURCE -std=c99 -Wall -W -Wextra -pedantic endoh1.c</code></pre>
<p>I expect it to work in any Unix-like environment. VTxxx/ANSI sequences are
@@ -376,10 +377,10 @@ provided many configuration files.</p>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2012/endoh1/try.bw.sh">try.bw.sh</a> - try.alt.bw.sh</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2012/endoh1/try.sh">try.sh</a> - how to run in color</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2012/endoh1/endoh1_color.c">endoh1_color.c</a> - alternative source using terminal 256 colors</li>
<li><a href="2012_endoh1.tar.bz2">2012_endoh1.tar.bz2</a> - download entry tarball</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>
<li><a href="2012_endoh1.tar.bz2">2012_endoh1.tar.bz2</a> - download entry tarball</li>
<li><a href="index.html">index.html</a> - this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2012/endoh1/README.md">README.md</a> - markdown source for this web page</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2012/endoh1/.entry.json">.entry.json</a> - description of entry in JSON</li>