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

+60 -88
View File
@@ -129,9 +129,9 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Yves-Marie_Morgan">Yves-Marie
Morgan</a><br> Location: <a href="../../location.html#FR">FR</a> -
<em>French Republic</em> (<em>France</em>) <br><br></li>
<li>Name: <a href="../../authors.html#Yves-Marie_Morgan">Yves-Marie Morgan</a><br>
Location: <a href="../../location.html#FR">FR</a> - <em>French Republic</em> (<em>France</em>)
<br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -147,93 +147,82 @@ Morgan</a><br> Location: <a href="../../location.html#FR">FR</a> -
<p>For the graphical version (X11):</p>
<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">./morgan2</span> X</span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>The judges enjoyed playing the game almost to completion; if we
remember correctly, we managed to place 59 or 60 dominoes. We wonder,
what would be faster: to play the game to completion or to write an
unobfuscated version of it?</p>
<p>The judges enjoyed playing the game almost to completion; if we remember
correctly, we managed to place 59 or 60 dominoes. We wonder, what would be
faster: to play the game to completion or to write an unobfuscated version of
it?</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<p>This program is a domino game. The goal is to place dominoes on the
8x8 grid. Each domino is made of 6 squares of the colour red or green.
To place a domino, at least one of its side shall match the other side
of another domino.</p>
<p>This program is a domino game. The goal is to place dominoes on the 8x8 grid.
Each domino is made of 6 squares of the colour red or green. To place a domino,
at least one of its side shall match the other side of another domino.</p>
<h3 id="how-to-play">How to play</h3>
<h3 id="start-of-the-game">Start of the game</h3>
<p>At the start of the game, the first domino is placed randomly on the
grid. You get another domino to place by selecting one empty position in
the stack on the right. You can have up to 8 dominoes pending at any
time.</p>
<p>At the start of the game, the first domino is placed randomly on the grid. You
get another domino to place by selecting one empty position in the stack on the
right. You can have up to 8 dominoes pending at any time.</p>
<h3 id="moving-in-the-stack">Moving in the stack</h3>
<p>Use <code>Up</code> and <code>Down</code> key to move the cursor in
the stack. Press <code>Enter</code> to either:</p>
<p>Use <code>Up</code> and <code>Down</code> key to move the cursor in the stack. Press <code>Enter</code> to
either:</p>
<ul>
<li>Reveal a new domino if the position was empty.</li>
<li>Select the domino to try to place it if the position was not
empty.</li>
<li>Select the domino to try to place it if the position was not empty.</li>
</ul>
<p>The currently selected domino is indicated on the top right.</p>
<h3 id="placing-a-domino">Placing a domino</h3>
<p>Once a domino has been selected, the cursor moves to the grid. Use
<code>Up</code>, <code>Down</code>, <code>Left</code> and
<code>Right</code> keys to move in the grid. Press <code>Enter</code> on
an empty position to place the domino.</p>
<p>To go back to selection mode, press <code>Enter</code> on an occupied
position.</p>
<p>The domino can be placed in an empty position if all its neighbours
have matching sides and the domino has at least one neighbour.</p>
<p>Once a domino has been selected, the cursor moves to the grid. Use <code>Up</code>, <code>Down</code>,
<code>Left</code> and <code>Right</code> keys to move in the grid. Press <code>Enter</code> on an empty position
to place the domino.</p>
<p>To go back to selection mode, press <code>Enter</code> on an occupied position.</p>
<p>The domino can be placed in an empty position if all its neighbours have
matching sides and the domino has at least one neighbour.</p>
<h3 id="scoring">Scoring</h3>
<p>First, depending on the number of dominoes pending in the stack, a
bonus is accorded:</p>
<p>First, depending on the number of dominoes pending in the stack, a bonus is
accorded:</p>
<ul>
<li>1 domino in the stack: 8 points.</li>
<li>2 dominoes in the stack: 4 points.</li>
<li>3 or 4 dominoes in the stack: 2 points.</li>
<li>5 or more dominoes in the stack: 0 points.</li>
</ul>
<p>Then the bonus is multiplied by the number of matching neighbours the
placed domino has (1, 2, 3 or 4). This is added to the score.</p>
<p>Finally, the total score is divided by the number of dominoes placed
(1 - 64).</p>
<p>The 3 numbers on display represent: the total score, the fill count
and the final score (total score divided by fill count).</p>
<p>Then the bonus is multiplied by the number of matching neighbours the placed domino
has (1, 2, 3 or 4). This is added to the score.</p>
<p>Finally, the total score is divided by the number of dominoes placed (1 - 64).</p>
<p>The 3 numbers on display represent: the total score, the fill count and the
final score (total score divided by fill count).</p>
<h3 id="end-of-the-game">End of the game</h3>
<p>The game is finished when no more dominoes can be placed and if one
of the following occurs:</p>
<p>The game is finished when no more dominoes can be placed and if one of the
following occurs:</p>
<ul>
<li>You have completely filled the grid.</li>
<li>You have 8 pending dominoes in the stack.</li>
<li>No more dominoes can be revealed in the stack (more than 56 dominoes
placed on the grid).</li>
<li>No more dominoes can be revealed in the stack (more than 56 dominoes placed on
the grid).</li>
</ul>
<p><strong>Note</strong>: There is no real end of game detection
implemented in the program, simply press <code>q</code> when you have
finished…</p>
<p><strong>Note</strong>: There is no real end of game detection implemented in the program,
simply press <code>q</code> when you have finished…</p>
<h3 id="strategy">Strategy</h3>
<ul>
<li>Try to minimize the number of dominoes revealed in the stack. The
lower the number, the higher the bonus.</li>
<li>Each domino is unique and all combination of colours exists, so keep
track of what is already placed and what is left.</li>
<li>Make sure you don’t render dead some positions by preventing a
future placement. If the corner of a domino does not match another
corner diagonally, the move is valid but will prevent some future
moves.</li>
<li>Try to minimize the number of dominoes revealed in the stack. The lower the
number, the higher the bonus.</li>
<li>Each domino is unique and all combination of colours exists, so keep track
of what is already placed and what is left.</li>
<li>Make sure you don’t render dead some positions by preventing a future
placement. If the corner of a domino does not match another corner diagonally,
the move is valid but will prevent some future moves.</li>
</ul>
<h3 id="limitations">Limitations</h3>
<ul>
<li>ASCII character set is assumed.</li>
<li>Requires both ncurses and X11 at compilation and runtime, but
selection could be done at compilation with some extra code (mainly
empty stubs).</li>
<li>Requires both ncurses and X11 at compilation and runtime, but selection could
be done at compilation with some extra code (mainly empty stubs).</li>
</ul>
<h3 id="obfuscation">Obfuscation</h3>
<ul>
<li>1 letter identifiers, reused when possible.</li>
<li>1 algorithm, 2 different kinds of display (ncurses and X11)
mixed.</li>
<li>No parameters to functions, all variables are global and
shared.</li>
<li>Some variables are not initialized if they have a known value at the
time of use.</li>
<li>1 algorithm, 2 different kinds of display (ncurses and X11) mixed.</li>
<li>No parameters to functions, all variables are global and shared.</li>
<li>Some variables are not initialized if they have a known value at the time of
use.</li>
</ul>
<h3 id="compilation-warnings">Compilation warnings</h3>
<p>With gcc 4.7.2 on Linux Ubuntu 12.10 :</p>
@@ -241,50 +230,33 @@ time of use.</li>
<p>With clang 3.1 on Linux Ubuntu 12.10 :</p>
<pre><code>morgan2.c:23:24: warning: adding &#39;int&#39; to a string does not append to the string [-Wstring-plus-int]</code></pre>
<p><strong>!!!!! HAVE FUN !!!!!</strong></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>
<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-2013morgan2"><a name="inventory"></a>Inventory for
2013/morgan2</h1>
<h1 id="inventory-for-2013morgan2"><a name="inventory"></a>Inventory for 2013/morgan2</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/2013/morgan2/morgan2.c">morgan2.c</a>
- entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2013/morgan2/Makefile">Makefile</a>
- entry Makefile</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2013/morgan2/morgan2.orig.c">morgan2.orig.c</a>
- original source</li>
<li><a href="2013_morgan2.tar.bz2">2013_morgan2.tar.bz2</a> - download
entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2013/morgan2/morgan2.c">morgan2.c</a> - entry source</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2013/morgan2/Makefile">Makefile</a> - entry Makefile</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2013/morgan2/morgan2.orig.c">morgan2.orig.c</a> - original source</li>
<li><a href="2013_morgan2.tar.bz2">2013_morgan2.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/2013/morgan2/.entry.json">.entry.json</a>
- description of entry in JSON</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2013/morgan2/.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/2013/morgan2/.entry.json">.entry.json</a> - description of entry in JSON</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2013/morgan2/.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/2013/morgan2/README.md">README.md</a>
- markdown source for index.html</li>
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2013/morgan2/README.md">README.md</a> - markdown source for index.html</li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->