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
@@ -120,58 +120,50 @@
|
||||
<!-- END: this line ends content from: inc/before-content.default.html -->
|
||||
<!-- START: this line starts content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
|
||||
|
||||
<p>In order to successfully compile this you will need a C compiler that
|
||||
supports C99+ and ncurses; note that for some platforms (e.g. Red Hat
|
||||
based Linux) you will need two different packages: the library itself
|
||||
but also the dev package that has the header files etc. If you use the
|
||||
Makefile obviously you need <code>make</code> too.</p>
|
||||
<p>In <a href="gameplay.md">gameplay.md</a> I show how to easily
|
||||
customise the colours, set up different gameplay modes and various other
|
||||
things. The troubleshooting.md and terminals.md as well as bugs.md
|
||||
include a variety of information should you run into trouble.</p>
|
||||
<p>In order to successfully compile this you will need a C compiler that supports
|
||||
C99+ and ncurses; note that for some platforms (e.g. Red Hat based Linux) you
|
||||
will need two different packages: the library itself but also the dev package
|
||||
that has the header files etc. If you use the Makefile obviously you need <code>make</code>
|
||||
too.</p>
|
||||
<p>In <a href="gameplay.md">gameplay.md</a> I show how to easily customise the colours, set up
|
||||
different gameplay modes and various other things. The troubleshooting.md
|
||||
and terminals.md as well as bugs.md include a variety of information
|
||||
should you run into trouble.</p>
|
||||
<p>–</p>
|
||||
<h1 id="portability">Portability</h1>
|
||||
<p>I have tested this under macOS Catalina, macOS Ventura (and probably
|
||||
between the two), Fedora (29 and also 31 - no that’s not a typo, I
|
||||
upgraded from 29 to 31 as I had delayed upgrading to 30 due to a number
|
||||
of issues and being busy) and CentOS 7.7.1908. It should work under any
|
||||
modern linux system and maybe other Unices as well as macOS (as
|
||||
noted).</p>
|
||||
<p>It obviously requires ncurses but other than that nothing extra
|
||||
should be needed. Note that the testing of Fedora 29 was earlier in the
|
||||
development however (but then 29 is also EOL).</p>
|
||||
<p>Furthermore I do not believe - but I cannot confirm either - that
|
||||
endianness matters; I only have Intel CPUs and arm64 (MacBook Pro
|
||||
M1).</p>
|
||||
<p>I imagine that it works for 32-bit systems but I do not know for
|
||||
sure.</p>
|
||||
<p>I have tested this under macOS Catalina, macOS Ventura (and probably between the
|
||||
two), Fedora (29 and also 31 - no that’s not a typo, I upgraded from 29 to 31 as
|
||||
I had delayed upgrading to 30 due to a number of issues and being busy) and
|
||||
CentOS 7.7.1908. It should work under any modern linux system and maybe other
|
||||
Unices as well as macOS (as noted).</p>
|
||||
<p>It obviously requires ncurses but other than that nothing extra should be
|
||||
needed. Note that the testing of Fedora 29 was earlier in the development
|
||||
however (but then 29 is also EOL).</p>
|
||||
<p>Furthermore I do not believe - but I cannot confirm either - that endianness
|
||||
matters; I only have Intel CPUs and arm64 (MacBook Pro M1).</p>
|
||||
<p>I imagine that it works for 32-bit systems but I do not know for sure.</p>
|
||||
<h1 id="portability-macos">Portability: macOS</h1>
|
||||
<p>You should be able to get the compiler with:</p>
|
||||
<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">sudo</span> xcode-select <span class="at">--install</span></span></code></pre></div>
|
||||
<p>You don’t need Xcode itself and it appears that the command line
|
||||
tools (as above should install) already has ncurses so there shouldn’t
|
||||
be anything else that needs to be done. But I’m not actually sure of
|
||||
this - I’m seeing conflicting information and it’s been too long; anyway
|
||||
there’s always <a href="https://www.macports.org">MacPorts</a> and also
|
||||
Homebrew which should be sufficient; I do <em>NOT</em> recommend
|
||||
Homebrew however: it takes ownership of /usr/local: as in the user you
|
||||
run it as is the new owner so that you don’t need sudo because … Well
|
||||
never mind.</p>
|
||||
<p>You don’t need Xcode itself and it appears that the command line tools (as above
|
||||
should install) already has ncurses so there shouldn’t be anything else that
|
||||
needs to be done. But I’m not actually sure of this - I’m seeing conflicting
|
||||
information and it’s been too long; anyway there’s always <a href="https://www.macports.org">MacPorts</a> and also
|
||||
Homebrew which should be sufficient; I do <em>NOT</em> recommend Homebrew however:
|
||||
it takes ownership of /usr/local: as in the user you run it as is the new owner
|
||||
so that you don’t need sudo because … Well never mind.</p>
|
||||
<h1 id="portability-fedora">Portability: Fedora</h1>
|
||||
<p>You’ll need the packages <code>gcc</code>, <code>ncurses</code> and
|
||||
<code>ncurses-devel</code> (plus <code>make</code> if you want to use
|
||||
the Makefile) to compile and link this entry. With Fedora more recent
|
||||
versions there’s the <code>dnf</code> package manager but I cannot help
|
||||
with any of the GUI installers since I don’t use them. Something
|
||||
like:</p>
|
||||
<p>You’ll need the packages <code>gcc</code>, <code>ncurses</code> and <code>ncurses-devel</code> (plus <code>make</code> if
|
||||
you want to use the Makefile) to compile and link this entry. With Fedora more
|
||||
recent versions there’s the <code>dnf</code> package manager but I cannot help with any of
|
||||
the GUI installers since I don’t use them. Something like:</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">sudo</span> dnf install ncurses-devel ncurses make gcc</span></code></pre></div>
|
||||
<p>or</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="co"># dnf install ncurses-devel ncurses make gcc</span></span></code></pre></div>
|
||||
<h1 id="portability-centos">Portability: CentOS</h1>
|
||||
<p>Just like Fedora you will need <code>gcc</code>,
|
||||
<code>ncurses</code>, <code>ncurses-devel</code> (and if you want to use
|
||||
the Makefile <code>make</code>). CentOS uses <code>yum</code> and CentOS
|
||||
8 uses <code>dnf</code>. So:</p>
|
||||
<p>Just like Fedora you will need <code>gcc</code>, <code>ncurses</code>, <code>ncurses-devel</code> (and if you
|
||||
want to use the Makefile <code>make</code>). CentOS uses <code>yum</code> and CentOS 8 uses <code>dnf</code>.
|
||||
So:</p>
|
||||
<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="fu">sudo</span> yum install ncurses-devel ncurses make gcc</span></code></pre></div>
|
||||
<p>or</p>
|
||||
<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="co"># yum install ncurses-devel ncurses make gcc</span></span></code></pre></div>
|
||||
@@ -179,20 +171,18 @@ the Makefile <code>make</code>). CentOS uses <code>yum</code> and CentOS
|
||||
<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">sudo</span> dnf install ncurses-devel ncurses make gcc</span></code></pre></div>
|
||||
<p>or</p>
|
||||
<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="co"># dnf install ncurses-devel ncurses make gcc</span></span></code></pre></div>
|
||||
<p>You can also use clang to compile (which is what gcc actually is
|
||||
under macOS).</p>
|
||||
<p>You can also use clang to compile (which is what gcc actually is under macOS).</p>
|
||||
<h1 id="compilation-notes">Compilation notes</h1>
|
||||
<p>As long as you have the dependencies above the only thing that comes
|
||||
to mind is integer width problems.</p>
|
||||
<p>If <code>size_t</code> does not equate to unsigned long: In this case
|
||||
if say it’s an unsigned long long then theoretically you should be able
|
||||
to change the <code>strtoul()</code> to be <code>strtoull()</code>
|
||||
(after updating the typedef for unsigned long to be unsigned long long
|
||||
maybe?). It appears to work from a quick test at least.</p>
|
||||
<p>If it’s an unsigned int I believe you will have to opt for an
|
||||
unsigned long (so <code>strtoul()</code> cast to an unsigned int).</p>
|
||||
<p>Anything else I do not know other than just changing the typedef and
|
||||
updating to the proper function (and/or cast to the right type).</p>
|
||||
<p>As long as you have the dependencies above the only thing that comes to mind is
|
||||
integer width problems.</p>
|
||||
<p>If <code>size_t</code> does not equate to unsigned long: In this case if say it’s an
|
||||
unsigned long long then theoretically you should be able to change the
|
||||
<code>strtoul()</code> to be <code>strtoull()</code> (after updating the typedef for unsigned long to
|
||||
be unsigned long long maybe?). It appears to work from a quick test at least.</p>
|
||||
<p>If it’s an unsigned int I believe you will have to opt for an unsigned long (so
|
||||
<code>strtoul()</code> cast to an unsigned int).</p>
|
||||
<p>Anything else I do not know other than just changing the typedef and updating to
|
||||
the proper function (and/or cast to the right type).</p>
|
||||
|
||||
<!-- END: this line ends content for HTML phase 21 by: bin/pandoc-wrapper.sh via bin/md2html.sh -->
|
||||
<!-- START: this line starts content from: inc/after-content.default.html -->
|
||||
|
||||
Reference in new issue
Block a user