Added `bin/find-missing-links.sh` tool to check for
markdown links to missing local files.
Regarding the missing link tool:
```
Here be extended regular expression magic dragons! :-)
```
Added `make find_missing_links` to the top level Makefile.
Added `make find_missing_links` to `make www` and `make quick_www`.
Ran `make www` to perform the above.
TODO: Fix markdown links to missing local files.
Fixed stuff we broke by mistake, previously.
Ran `make www` to perform the above.
TODO: Fix stuff we broke by mistake doing the above.
TODO: Fix more broken markdown links.
We fix more markdown links in markdown files that refer to files
internally to the web site.
Added tmp tools to find and print various markdown links:
* `tmp/md-links.sh` - print all markdown links
* `tmp/md-token-links.sh` - print all markdown links that start with a **%%TOKEN%%**
* `tmp/md-local-links.sh` - print all markdown links to a local file
* `tmp/md-link-paths.sh` - print local file paths referenced in markdown links
Fixed a number of markdown formatting problems with `thanks-for-help.md`.
Fixed markdown links to files in `thanks-for-help.md`. Improved
heading levels in `thanks-for-help.md`, and made entry sections consistent.
Changed all markdown links that end in "))" to end in a better way.
Explained in `markdown.md` why we are avoiding markdown links that
end in "))".
Ran `make www` to perform the above.
TODO: Fix stuff we broke by mistake doing the above.
TODO: Fix more broken markdown links.
For browsers that have JavaScript disabled, topbar puts up
a link that reads "Please Enable JavaScript" instead of the
so-called "hamburger menu" icon.
Fixed a number of internal links that were broken
when by commit `e7d69bc23270e8ad73d391d15d4c996ffbd33cc3 and
perhaps a few other earlier commits.
Ran `make www` to perform the above.
The icons used to show the menu open (`png/hamburger-icon-open.png`)
and closed (`png/hamburger-icon-closed.png`) have been added.
Changed `inc/topbar.default.html` to use the png icons instead
of a svg file.
A new page `nojs-menu.html` has been added for when
JavaScript is disabled.
Changed `bin/gen-top-html.sh` VERSION from to "1.4.4 2024-04-21"
to "1.4.5 2024-04-23".
Sorted top sections in `inc/md2html.cfg` and added
a section for `nojs-menu.md`.
Fixed `ioccc.css` so that the topbar and related pulldown
menus had the correct background colour.
Ran `make www` to perform the above.
TODO: Detect when JavaScript is disabled and display:
Please
Enable
JavaScript
As a link to the new `nojs-menu.html` page.
TODO: Fix a problem on wide screens where some of
the righthand edge pulldown menus are cutoff.
TODO: Fix the 5 HTML 5 errors introduced by the topbar code.
The topbar, by way of JavaScript, now works
on mobile devices such as cell phones and
tablets.
Internal links for entries from 1984 thru 2015
have been adjusted.
Ran `make www` to perform the above.
TODO: Fix some color issues on topbar.
TODO: More testing!
We toned down the FAQ 0.1 entry, referring instead to
_frequently submitted_ themes and providing suggestions
to those who wish to try and submit such entries.
Run `make gen_top_html` to perform the above.
Added "2024-04-20" news update.
Fixed format for "2023-05-22" news.
Fixed bad links to `judges.html`.
Add "Jump to: top" near the bottom.
The `make gen_top_html` no longer builds `next/rules.html`
nor `next/guidelines.html`. This is being done by
the `bin/gen-status.sh` tool and `make gen_status`.
Moved `make gen_top_html` after `make gen_status` in the top level
Makefile rules for `make www` and `make quick_www` because
`bin/gen-status.sh` uses the modification date of `news.html` (that
make gen_top_html might modify) when forming `status.json`.
Added FAQ 6.12 for "What is Mastodon and why does IOCCC use it?".
Simplified `contact.html` mastodon info to refer the above FAQ
for further mastodon information.
Changed `bin/gen-top-html.sh` VERSION from "1.4.2 2024-04-21"
to "1.4.3 2024-04-21".
The `bin/gen-status.sh` tool will build `next/rules.html` and/or
`next/guidelines.html` if they are missing or empty.
Changed `bin/gen-status.sh` VERSION from "1.3 2024-04-14"
to "1.4 2024-04-21".
Run `make gen_top_html gen_status` to perform the above.
Add request for help for the "ZZ - Unknown location" authors.
Add "Jump to: top" near the bottom.
Changed `bin/gen-location.sh` VERSION from to "1.3 2024-04-16"
to "1.4 2024-04-21".
Improved FAQ 5.5, asking for help for ZZ location authors
and making better references to FAQ 6.10 about pull requests.
Run `make gen_location gen_top_html` to perform the above.
Add `markdown.md` which generates `markdown.html`
to document IOCCC markdown best practices.
Changed `bin/gen-top-html.sh` VERSION from to "1.4.1 2024-04-16"
to "1.4.2 2024-04-21".
Added FAQ 0.6 about IOCCC mark requirements.
Run `make gen_top_html timestamp` to perform the above.
Add "<!-- BEFORE: 1st line of markdown file: FILE/PATH -->"
before the markdown content. This line appears in the
generated HTML.
Add "<!-- AFTER: last line of markdown file: FILE/PATH -->"
after the markdown content. This line appears in the
generated HTML.
We test a fix relating to problems produced by `pandoc(1)`
when footnotes are added at the end of generated HTML.
This test is made for `2000/bmeyer/index.html`.
Fixed exit 4 in `bin/md2html.sh that should be exit 5.
Changed `bin/md2html.sh` VERSION from to "1.3 2024-04-14"
to "1.4 2024-04-18".
Run `bin/readme2index.sh -v 1 2000/bmeyer` to perform the above.
We added a checkmark all narbar's that has the make effect of
clicking on the **Nu HTML check this web page** link at the very
bottom. This makes it much more convenient when one needs
to quickly check the HTML of a number of web pages.
Run `make www` to perform the above.
Attempted to fix formatting problems of `faq.html`
that was introduced in commit 476b0d45f0.
Run `make gen_top_html` to perform the above and test under macOS.
Thank you, @chris-sab, for your excellent work and for helping us
commit this alpha version of the topbar.
As part of this work, the following HTML sections were removed:
* begin-row
* begin-leftcolumn
* sidenav
* end-leftcolumn
* begin-rightcolumn
* before-content
* end-rightcolumn
* end-row.default
Also added a new HTML section, just above the "header" section:
* topbar
The web site now as a more modern looking topbar, thanks to the
work of the contractor (GitHub user @chris-sab) who is working on
issue #2273.
Performed `make www` to implement the above and test under macOS.
TODO: Fix the Responsive Web Design to deal with
the new topbar system.
TODO: Improve the topbar. What is there now is
just an alpha version.
TODO: Decide what to do with `png/ioccc.png`.
Remove it make selective use of the image on certain top level
pages lower down?
TODO: The changes to `ioccc.css` causes some
formatting problems with pages such as `location.html` (missing
blank lines). Fix formatting problems as needed.
TODO: Fix the "Nu HTML check this web page"
links on things like the year level _YYYY/index.html_ pages.
TODO: Correct all HTML errors, warnings and perhaps
informative messages from the Nu HTML check.
TODO: Consider adding color (colour) to the
web pages in such a way that people with color perception
challenges can still use the web site.
TODO: For those web browsers that have and allow
JavaScript, make use of technology such as [Code
Mirror](https://codemirror.net/) to directly render source
code (C, shell, Makefile, etc.) with syntax coloring (colouring)
directly in the browser. For non-JavaScript browsers, fallback
to the current use of GitHub source code viewing.
This one of the parts of the change to the [look and feel
change](https://github.com/ioccc-src/temp-test-ioccc/issues/2273#issuecomment-2059754857)
wrote about.
Stay tuned ...
It turns out that one cannot have a div element inside an h2 element.
This does not work:
```html
<h2><div id="copyright">Copyright and CC BY-SA 4.0 License</div></h2>
```
Instead we need to do:
```html
<div id="copyright"><h2>Copyright and CC BY-SA 4.0 License</h2></div>
```
We are testing a fix for the top level HTML files.
Run `make gen_top_html` to perform the above and test under macOS.
TODO: Apply this type of fix across the entire web site if all is well.
This HTML is now obsolete in HTML 5:
```html
<a name="faq0"></a>Section 0: Submitting entries to a new IOCCC
```
Instead we need to use the div HTML elements:
```html
<div id="faq0">Section 0: Submitting entries to a new IOCCC</div>
```
We are testing a fix for the top level HTML files.
Run `make gen_top_html` to perform the above and test under macOS.
TODO: Apply this type of fix across the entire web site if all is well.
Fix `bin/gen_top_html` to generate the proper Nu HTML check URLs.
Changed `bin/gen_top_html` VERSION from "1.3 2024-04-14"
to "1.4 2024-04-15".
Remove improper "xmlns:cc="http://creativecommons.org/ns#"
from `inc/inc/footer.default.html`.
Run `make gen_top_html` to perform the above and test under macOS.
TODO: If this is successful, rebuild all other constructed HTML files.
By changing the _inventory_order_ of the compressed tarball from
**100000** to **1415926535**, the compressed tarball will land at
the top of the secondary file list and remain still easy to find.
Updated the `manifest.numbers` spreadsheet and rebuilt
the `.entry.json` files.
Added `next/` directory to hold the next IOCCC rules and guidelines.
Added `next/README.md` that `bin/gen-top-html.sh` uses to form
the `next/index.html` file.
Added _Rules and Guidelines_ link to the sidenav bar to link to the
`next/index.html` file.
Added _IOCCC Rules_ as `next/rules.md` that `bin/gen-top-html.sh`
uses to form the `next/rules.html` file.
Added _IOCCC Guidelines_ as `next/guidelines.md` that `bin/gen-top-html.sh`
uses to form the `next/guidelines.html` file.
Changed `bin/gen-top-html.sh` VERSION from "1.2.4 2024-04-13"
to "1.3 2024-04-14".
Prevent `pandoc(1)` from interpreting the commented out language
of a markdown code block as a code class. So a markdown such as:
````
``` <!---sh-->
...
```
````
that produced HTML of the form:
```html
<pre class="<!---sh-->"><code>...</code></pre>
```
will now produce HTML of the form:
```html
<pre><code>...</code></pre>
```
NOTE: Before when the language of a markdown code block
was not commented, the HTML produced by `pandoc(1)` was
oddly indented with extra whitespace on the first line
of the code block. While commenting out the language
of the code block removed some of the odd intending,
it left a weird class in the HTML pre block that
surrounded the HTML code block. This hack prevents
`pandoc(1)` from assigning a class to the HTML pre block.
Changed `in/md2html.sh` VERSION from "1.2.1 2024-04-13"
to "1.3 2024-04-14".
Added `make gen_sitemap` to end of both `make www` and `make
quick_www` in top level Makefile.
Ram `make www` to test under macOS and to perform the above.
**IMPORTANT NOTE**: The current `next/rules.md` and `next/guidelines.md`
are simply the 2020 IOCCC Rules and Guidelines converted into
markdown form. There are **NOT** the Rules and Guidelines that
will be used the IOCCC MOCK, nor the next IOCCC.
TODO: Improve the `bin/gen-status.sh` tool to modify the top of the
`next/rules.md` and `next/guidelines.md` files to keep them
in sync with the _contest_status_ as found in `status.json`.
TODO: Improve the look and feel of the `next/rules.md` and
`next/guidelines.md` markdown files.
Fixed the broken links for CC BY-SA 4.0 related icons.
Fixed broken Makefile and C code links in topnav bar
for entries.
Changed `bin/all-run.sh` VERSION from "1.3.2 2024-02-26"
to "1.3.3 2024-04-13"
Changed `bin/all-years.sh` VERSION from "1.0.2 2024-02-26"
to "1.0.3 2024-04-13"
Changed `bin/chk-entry.sh` VERSION from "1.1.5 2024-03-27"
to "1.1.6 2024-04-13"
Changed `bin/gen-authors.sh` VERSION from "1.3.2 2024-03-26"
to "1.3.3 2024-04-13"
Changed `bin/gen-location.sh` VERSION from "1.1.2 2024-03-26"
to "1.1.3 2024-04-13"
Changed `bin/gen-other-html.sh` VERSION from "1.0.3 2024-03-28"
to "1.0.4 2024-04-13"
Changed `bin/gen-sitemap.sh` VERSION from "1.3.5 2024-04-13"
to "1.3.6 2024-04-13"
Changed `bin/gen-status.sh` VERSION from "1.2 2024-03-30"
to "1.2.1 2024-04-13"
Changed `bin/gen-top-html.sh` VERSION from "1.2.3 2024-04-12"
to "1.2.4 2024-04-13"
Changed `bin/gen-year-index.sh` VERSION from "1.0.5 2024-03-28"
to "1.0.6 2024-04-13"
Changed `bin/gen-years.sh` VERSION from "1.1 2024-03-30"
to "1.1.1 2024-04-13"
Changed `bin/manifest.entry.json.awk` VERSION from "1.1 2024-02-11"
to "1.1.1 2024-04-13"
Changed `bin/md2html.sh` VERSION from "1.2 2024-03-30"
to "1.2.1 2024-04-13"
Changed `bin/output-index-author.sh` VERSION from "1.6 2024-03-31"
to "1.6.1 2024-04-13"
Changed `bin/output-index-inventory.sh` VERSION from "1.2.4 2024-03-27"
to "1.2.5 2024-04-13"
Changed `bin/output-year-index.sh` VERSION from "1.2 2024-03-30"
to "1.2.1 2024-04-13"
Changed `bin/pandoc-wrapper.sh` VERSION from "1.6 2024-03-31"
to "1.6.1 2024-04-13"
Changed `bin/quick-readme2index.sh` VERSION from "1.1.3 2024-03-26"
to "1.1.4 2024-04-13"
Changed `bin/readme2index.sh` VERSION from "1.2.2 2024-02-26"
to "1.2.3 2024-04-13"
Changed `bin/sort.gitignore.sh` VERSION from "1.1.5 2024-04-04"
to "1.1.6 2024-04-13"
Changed `bin/status2html.sh` VERSION from "1.1.3 2024-04-12"
to "1.1.4 2024-04-13"
Changed `bin/subst.default.sh` VERSION from "1.2.2 2024-02-26"
to "1.2.3 2024-04-13"
Changed `bin/subst.entry-index.sh` VERSION from "1.3.2 2024-03-26"
to "1.3.3 2024-04-13"
Changed `bin/subst.year-index.sh` VERSION from "1.1.2 2024-03-26"
to "1.1.3 2024-04-13"
Changed `bin/tar-entry.sh` VERSION from "1.3.4 2024-03-27"
to "1.3.5 2024-04-13"
Changed `bin/tar-year.sh` VERSION from "1.2.1 2024-03-28"
to "1.2.3 2024-04-13"
Changed `bin/untar-entry.sh` VERSION from "1.0.1 2024-03-26"
to "1.0.2 2024-04-13"
Changed `bin/untar-year.sh` VERSION from "1.0 2024-03-28"
to "1.0.1 2024-04-13"
Run `make www sitewap` to test and perform the above.
We improve the `inc/footer.default.html` file to make
the _Copyright and CC BY-SA 4.0 License_ clear.
We add `license.md` and generate `license.html` (via `make
gen_top_html`) so that key features and terms of the _Copyright and
CC BY-SA 4.0 License_ are accessible.
Add CC BY-SA 4.0 license images into the `png/` directory.
FYI: We use the license to allow the open use of IOCCC entry code,
and at the same time, we help ensure that those working on the IOCCC
have proper Attribution including, of course, the IOCCC winners
themselves! The _Copyright and CC BY-SA 4.0 License_ help ensure
that everyone may enjoy the IOCCC.
Added '#copyright' to all generated HTML pages so that the
_Copyright and CC BY-SA 4.0 License_ may be reached.
Changed `bin/gen-top-html.sh` VERSION from "1.2.2 2024-03-26"
to "1.2.3 2024-04-12".
Fix `bin/gen-sitemap.sh` to remove requirement of `ioccc.tar.bz2`.
Changed `bin/gen-sitemap.sh` VERSION from "1.3.4 2024-03-27"
to "1.3.5 2024-04-13".
Perform `make www sitemap` to perform the above.
We also give a _hint_ as to the next project.
TODO: Complete that next project we are _hinting_ at.
TODO: Review the work being done by a web designer to see
how their work might be incorporated into the web site.
We added a space between the markdown triple code mark
and language that was enclosed in HTML comments.
So a line of the form:
````
```<!---c--->
````
became:
````
``` <!---c--->
````
This was done to **help** some code see that the HTML comment
string was not a markdown code specifier. Not all code
understands this after this changed. For example, `pandoc(1)`
still forms HTML classes of the form "<!---c-->"
when it encounters the above mentioned change.
We also fixed a problem with `2019/dogon/README.md` regarding
a markdown code block.
We also fixed a problem with `2020/yang/README.md` regarding
a markdown code block.
When language is specified in a markdown code block such as:
````
```c
printf("Hello, world!\n");
```
````
is used, the resulting HTML as produced by `pandoc(1)` combined
with our revised `ioccc.css` is not intent the code block well.
A temporary "_hack-a-round_" is to turn the "markdown code language
specifier" into an HTML comment. For example:
````
```<!---c-->
printf("Hello, world!\n");
```
````
This commits turns off existing markdown code language specifiers
for now, while preserving our ability to restore them in the future
when a better "_hack-a-round_" to the "markdown code language
specifier" problem is found.
The HTML impact if this "_hack-a-round_" is to produce HTML that
looks like this:
```
<pre class="<!---c-->"><code> .. </code></pre>
```
We might be able to create a complex set of classes for each markdown
code language (there won't be very many) in `ioccc.css`, or we might
find a more general CSS (or maybe `pandoc(1)`?) solution.
For now, this hack-a-round will have to do.
All code blocks in markdown have been intended by at least 4 spaces.
We add `--tab-stop=8` to all `pandoc(1)` executions in order to set
a better tab stop indentation, especially for tab intended code blocks.
Changed `bin/pandoc-wrapper.sh` VERSION from "1.5.3 2024-03-26"
to "1.6 2024-03-31".
Fixed `1991/brnstnd/sorta.README.md` so that the sorta code
is code blocks.
Removed unneeded paragraph group in copyright in `inc/footer.default.html`.
Fixed excess whitespace after list Author on entry `index.html` page.
Changed `bin/output-index-author.sh` VERSION from "1.5.2 2024-03-26"
to "1.6 2024-03-31".
Performed `make www` to perform the above and test under macOS.
TODO: Fix the problem of the initial line of code being extra intended.
TODO: Fix excess whitespace around code that is inline.
We add `--tab-stop=8` to all `pandoc(1)` executions in order to set
a better tab stop indentation, especially for tab intended code blocks.
Changed `bin/pandoc-wrapper.sh` VERSION "1.5.3 2024-03-26"
to "1.6 2024-03-31".
Fixed `1991/brnstnd/sorta.README.md` so that the sorta code
is code blocks.
Removed unneeded paragraph group in copyright in `inc/footer.default.html`.
Performed `make www` to perform the above and test under macOS.
Renamed `ioccc.ico` to `favicon.ico`.
Correctly added use of `favicon.ico` to all constructed HTML headers.
Fixed the smart quote in HTML elements problem.
Moved HTML "DO NOT EDIT" comments down below at the bottom of the
HTML phase 1 section. According to to the Nu Html Checker, a charset
attribute on a meta element found after the first 1024 bytes.
Changed `bin/md2html.sh` VERSION from "1.1.3 2024-03-28"
to "1.2 2024-03-30".
Improved `bin/gen-status.sh` to adjust the "status_update" value
only when the "contest_status" is changed.
Performed a `make www` to perform and test the above under macOS.
Fixed links to year level compressed tarballs.
Added an "Inventory" of year-level compressed tarballs to the
generated `years.html` web page.
In `bin/gen-years.sh` changed VERSION from "1.0.3 2024-03-26"
to "1.1 2024-03-30".
In `bin/output-year-index.sh` changed VERSION from "1.1.2 2024-03-26"
to "1.2 2024-03-30".
Added `inc/topnav.empty.html` for an empty narrow topnav bar.
Changed references from "topnav=." to "topnav=empty" in `inc/md2html.cfg`.
Removed top level `ioccc.tar.bz2` compressed tarball. NOTE: Sorry
(tm Canada 🇨🇦) to remove the top level `ioccc.tar.bz2` file. We
will look into [Git Large File Storage [Git-LFS](https://git-lfs.com/).
If Git-LFS works well and does not have undesirable side effects,
we will consider restoring `ioccc.tar.bz2`.
Removed top level Makefile rules for "untar_all_tarball" and
"form_all_tarball". Removed `bin/tar-all.sh`.
Added `make gen_status` to `make quick_www` and `make www` in the
top level `Makefile`.
Ran `make www` to perform the above and test under macOS.
The inc/footer.default.html now has a common Copyright and CC BY-SA
4.0 License section for all generated HTML files.
All markdown files have a similar Copyright and CC
at the bottom in the form of an HTML comment.
This improves the names of links and adds some new links as well. A
point of interest that could easily be missed with a diff is that the
link of Yusuke Endoh was changed from his GitHub account to his
authors.html section. Also, since the first successful pull request to
the winner repo was acknowledged by author (Yusuke Endoh) I added the
author of the first successful pull request to the temp-test-ioccc repo
(as the commit was cited) (and that indeed would be me). It might be
that keeping the GitHub accounts would be better and I can certainly
change them back but it seemed nicer to acknowledge the author entries
as that's the real honour of being a winner.
There were other things besides the above but they were all along the
same lines.
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.