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
+42
-64
@@ -129,9 +129,9 @@
|
||||
|
||||
<h2 id="author"><a name="author"></a>Author:</h2>
|
||||
<ul>
|
||||
<li>Name: <a href="../../authors.html#Glyn_Anderson">Glyn
|
||||
Anderson</a><br> Location: <a href="../../location.html#ZZ">ZZ</a> -
|
||||
<em>Unknown location</em> <br><br></li>
|
||||
<li>Name: <a href="../../authors.html#Glyn_Anderson">Glyn Anderson</a><br>
|
||||
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 -->
|
||||
@@ -153,15 +153,13 @@ signal your distress to passing ships.</p>
|
||||
very cleverly obscured without the use of a single <code>#define</code>!
|
||||
Reformatting this program by hand :-) is the easiest way to understand
|
||||
what is going on.</p>
|
||||
<h3 id="note-about-defines-not-being-used">Note about
|
||||
<code>#define</code>s not being used:</h3>
|
||||
<p>In 2023 due to annoying warnings triggered at different times,
|
||||
sometimes interspersed with the output of the program (this happens in
|
||||
macOS), many entries were changed to use <code>fgets(3)</code> instead.
|
||||
However to make the entries more like the original we redefined
|
||||
<code>gets</code> to use <code>fgets</code>. Unfortunately it’s not
|
||||
possible to do it through <code>-Dfoo</code> compiler options so there
|
||||
is a <code>#define</code> in the code now.</p>
|
||||
<h3 id="note-about-defines-not-being-used">Note about <code>#define</code>s not being used:</h3>
|
||||
<p>In 2023 due to annoying warnings triggered at different times, sometimes
|
||||
interspersed with the output of the program (this happens in macOS), many
|
||||
entries were changed to use <code>fgets(3)</code> instead. However to make the entries more
|
||||
like the original we redefined <code>gets</code> to use <code>fgets</code>. Unfortunately it’s not
|
||||
possible to do it through <code>-Dfoo</code> compiler options so there is a <code>#define</code> in
|
||||
the code now.</p>
|
||||
<h2 id="authors-remarks">Author’s remarks:</h2>
|
||||
<p>This program is a simple filter that translates ASCII text into
|
||||
semaphore code. It reads from standard input and converts all
|
||||
@@ -184,74 +182,54 @@ input “Hello, world!”, the output will be:</p>
|
||||
][ <>][ ][] [][]
|
||||
</code></pre>
|
||||
<p>The program is obfuscated without the use of the preprocessor or any
|
||||
special compilation parameters. In fact, the program doesn’t even bother
|
||||
using any keywords, save the single <code>char</code> at the beginning.
|
||||
special compilation parameters. In fact, the program doesn’t even
|
||||
bother using any keywords, save the single <code>char</code> at the beginning.
|
||||
This program was crafted using only operator precedence rules,
|
||||
short-circuit evaluation and recursion. Each function contains a single,
|
||||
non-empty statement. (I did have to add a couple of empty statements to
|
||||
format the code properly.) There is a single string constant which
|
||||
encodes the flag positions and other data needed for drawing the
|
||||
semaphore codes.</p>
|
||||
<p>The preprocessor will provide no help in de-obfuscating this code,
|
||||
and a C beautifier won’t get you very far either. You just have to
|
||||
crunch through it.</p>
|
||||
<p>An ANSI C compiler will generate several warnings when it compiles
|
||||
this program, as none of the functions declare their return type, nor do
|
||||
they return anything. This was necessary to keep the program free of
|
||||
keywords. It’s valid in K&R C, and compiles in ANSI C. There are
|
||||
also warnings about conversion from <code>int</code> to
|
||||
<code>char</code> and the resulting loss of data. Again, if it’s OK with
|
||||
K&R, it’s OK with me.</p>
|
||||
<p>This program is a great teaching tool for learning the semaphore
|
||||
code; and if you don’t have any flags handy you can just use two copies
|
||||
of the source file.</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>
|
||||
short-circuit evaluation and recursion. Each function contains a
|
||||
single, non-empty statement. (I did have to add a couple of empty
|
||||
statements to format the code properly.) There is a single string
|
||||
constant which encodes the flag positions and other data needed for
|
||||
drawing the semaphore codes.</p>
|
||||
<p>The preprocessor will provide no help in de-obfuscating this code, and a
|
||||
C beautifier won’t get you very far either. You just have to crunch
|
||||
through it.</p>
|
||||
<p>An ANSI C compiler will generate several warnings when it compiles this
|
||||
program, as none of the functions declare their return type, nor do they
|
||||
return anything. This was necessary to keep the program free of
|
||||
keywords. It’s valid in K&R C, and compiles in ANSI C. There are also
|
||||
warnings about conversion from <code>int</code> to <code>char</code> and the resulting loss of
|
||||
data. Again, if it’s OK with K&R, it’s OK with me.</p>
|
||||
<p>This program is a great teaching tool for learning the semaphore code;
|
||||
and if you don’t have any flags handy you can just use two copies of the
|
||||
source file.</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-2000anderson"><a name="inventory"></a>Inventory
|
||||
for 2000/anderson</h1>
|
||||
<h1 id="inventory-for-2000anderson"><a name="inventory"></a>Inventory for 2000/anderson</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/2000/anderson/anderson.c">anderson.c</a>
|
||||
- entry source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/anderson/Makefile">Makefile</a>
|
||||
- entry Makefile</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/anderson/anderson.orig.c">anderson.orig.c</a>
|
||||
- original source</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/anderson/try.sh">try.sh</a>
|
||||
- how to run</li>
|
||||
<li><a href="2000_anderson.tar.bz2">2000_anderson.tar.bz2</a> - download
|
||||
entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/anderson/anderson.c">anderson.c</a> - entry source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/anderson/Makefile">Makefile</a> - entry Makefile</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/anderson/anderson.orig.c">anderson.orig.c</a> - original source</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/anderson/try.sh">try.sh</a> - how to run</li>
|
||||
<li><a href="2000_anderson.tar.bz2">2000_anderson.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/2000/anderson/.entry.json">.entry.json</a>
|
||||
- description of entry in JSON</li>
|
||||
<li><a
|
||||
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/anderson/.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/2000/anderson/.entry.json">.entry.json</a> - description of entry in JSON</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/anderson/.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/2000/anderson/README.md">README.md</a>
|
||||
- markdown source for index.html</li>
|
||||
<li><a href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2000/anderson/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