Some broken links were fixed in some of the files like next/index.html,
next/pw-change.html, next/index.html and status.html.
Some wrong images were used in next/submit.html (or at least referred to
wrong if not wrong image).
Useful update to FAQ about the answers file in mkiocccentry.
There might have been other things.
This might be all that is needed for next/ wrt the register/change
password/submit but it's possible something has slipped through.
Added a new `next/submit.html` to move the "how to submit" form "in-line"
of the top FAQ entry into a new page managed by `next/submit.md`.
Thus, `next/submit.html` is a parallel to `next/register.html`
and `next/submit.md` is a parallel to `next/register.md`.
Changed the FAQ "faq.html#submit" and into "faq.html#enter".
Added individual tags for the steps in FAQ0.0.
Moved "faq.html#register" down to FAQ 0.0 step 2.
Added "faq.html#submit" for FAQ 0.0 step 5,
however elsewhere often "next/submit.html" is used.
Changed references for "faq.html#upload" to "next/submit.html".
We made a number of changes to the following markdown files to reflect the above:
- `about.md`
- `faq.md`
- `index.md`
- `markdown.md`
- `next/README.md`
- `next/README.md`
- `next/guidelines.md`
- `next/register.md`
- `next/rules.md`
- `nojs-menu.md`
- `status.md`
as well as these files:
- `bin/gen-top-html.sh`
- `bin/md2html.cfg`
and added:
- `next/submit.html`
- `next/submit.md`
Perform `make www` and `make gen_status` to perform the above and test under macOS.
TODO: Add images about the mailing list to `next/register.md`. See the line:
```
XXX - **put images and other details about joining the mailing list here** - XXX
```
Added a new `next/register.html` that is required by the mailing list server.
The `next/register.md` still contains a big **XXX - put more data here - XXX**
as a placeholder for information about the mailing list registration process.
Improved the status text for `faq.html`, `next/index.html` and `status.html`
via `faq.md`, `next/README.md` and `status.md`. We also removed the
excessive links to IOCCC and instead use the term "contest" where applicable.
IMPORTANT CHANGE: Registration be available when the contest is both pending and open.
We made a number of changes to `faq.md`, `next/README.md` in an attempt to
reflect the above.
Changed `bin/gen-status.sh` VERSION from "1.7 2024-09-23"
to "1.8 2024-11-23".
Changed `bin/gen-top-html.sh` VERSION from "1.4.9 2024-08-11"
to "1.4.10 2024-11-23".
Perform `make www` and `make gen_status` to perform the above and test under macOS.
TODO: Change **XXX - put more data here - XXX** in `next/register.md` for information
about how to join the mailing list.
We quasi-canonicalized markdown links to FAQ entries.
**IMPORTANT NOTE**: This is a useful step in completing issue #2417. This commit is consistent with the top level TODO comment requirements. Nevertheless, this changes made by this commit needs to be examined and in some cases improved.
A link to an FAQ entry is of the form:
```
FAQ on "[the link text](....faq.html#string)"
FAQ on "[the link text](....faq.html#string)"
```
The "FAQ" is at the start of the line, or in rare cases is preceded only by whitespace.
The reference to the FAQ starts outside of the markdown link with the string **FAQ ON "**.
After the markdown link is a **"** followed by either the end of line or a single punctuation character such as a period or comma.
We reduced the size of "the link text" that refer to an FAQ to at most 3 words. In some cases the sentence and/or text surrounding the markdown link to a FAQ may need to be further adjusted to better accommodate this new style.
**IMPORTANT NOTE**: References to a FAQ entry are on a separate line.
p.s. When linking to the `faq.html` file itself, we use markdown of the form "`the [IOCCC FAQ](..../faq.html)`" and place the word "the" outside of the "IOCCC FAQ" link text.
Given the above system (and because references to an FAQ entry is on a separate line), the following command shows links to FAQ entries, sorted by FAQ entry "link #name" so that one may evaluate the way a given FAQ entry is referenced:
```sh
find * -name '*.md' -print0 | xargs0 grep -E '^[[:space:]]*FAQ on "' | sed -e 's/^\([^:]*\):\( *FAQ on "[^#]*\)#\([^)]*\)\()".*\)$/#\3\t\1\t\2#\3\4/' | sort
```
The above command shows the value of consistency when it comes to FAQ references.
**NOTE**: There are a few differences on how a given FAQ is references. That is probably OK as there is NOT an "total mandate" that all references to a given FAQ must have the same "link text" for example. On the other hand if references to a given FAQ can be identical, that might be helpful. We are certain that in some contexts the "link text" might need to change.
Should we decide to change the way FAQ are referenced, we will be able to modify identify and modify them with greater ease.'
Examine the changes made by this commit and adjust and/or improve as needed.
Performed `make www` to accomplish the above and to test under macOS.
While not strictly necessary, replacing the two ASCII tab characters
in the markdown copyright comment makes it easier to detect problematic
TAB indentation within markdown files.
After this commit, only 90 markdown files have leading ASCII TAB
characters. And again, while not strictly necessary, we can consider
running expand on those 90 markdown files to see what effect that
might have on the HTML files they produce.
Replace leading ASCII TAB characters with multiples of 8 ASCII SPACE
characters (the default action of the `expand(1)` tool) might have
an negative effect on some HTML formatting where **hack-a-round**
formatting was attempted to fix broken indentation caused by
problematic ASCII TAB characters.
Think of this as a baseline for evaluating leading
TAB characters within markdown files.
TODO: Consider either using `expand(1)` to replace leading ASCII
TAB characters with multiples of 8 ASCII SPACE characters AND/OR
modifying the appropriate `bin` tool to convert leading ASCII TAB
characters into multiples of 8 ASCII SPACE characters.
For the improvements to the script, besides a typo, a link to the FAQ
(for submitting entries) has been added and a link to the GitHub issues
page (the new issue page) has been added in the case where an unknown
status appears in the status.json file.
The news update is that more progress has been made in that one of the
longer files to check for invalid links is done (thanks file) and that
two long files are left but that instead of looking at those two first
the other html files will be looked at first as it's quite possible that
both will have to be updated in some way or another as the other files
are being edited. Indeed this has happened numerous times already. This
way will save time and prevent having to look at those files a second
time. It also notes that some of the top level html files have also been
reviewed (see below) and a link was fixed (added a <div id="news"> for a
link that was linked to). I am fairly certain that I also fixed some
formatting problems and some links were fixed as well.
The status.md/status.html file has been updated with some links added,
more div blocks (for each section describing the status.json file),
which are used, slight formatting updates and possibly some other things
as well. As for some of the links we might say that it's 'statuses all
the way down' :-)
With this commit I am happy to report that some other top level files
have also been verified for invalid links:
judges.html
news.html
status.html
As the news.html file will be updated it is entirely possible that some
fixes will have to be made but the links up to and including 08 June
2024 (unless more changes are made today of course) need not be checked
again.
More top level html files (which include those in next/ and other
subdirectories that are not of the entries) also have to be checked but
these should also go relatively quickly.
Regenerated status.json file as the news has been updated.
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.
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.
Changed `bin/gen-status.sh` VERSION from "1.0 2024-03-09"
to "1.1 2024-03-10".
Changed `bin/status2html.sh` VERSION from "1.0 2024-03-09"
to "1.1 2024-03-10".
Improved for explanatory text added near the top of the
`index.html` page by `bin/status2html.sh`.
While `bin/status2html.sh` in intended as tool that is internally
called only, we allowed for a 0 arg use for those who are simply
curious as to what it does.
Tested various _contest_status_ values with `bin/gen-status.sh`.
This resulted in a forced change of _status_update_ in `status.json`.
Removed extraneous whitespace from `bin/output-index-author.sh`.
Performed `make www` to finalize all of the above, although a
`make gen_status` followed by `make gen_sitemap` would have
been sufficient.
Changed the model of `status.json` model.
Updated `status.json` IOCCC_status_version from "0.2 2023-05-22"
to "1.0 2024-03-09".
Updated FAQ 2.6, improving how IOCCC entries announced.
Moved `bin/ioccc-status.sh` to `tmp/ioccc-status.sh`
now that we have a new status.json model for
which this tool no longer fits (sorry tm Canada 🇨🇦).
Added `status.md` markdown to explain the `status.json` model.
Added `status.html` to both display the contents of `status.json`
and render the contents of `status.md` as HTML.
Added `bin/status2html.sh` to convert `status.json`
into HTML for the `status.html` file.
Added `bin/gen-status.sh` to form `status.json`
and `status.html` files.
Added `make gen_status` to top level Makefile.
Performed `make www` to complete all of the above.