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:
1 parent
9eb7a54e9f
commit
b0b212acb1
402 files changed
+37061
-55132
No files matched your search
+74
-106
@@ -130,8 +130,8 @@
|
||||
<h2 id="author"><a name="author"></a>Author:</h2>
|
||||
<ul>
|
||||
<li>Name: <a href="../../authors.html#Mark_Plummer">Mark Plummer</a><br>
|
||||
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown
|
||||
location</em> <br><br></li>
|
||||
Location: <a href="../../location.html#ZZ">ZZ</a> - <em>Unknown location</em>
|
||||
<br><br></li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
|
||||
@@ -141,16 +141,15 @@ location</em> <br><br></li>
|
||||
|
||||
<h2 id="to-build">To build:</h2>
|
||||
<div class="sourceCode" id="cb1"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> alt</span></code></pre></div>
|
||||
<p>We recommend that you try the alternate version first to get a better
|
||||
idea of what this entry looked like back in 1993. The alternate version
|
||||
sleeps (via <code>usleep(3)</code>) in between writes, defaulting at
|
||||
1000 microseconds (but reconfigurable). If you wish to see the original
|
||||
entry then see <a href="#original-code">original code</a> below.</p>
|
||||
<p>If you wish to speed the entry up, say to 500 microseconds between
|
||||
writes, try:</p>
|
||||
<p>We recommend that you try the alternate version first to get a better idea of
|
||||
what this entry looked like back in 1993. The alternate version sleeps (via
|
||||
<code>usleep(3)</code>) in between writes, defaulting at 1000 microseconds (but
|
||||
reconfigurable). If you wish to see the original entry then see <a href="#original-code">original
|
||||
code</a> below.</p>
|
||||
<p>If you wish to speed the entry up, say to 500 microseconds between writes, try:</p>
|
||||
<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="fu">make</span> clobber SLEEP=500 alt</span></code></pre></div>
|
||||
<p>Alternatively if you wish to slow it down, say to 1500 microseconds
|
||||
between writes, try:</p>
|
||||
<p>Alternatively if you wish to slow it down, say to 1500 microseconds between
|
||||
writes, try:</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="fu">make</span> clobber SLEEP=1500 alt</span></code></pre></div>
|
||||
<h2 id="to-use">To use:</h2>
|
||||
<div class="sourceCode" id="cb4"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./plummer.alt</span> number arg</span></code></pre></div>
|
||||
@@ -159,9 +158,8 @@ between writes, try:</p>
|
||||
<li>number is a number (try 21701)</li>
|
||||
<li>arg is any argument</li>
|
||||
</ul>
|
||||
<p>Wait until you’re bored enough to send intr/ctrl-c to exit or until
|
||||
the <a href="https://hitchhikers.fandom.com/wiki/Vogon">Vogons</a> build
|
||||
that <a href="https://hitchhikers.fandom.com/wiki/Bypass">hyperspace
|
||||
<p>Wait until you’re bored enough to send intr/ctrl-c to exit or until the
|
||||
<a href="https://hitchhikers.fandom.com/wiki/Vogon">Vogons</a> build that <a href="https://hitchhikers.fandom.com/wiki/Bypass">hyperspace
|
||||
bypass</a>.</p>
|
||||
<h2 id="try">Try:</h2>
|
||||
<div class="sourceCode" id="cb5"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.alt.sh</span></span>
|
||||
@@ -180,14 +178,13 @@ bypass</a>.</p>
|
||||
<span id="cb5-14"><a href="#cb5-14" aria-hidden="true" tabindex="-1"></a></span>
|
||||
<span id="cb5-15"><a href="#cb5-15" aria-hidden="true" tabindex="-1"></a><span class="va">SLEEP</span><span class="op">=</span>1200 <span class="ex">./try.alt.sh</span> xyzzyzzyx 5555</span></code></pre></div>
|
||||
<h2 id="original-code">Original code:</h2>
|
||||
<p>This version, the original, does not sleep in between writes, and is
|
||||
thus much faster (depending on the <code>SLEEP</code> parameter
|
||||
specified in the build of <code>alt</code>, of course).</p>
|
||||
<p>This version, the original, does not sleep in between writes, and is thus much
|
||||
faster (depending on the <code>SLEEP</code> parameter specified in the build of <code>alt</code>, of
|
||||
course).</p>
|
||||
<h3 id="original-build">Original build:</h3>
|
||||
<div class="sourceCode" id="cb6"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="fu">make</span> all</span></code></pre></div>
|
||||
<h3 id="original-use">Original use:</h3>
|
||||
<p>Use <code>plummer</code> as you would <code>plummer.alt</code>
|
||||
above.</p>
|
||||
<p>Use <code>plummer</code> as you would <code>plummer.alt</code> above.</p>
|
||||
<h3 id="original-try">Original try:</h3>
|
||||
<div class="sourceCode" id="cb7"><pre class="sourceCode sh"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="ex">./try.sh</span></span>
|
||||
<span id="cb7-2"><a href="#cb7-2" aria-hidden="true" tabindex="-1"></a></span>
|
||||
@@ -206,113 +203,84 @@ above.</p>
|
||||
<p>For extra credit: What happens when ‘number’ contains non-numeric
|
||||
characters, and why?</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<p>This program prints out all numbers up to a given number of digits on
|
||||
a single line. When the largest number is reached, the program starts
|
||||
again with 0. It takes two arguments: the first argument specifies the
|
||||
number to start counting from and uses leading <code>0</code>s to
|
||||
indicate the number of digits, the second argument can be anything but
|
||||
must be present.</p>
|
||||
<p>Variable names are single characters chosen for their similarity to
|
||||
other characters (<code>O</code> for <code>0</code> (zero),
|
||||
<code>l</code> for <code>1</code> (one), <code>S</code> for
|
||||
<code>5</code> (five) in some fonts, and <code>_</code> for … well
|
||||
nothing really, but it is easy to miss). To prevent the need for
|
||||
<code>strlen()</code>, the fact that argv is laid out sequentially is
|
||||
exploited
|
||||
(i.e. <code>argv[i + 1] == argv[i] + strlen(argv[i]) + 1</code>). This
|
||||
is not portable (by the books), but it seems to work everywhere I try
|
||||
(actually, for VMS, that only holds for <code>i > 1</code>). Also, I
|
||||
depend on the fact that a carriage return causes the line just written
|
||||
to be overwritten. <code>lint</code> (and most compilers) complain that
|
||||
there is no control path leading to a return from <code>main()</code>.
|
||||
At 125 characters, it still fits on a single line (for those of us who
|
||||
don’t mind ruining our eyes with 132 column screens).</p>
|
||||
<p>This program prints out all numbers up to a given number of digits
|
||||
on a single line. When the largest number is reached, the program
|
||||
starts again with 0. It takes two arguments: the first argument
|
||||
specifies the number to start counting from and uses leading <code>0</code>s to
|
||||
indicate the number of digits, the second argument can be anything
|
||||
but must be present.</p>
|
||||
<p>Variable names are single characters chosen for their similarity to other
|
||||
characters (<code>O</code> for <code>0</code> (zero), <code>l</code> for <code>1</code> (one), <code>S</code> for <code>5</code> (five) in some
|
||||
fonts, and <code>_</code> for … well nothing really, but it is easy to miss). To
|
||||
prevent the need for <code>strlen()</code>, the fact that argv is laid out sequentially is
|
||||
exploited (i.e. <code>argv[i + 1] == argv[i] + strlen(argv[i]) + 1</code>). This is not
|
||||
portable (by the books), but it seems to work everywhere I try (actually, for
|
||||
VMS, that only holds for <code>i > 1</code>). Also, I depend on the fact that a carriage
|
||||
return causes the line just written to be overwritten. <code>lint</code> (and most
|
||||
compilers) complain that there is no control path leading to a return from
|
||||
<code>main()</code>. At 125 characters, it still fits on a single line (for those of us
|
||||
who don’t mind ruining our eyes with 132 column screens).</p>
|
||||
<h3 id="spoiler">Spoiler:</h3>
|
||||
<p>The first statement points the base of <code>l</code> (the argument
|
||||
vector) to be the first argument by incrementing it. It then assigns
|
||||
<code>O</code> to point to the character before the first character of
|
||||
the second argument which also happens to be the NUL termination of the
|
||||
first argument. <code>*O</code> gets a <code>\r</code> assigned to it.
|
||||
Finally <code>0</code> is assigned to the first character of the second
|
||||
argument which has the effect of NUL terminating the first argument
|
||||
after the carriage return had removed its NUL termination. I really
|
||||
tried to make the last part of that statement part of the original
|
||||
expression, but the best I could do was attach it with a comma (against
|
||||
the advice of K&R). The for loop runs the next for loop continuously
|
||||
(actually until the machine crashes or the user gets tired of seeing the
|
||||
<p>The first statement points the base of <code>l</code> (the argument vector) to
|
||||
be the first argument by incrementing it. It then assigns <code>O</code> to
|
||||
point to the character before the first character of the second
|
||||
argument which also happens to be the NUL termination of the first
|
||||
argument. <code>*O</code> gets a <code>\r</code> assigned to it. Finally <code>0</code> is assigned to
|
||||
the first character of the second argument which has the effect of
|
||||
NUL terminating the first argument after the carriage return had
|
||||
removed its NUL termination. I really tried to make the last part
|
||||
of that statement part of the original expression, but the best I
|
||||
could do was attach it with a comma (against the advice of K&R).
|
||||
The for loop runs the next for loop continuously (actually until
|
||||
the machine crashes or the user gets tired of seeing the
|
||||
counting). The next for loop is the meat of the program. In the
|
||||
initialization statement, the string pointed to by <code>l</code> (the
|
||||
first argument containing the digits used for counting followed by a
|
||||
<code>\r</code>) is printed, and <code>_</code> is started at the least
|
||||
significant digit in the string. In the test portion, <code>_</code> is
|
||||
ensured not to be past the beginning of the string (the most significant
|
||||
digit), and the digit pointed to by <code>_</code> is incremented and
|
||||
checked to be sure that it <em>is</em> greater than <code>9</code>
|
||||
(written here as <code>(S+*O+S)*S</code>). If the test fails, either the
|
||||
string has been incremented or each digit in the string has been reset
|
||||
to <code>0</code>. If the test succeeded, the iteration statement
|
||||
assigns <code>0</code> (written here as <code>(S+*O)*S</code> (which has
|
||||
the added bonus of having the code be a cry for help)) to
|
||||
<code>*_</code> and decrements <code>_</code> to point to the next more
|
||||
significant digit to be incremented; it is done only when a carry
|
||||
situation results (<code>*_</code> has been incremented past
|
||||
<code>9</code>).</p>
|
||||
initialization statement, the string pointed to by <code>l</code> (the first
|
||||
argument containing the digits used for counting followed by a <code>\r</code>)
|
||||
is printed, and <code>_</code> is started at the least significant digit in the
|
||||
string. In the test portion, <code>_</code> is ensured not to be past the
|
||||
beginning of the string (the most significant digit), and the digit
|
||||
pointed to by <code>_</code> is incremented and checked to be sure that it <em>is</em>
|
||||
greater than <code>9</code> (written here as <code>(S+*O+S)*S</code>). If the test fails,
|
||||
either the string has been incremented or each digit in the string
|
||||
has been reset to <code>0</code>. If the test succeeded, the iteration
|
||||
statement assigns <code>0</code> (written here as <code>(S+*O)*S</code> (which has the
|
||||
added bonus of having the code be a cry for help)) to <code>*_</code> and
|
||||
decrements <code>_</code> to point to the next more significant digit to be
|
||||
incremented; it is done only when a carry situation results (<code>*_</code> has
|
||||
been incremented past <code>9</code>).</p>
|
||||
<p>The inspiration for this program came from actual code which dealt
|
||||
with scanning for a unique temporary filename by appending a
|
||||
successively larger number to the end of a string.</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-1993plummer"><a name="inventory"></a>Inventory for
|
||||
1993/plummer</h1>
|
||||
<h1 id="inventory-for-1993plummer"><a name="inventory"></a>Inventory for 1993/plummer</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/1993/plummer/plummer.c">plummer.c</a>
|
||||
- entry source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/Makefile">Makefile</a>
|
||||
- entry Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/plummer.alt.c">plummer.alt.c</a>
|
||||
- alternative source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/plummer.orig.c">plummer.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/try.alt.sh">try.alt.sh</a>
|
||||
- how to run alternative code</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/try.sh">try.sh</a>
|
||||
- how to run</li>
|
||||
<li><a href="1993_plummer.tar.bz2">1993_plummer.tar.bz2</a> - download
|
||||
entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/plummer.c">plummer.c</a> - entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/Makefile">Makefile</a> - entry Makefile</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/plummer.alt.c">plummer.alt.c</a> - alternative source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/plummer.orig.c">plummer.orig.c</a> - original source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/try.alt.sh">try.alt.sh</a> - how to run alternative code</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/try.sh">try.sh</a> - how to run</li>
|
||||
<li><a href="1993_plummer.tar.bz2">1993_plummer.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/1993/plummer/.entry.json">.entry.json</a>
|
||||
- description of entry in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/.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/1993/plummer/.entry.json">.entry.json</a> - description of entry in JSON</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/.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/1993/plummer/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/1993/plummer/README.md">README.md</a> - markdown source for index.html</li>
|
||||
</ul>
|
||||
|
||||
<!-- END: next line ends content generated by: bin/output-index-inventory.sh -->
|
||||
|
||||
Reference in new issue
Block a user