fix and improve links within the web site

Entry source is now prog.c for IOCCC years 2014 thru 2020,
or is now dirname.c IOCCC years 1984 thru 2013.

To achieve this state, we renamed the following:

renamed:    2004/hibachi/src/hibachi.c -> 2004/hibachi/hibachi.c
renamed:    2012/omoikane/nyaruko.alt.c -> 2012/omoikane/omoikane.alt.c
renamed:    2012/omoikane/nyaruko.alt2.c -> 2012/omoikane/omoikane.alt2.c
renamed:    2012/omoikane/nyaruko.c -> 2012/omoikane/omoikane.c
renamed:    2012/omoikane/nyaruko.orig.c -> 2012/omoikane/omoikane.orig.c

Modified `bin/subst.entry-index.sh` to add to entry `index.html` file,
links to the `Makefile` and the _C code_ to the top navigation bar.
Changed `bin/subst.entry-index.sh` VERSION from "1.2.2 2024-02-25"
to "1.3 2024-03-02".

Moved printing the Inventory link in the top navigation bar
from `bin/subst.entry-navbar.awk` to `bin/subst.entry-index.sh`.
Changed `bin/subst.entry-navbar.awk` VERSION from "1.0.1 2024-02-23"
to "1.1 2024-03-02".

Moved printing the Inventory link in the top navigation bar
from `bin/subst.year-navbar.awk` to `bin/subst.year-index.sh`.
Changed `bin/subst.year-index.sh` VERSION from "1.0 2024-02-11"
to "1.1 2024-03-02".
Changed `bin/subst.year-navbar.awk` VERSION from "1.0 2024-02-11"
to "1.1 2024-03-02".

Added location names (both default and common) to `author.html`.
Changed `tmp/gen_author_json.sh` VERSION from "1.0 2023-06-06"
to "1.1 2024-03-04".

Added location names (both default and common) to `author.html`.
Changed `bin/gen-authors.sh` VERSION from "1.2 2024-03-09"
to "1.3 2024-03-04".

The manifest and the resulting `.entry.json` files have been changed
for `2004/hibachi` and `2012/omoikane`.

The Makefiles for  `2004/hibachi` and `2012/omoikane` copy the
source file into the "previously used location".  The `make clobber`
rule removes the copied source.  The `.gitignore` files have been
updated accordingly.

Improved how the concept of IOCCC terms _entry_, _author_ and _submission_ are
used in markdown files.

Links to markdown files (files ending in .md) within the repo were
changed to link to HTML files (files ending in .html).  Special cases
where `README.md` became `index.html` were modified accordingly.

Fixed URL for `bugs.html` in Makefile comments.

Fixed name of `bin/sgi.sh` referenced in comments in `.gitignore` files.

Links to locations within the repo are now relative.  For example a
link to `/contact.html` may become `../contact.html' or '../../contact.html`
depending on the directory level of the markdown file.

Nearly all links with absolute URLs under _https://www.ioccc.org_
or `https://ioccc-src.github.io/temp-test-ioccc_ have been changed to
relative paths within the repo.  Some exceptions to this (such as
referring to a GitHub repo) were preserved.

Fixed a number of inside `faq.md` and `bugs.md`.

Added HTML name tags (in the form of an _entry_id_) for each entry
referenced in `bugs.md`.  Fixed links from outside of `bugs.html`
into `bugs.html` accordingly.

Where FAQ entries are referenced, a named tag is used so that if a
FAQ is ever renumbered, links outside of `faq.html` will still work.

Changed the _inventory_order_ of a compressed tarball from _300_
to _100000_.  While this may have been done for the manifest,
this changed had not yet been propagated into the `.entry.json` files.

Links to web sites that were in the for <URL> are now [URL](URL).

Performed `name www` to process all of the above.

Improved format of `authors.html`.  Full names are now bold.
Location codes are now links back into `location.html` and
location names (both default and common) are now italics.
Added _author_handle_ each author.

Changed `bin/gen-authors.sh` VERSION from "1.1 2024-02-25"
to "1.2 2024-03-09".

Improved format of `location.html` as location codes are now bold,
author counts in a given location are now bold, and location names
(both default and common) are now italics.

Changed `bin/gen-location.sh` VERSION from "1.0.1 2024-02-23"
to "1.1 2024-03-04".

Added italic location name after location code in entry
`index.html` files.

Changed `bin/output-index-author.sh` VERSION from "1.4.1 2024-02-23"
to "1.5 2024-03-04".

Added _Location of authors_ to the sidebar as a link to `location.html`.

TODO: While nearly all of the above mentioned changes are likely correct,
      they likely introduced a few errors that need correcting.
This commit is contained in:
Landon Curt Noll committed 2024-03-04 23:45:28 -08:00
1 parent 91c55a20fd
commit 2b92c89be8
1811 files changed
+11313 -9962

No files matched your search

+8 -8
View File
@@ -433,14 +433,6 @@
"display_via_github" : true,
"entry_text" : "summarize the results of spotcheck"
},
{
"file_path" : "2018_burton2.tar.bz2",
"inventory_order" : 300,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
"entry_text" : "download entry source"
},
{
"file_path" : "src.doc.txt",
"inventory_order" : 300,
@@ -449,6 +441,14 @@
"display_via_github" : true,
"entry_text" : "SPOILER WARNING hints about the source"
},
{
"file_path" : "2018_burton2.tar.bz2",
"inventory_order" : 100000,
"OK_to_edit" : false,
"display_as" : "tbz2",
"display_via_github" : false,
"entry_text" : "download entry source"
},
{
"file_path" : "index.html",
"inventory_order" : 2000000000,
+1 -1
View File
@@ -1,5 +1,5 @@
#
# sort with: ../../bin/sgi
# sort with: ../../bin/sgi.sh
*.dSYM
fixed_iocccsize
indent
+1 -1
View File
@@ -10,7 +10,7 @@
# Bug fixes, corrections and typo fixes are VERY WELCOME. If you see a problem,
# first check this URL for a list of known bugs and (mis)features of IOCCC entries:
#
# https://www.ioccc.org/bugs.md
# https://www.ioccc.org/bugs.html
#
# GitHub pull requests are welcome! Please see the above URL for details.
#
+9 -9
View File
@@ -28,7 +28,7 @@ man ./tac.1
## Judges' remarks:
They say size isn't everything, and in the case of IOCCC
[iocccsize.c](https://www.ioccc.org/2018/iocccsize.c) that is saying something!
[iocccsize.c](../../2018/iocccsize.c) that is saying something!
What is this program weighing and how much does it weigh?
@@ -121,7 +121,7 @@ Fixing this properly hampers backwards compatibility in counting. This requires
eliding comments during the translation phases (ISO 5.1.1.2, phase 3), and yet still
counting words correctly absent `-k`.
[1]: /2014/birken/README.md "Best use of port 1701"
[1]: ../../2014/birken/index.html "Best use of port 1701"
### Backwards Compatibility:
@@ -133,7 +133,7 @@ find ~/src/obc -type f -name \*.c | wc
```
The discrepancies found are documented and explained in the file
[discrepancies.md](discrepancies.md).
[discrepancies.html](discrepancies.html).
```sh
find ~/src/obc -type f -a -name "*.c" | xargs ./spotcheck.sh ./prog | ./spotdiff.sh |
@@ -143,7 +143,7 @@ find ~/src/obc -type f -a -name "*.c" | xargs ./spotcheck.sh ./prog | ./spotdiff
In summary, there are only 6 unique entries out of 366 that have any variation
in Rule 2 counts; in all cases, the differences are due to bugs within
`iocccsize`, described in detail in the file
[discrepancies.md](discrepancies.md). There are only 40
[discrepancies.html](discrepancies.html). There are only 40
files (40/366, ~11%, including originals and variations) that differ at all, 31
only in word count; most word count differences appear related to comment block
detection, weighted more towards recent entries (2011 and onward = 20/40 ~50%).
@@ -164,10 +164,10 @@ determine which tool was correct when there were differences.
> Nevertheless, the more clearly written code remains a spoiler for this entry.
NB: `iocccsize` gets a different answer from `tac` on its own
([iocccsize.c](/2018/iocccsize.c)) source code;
([iocccsize.c](../../2018/iocccsize.c)) source code;
`tac` gets the correct answer. This is due to the aforementioned bugs within `iocccsize`,
proved by fixing
[iocccsize.c](/2018/iocccsize.c) with the included patch, so `iocccsize` reports
[iocccsize.c](../../2018/iocccsize.c) with the included patch, so `iocccsize` reports
the correct answer for itself.
### But wait... There's More!
@@ -292,7 +292,7 @@ sed 's/^# .*$//' | sed 's/^#//' |
* The code describes its function by careful arrangement of variables up front...
* ...coupled with a description of the typical IOCCC contestant, or at least the author
* Why shouldn't trigraph parsing be written in trigraph?
* Where [iocccsize.c](/2018/iocccsize.c) mocks, this code flaunts:
* Where [iocccsize.c](../../2018/iocccsize.c) mocks, this code flaunts:
"_no matter how well you may think you understand this code, you don't, so don't mess with it. :-)_"
* `O,0,l,1` are used to confusing effect, local names obscure global names.
* Globals are used to pass information between routines: don't reorder "unrelated" statements....
@@ -337,7 +337,7 @@ The following reserved word files are included:
* [ioccc.kw.freq](ioccc.kw.freq) c11 + additional words, sorted on frequency of occurrence in IOCCC entries
NB: The keyword file used in this code is derived from the list in [iocccsize.c](https://www.ioccc.org/2018/iocccsize.c),
NB: The keyword file used in this code is derived from the list in [iocccsize.c](../../2018/iocccsize.c),
which is neither complete (`#define`, `#ifndef`, `#undef` are missing
-- yes, Virginia knows about `#define` omitted on purpose),
nor correct (many more are added: `I`, `true`, `bool`, `compl`, ...):
@@ -389,7 +389,7 @@ cc -ansi -Wall -trigraphs -Wno-trigraphs -Wno-parentheses -Wno-empty-body -Wno-c
### Coda:
[Cody Boone Ferguson](/authors.html#Cody_Boone_Ferguson) was relentless in his pursuit of bugs.
[Cody Boone Ferguson](../../authors.html#Cody_Boone_Ferguson) was relentless in his pursuit of bugs.
Thanks to his reports, the version of [unob.sh](unob.sh) is stronger,
`tac` groks digraphs, [tokenfix.sh](tokenfix.sh) corrects for missing digraphs
in [prog.c](prog.c), and the program [manpage.sh](manpage.sh) was added to the corpus.
+1
View File
@@ -66,6 +66,7 @@
<a href="../../index.html">IOCCC Home</a>
<a href="../../years.html">Winning Entries</a>
<a href="../../authors.html">People who have won</a>
<a href="../../location.html">Location of authors</a>
</div>
<hr>
<div class="sidenav">
+36 -34
View File
@@ -45,6 +45,8 @@
<a class="Left" href="../burton1/index.html">&larr; burton1</a>
<a class="Left" href="../index.html">&uarr; 2018 &uarr;</a>
<a class="Left" href="../ciura/index.html">ciura &rarr;</a>
<a class="Right" href="https://github.com/ioccc-src/temp-test-ioccc/2018/burton2/prog.c">C code</a>
<a class="Right" href="https://github.com/ioccc-src/temp-test-ioccc/2018/burton2/Makefile">Makefile</a>
<a class="Right" href="#inventory">Inventory</a>
</div>
@@ -69,6 +71,7 @@
<a href="../../index.html">IOCCC Home</a>
<a href="../../years.html">Winning Entries</a>
<a href="../../authors.html">People who have won</a>
<a href="../../location.html">Location of authors</a>
</div>
<hr>
<div class="sidenav">
@@ -117,7 +120,8 @@
<h2 id="author"><a name="author"></a>Author:</h2>
<ul>
<li>Name: <a href="../../authors.html#Dave_Burton">Dave Burton</a><br>
Location: <a href="../../location.html#US">US</a> <br><br></li>
Location: <a href="../../location.html#US">US</a> - <em>United States of
America</em> (<em>United States</em>) <br><br></li>
</ul>
<!-- END: next line ends content generated by: bin/output-index-author.sh -->
@@ -135,9 +139,8 @@ Location: <a href="../../location.html#US">US</a> <br><br></li>
<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">man</span> ./tac.1</span></code></pre></div>
<h2 id="judges-remarks">Judges’ remarks:</h2>
<p>They say size isn’t everything, and in the case of IOCCC <a
href="https://www.ioccc.org/2018/iocccsize.c">iocccsize.c</a> that is
saying something! What is this program weighing and how much does it
weigh?</p>
href="../../2018/iocccsize.c">iocccsize.c</a> that is saying something!
What is this program weighing and how much does it weigh?</p>
<h2 id="authors-remarks">Author’s remarks:</h2>
<h3 id="tac---tokenize-and-count-c-and-derivative-languages">tac -
tokenize and count C and derivative languages:</h3>
@@ -219,8 +222,8 @@ double quote in <code>iocccsize</code>)</li>
<code>#ifdef</code> is allowed?)</li>
<li><code>I</code> is not a reserved word.</li>
<li><code>tac</code> correctly penetrates <a
href="/2014/birken/README.md" title="Best use of port 1701">23rd century
cloaking technology</a>. ;-)</li>
href="../../2014/birken/index.html" title="Best use of port 1701">23rd
century cloaking technology</a>. ;-)</li>
</ul>
<p>There is one (known) remaining problem with detection:</p>
<ul>
@@ -238,17 +241,17 @@ This requires eliding comments during the translation phases (ISO
entries:</p>
<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">find</span> ~/src/obc <span class="at">-type</span> f <span class="at">-name</span> <span class="dt">\*</span>.c <span class="kw">|</span> <span class="fu">wc</span></span></code></pre></div>
<p>The discrepancies found are documented and explained in the file <a
href="discrepancies.md">discrepancies.md</a>.</p>
href="discrepancies.html">discrepancies.html</a>.</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="fu">find</span> ~/src/obc <span class="at">-type</span> f <span class="at">-a</span> <span class="at">-name</span> <span class="st">&quot;*.c&quot;</span> <span class="kw">|</span> <span class="fu">xargs</span> ./spotcheck.sh ./prog <span class="kw">|</span> <span class="ex">./spotdiff.sh</span> <span class="kw">|</span></span>
<span id="cb7-2"><a href="#cb7-2" aria-hidden="true" tabindex="-1"></a> <span class="fu">grep</span> <span class="at">-v</span> keep <span class="kw">|</span> <span class="fu">diff</span> <span class="at">-bw</span> <span class="at">-</span> discrep<span class="pp">*</span> <span class="kw">|</span> <span class="fu">grep</span> <span class="st">&quot;[&lt;&gt;] cl &quot;</span></span></code></pre></div>
<p>In summary, there are only 6 unique entries out of 366 that have any
variation in Rule 2 counts; in all cases, the differences are due to
bugs within <code>iocccsize</code>, described in detail in the file <a
href="discrepancies.md">discrepancies.md</a>. There are only 40 files
(40/366, ~11%, including originals and variations) that differ at all,
31 only in word count; most word count differences appear related to
comment block detection, weighted more towards recent entries (2011 and
onward = 20/40 ~50%).</p>
href="discrepancies.html">discrepancies.html</a>. There are only 40
files (40/366, ~11%, including originals and variations) that differ at
all, 31 only in word count; most word count differences appear related
to comment block detection, weighted more towards recent entries (2011
and onward = 20/40 ~50%).</p>
<p>This (minor) variation in word count values has not been addressed
since it is not a qualifying metric, nor is it very useful in a
programming context: whitespace surrounds English words, not necessarily
@@ -269,11 +272,11 @@ entry.</p>
</blockquote>
<p>NB: <code>iocccsize</code> gets a different answer from
<code>tac</code> on its own (<a
href="/2018/iocccsize.c">iocccsize.c</a>) source code; <code>tac</code>
gets the correct answer. This is due to the aforementioned bugs within
<code>iocccsize</code>, proved by fixing <a
href="/2018/iocccsize.c">iocccsize.c</a> with the included patch, so
<code>iocccsize</code> reports the correct answer for itself.</p>
href="../../2018/iocccsize.c">iocccsize.c</a>) source code;
<code>tac</code> gets the correct answer. This is due to the
aforementioned bugs within <code>iocccsize</code>, proved by fixing <a
href="../../2018/iocccsize.c">iocccsize.c</a> with the included patch,
so <code>iocccsize</code> reports the correct answer for itself.</p>
<h3 id="but-wait-theres-more">But wait… There’s More!</h3>
<p>There is no limit on line length, file length, comment length, or
identifier length.</p>
@@ -388,9 +391,9 @@ variables up front…</p></li>
<li><p>…coupled with a description of the typical IOCCC contestant, or
at least the author</p></li>
<li><p>Why shouldn’t trigraph parsing be written in trigraph?</p></li>
<li><p>Where <a href="/2018/iocccsize.c">iocccsize.c</a> mocks, this
code flaunts: “<em>no matter how well you may think you understand this
code, you don’t, so don’t mess with it. :-)</em>”</p></li>
<li><p>Where <a href="../../2018/iocccsize.c">iocccsize.c</a> mocks,
this code flaunts: “<em>no matter how well you may think you understand
this code, you don’t, so don’t mess with it. :-)</em>”</p></li>
<li><p><code>O,0,l,1</code> are used to confusing effect, local names
obscure global names.</p></li>
<li><p>Globals are used to pass information between routines: don’t
@@ -442,12 +445,11 @@ class="uri">http://docs.oracle.com/javase/specs/index.html</a></li>
sorted on frequency of occurrence in IOCCC entries</li>
</ul>
<p>NB: The keyword file used in this code is derived from the list in <a
href="https://www.ioccc.org/2018/iocccsize.c">iocccsize.c</a>, which is
neither complete (<code>#define</code>, <code>#ifndef</code>,
<code>#undef</code> are missing – yes, Virginia knows about
<code>#define</code> omitted on purpose), nor correct (many more are
added: <code>I</code>, <code>true</code>, <code>bool</code>,
<code>compl</code>, …):</p>
href="../../2018/iocccsize.c">iocccsize.c</a>, which is neither complete
(<code>#define</code>, <code>#ifndef</code>, <code>#undef</code> are
missing – yes, Virginia knows about <code>#define</code> omitted on
purpose), nor correct (many more are added: <code>I</code>,
<code>true</code>, <code>bool</code>, <code>compl</code>, …):</p>
<div class="sourceCode" id="cb13"><pre
class="sourceCode sh"><code class="sourceCode bash"><span id="cb13-1"><a href="#cb13-1" aria-hidden="true" tabindex="-1"></a><span class="kw">(</span><span class="fu">sed</span> <span class="at">-n</span> <span class="st">&#39;1p&#39;</span> c11<span class="kw">;</span> <span class="fu">sed</span> <span class="at">-n</span> <span class="st">&#39;2,$p&#39;</span> ioccc.kw.freq <span class="kw">|</span> <span class="fu">sort</span><span class="kw">)</span> <span class="kw">|</span> <span class="fu">comm</span> <span class="at">-3</span> <span class="at">-</span> c11</span></code></pre></div>
<p>That is an obfuscated way to say “diff”. But it also more clearly
@@ -489,12 +491,12 @@ ASCII characters.</p>
<div class="sourceCode" id="cb14"><pre
class="sourceCode sh"><code class="sourceCode bash"><span id="cb14-1"><a href="#cb14-1" aria-hidden="true" tabindex="-1"></a><span class="fu">cc</span> <span class="at">-ansi</span> <span class="at">-Wall</span> <span class="at">-trigraphs</span> <span class="at">-Wno-trigraphs</span> <span class="at">-Wno-parentheses</span> <span class="at">-Wno-empty-body</span> <span class="at">-Wno-char-subscripts</span> <span class="at">-Wno-pointer-sign</span> <span class="at">-DU</span><span class="op">=</span>O <span class="at">-DW</span><span class="op">=</span><span class="dt">\&quot;</span>keywords<span class="dt">\&quot;</span> <span class="at">-o</span> prog prog.c</span></code></pre></div>
<h3 id="coda">Coda:</h3>
<p><a href="/authors.html#Cody_Boone_Ferguson">Cody Boone Ferguson</a>
was relentless in his pursuit of bugs. Thanks to his reports, the
version of <a href="unob.sh">unob.sh</a> is stronger, <code>tac</code>
groks digraphs, <a href="tokenfix.sh">tokenfix.sh</a> corrects for
missing digraphs in <a href="prog.c">prog.c</a>, and the program <a
href="manpage.sh">manpage.sh</a> was added to the corpus.</p>
<p><a href="../../authors.html#Cody_Boone_Ferguson">Cody Boone
Ferguson</a> was relentless in his pursuit of bugs. Thanks to his
reports, the version of <a href="unob.sh">unob.sh</a> is stronger,
<code>tac</code> groks digraphs, <a href="tokenfix.sh">tokenfix.sh</a>
corrects for missing digraphs in <a href="prog.c">prog.c</a>, and the
program <a href="manpage.sh">manpage.sh</a> was added to the corpus.</p>
<p><a href="manpage.sh">manpage.sh</a> is a useful program that turns
ASCII versions of man pages (e.g. <a href="tac.man">tac.man</a>) into
real man pages. It works for C and C-like languages, command lines, and
@@ -690,11 +692,11 @@ href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2018/burton2/v7un
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2018/burton2/spotdiff.sh">spotdiff.sh</a>
- summarize the results of spotcheck</li>
<li><a href="2018_burton2.tar.bz2">2018_burton2.tar.bz2</a> - download
entry source</li>
<li><a
href="https://github.com/ioccc-src/temp-test-ioccc/blob/master/2018/burton2/src.doc.txt">src.doc.txt</a>
- SPOILER WARNING hints about the source</li>
<li><a href="2018_burton2.tar.bz2">2018_burton2.tar.bz2</a> - download
entry source</li>
</ul>
<h2 id="secondary-files">Secondary files</h2>
<ul>