The guidelines now link to both GitHub (viewing option) and directly to
the files Makefile.example, try.sh and try.alt.sh, as does the FAQ.
I made sure to keep the version of the guidelines and rules the same (as
in major.minor) but updated the date, as these changes are part of the
previous commit.
The Makefile.example file now has the ALT_OBJ and ALT_TARGET (with a
comment explaining how to use it) and the alt rule (which if the
variables are left empty it will do nothing with 'make alt' or 'make
everything').
The example Makefile now has the everything rule as well, for those who
have an alt target.
Fix links to next/try.sh, next/try.alt.sh and next/Makefile.example in
html files (guidelines/rules/FAQ) to not link to GitHub as they're
supposed to be downloaded.
In the thanks file the try.sh/try.alt.sh example files were linked to in
next/ but they're actually under template/entry, as discussed in the
previous commit.
The file template/entry/Makefile.entry was moved to
next/Makefile.example. This matches the mkiocccentry repo in filename
and where it was before (template/entry) is not the right place as that
is for the template of making submissions into a winning entry whereas
next/ is for the next contest. The next/ seems like the most logical
place because the example file could be updated per contest for whatever
reason, perhaps by adding the year in it (or not). On the other hand,
the try.sh in template/entry is for submitters too but since the
bin/cvt-submission.sh script will copy the template files to a winning
entry if it does not exist it is left in template/entry, even if this
might not be ideal.
The references to the old Makefile.entry have been updated to
Makefile.example in the new path/filename.
Other changes had to be made too including updates to
bin/cvt-submission.sh. That script should be checked to make sure
everything is okay but as I have no way to test it that might have to be
done by the judges though I think it is okay.
Html files that have been changed that might need to be checked are:
0. faq.html (this one especially should be checked)
1. next/guidelines.html (though the judges will be checking this more)
2. next/rules.html (though the judges will be checking this more)
For the faq.html file, the Makefile.example and try.sh/try.alt.sh
scripts should be downloaded, not linked to on GitHub and it needs to be
clear that one should use the Makefile.example from the website (this
repo) rather than the out of date mkiocccentry repo.
For the guidelines and rules, and especially the guidelines, any files
linked should also be downloaded and not linked to GitHub. The text
should be clear already but it might be good to have a quick pass. The
judges will be going over these files before the next contest too. The
files should be downloaded here too, not linked to GitHub as submitters
need to download the files to make use of.
The thanks-for-help.html file was slightly modified but should be fine
too. In this case the GitHub file should be linked to.
The version of the rules and guidelines are from an earlier date of when
they were last modified for the above changes (as this was worked on
over a number of days).
The scripts can be found under template/entry. A new FAQ entry has been
added and the guidelines have been updated.
The rules have a new div id ("version") to match what was added to
guidelines yesterday (since it's obvious what kind of version it is.
Once this has been merged html files need to be checked to make sure
everything is okay.
When jparse is not found it did not show how to install it, which is
needed for the script to function. It might be worth pointing out that
it does not use the jparse repo as that requires one to install the
libraries needed, whereas the mkiocccentry clone of the repo has the
libraries needed as part of its ecosystem.
This happened because when focusing on a bug for several days that had
to do with decoding code points (which so happens to be encoding but in
JSON it should be converted to unicode even when decoding) I lost sight
of the fact that jstrencode is meant to be **JSON** encoder. In the
process of this I have uncovered a number of other bugs but that's with
jstrencode and the website uses jstrdecode so this should not delay the
contest at all.
It now translates the characters '|' (pipe), '=' (equals) and '%'
(percent).
Checks were added in md2html.sh in the -s token=value so that token
cannot contain an = (equal), | (pipe) or a % (percent) and the value
cannot contain a | (pipe).
The reason that we cannot disallow a ';' or '&' is because the html
entities use those characters so if the sed script were to translate the
problematic characters it would cause a problem in the script.
Ran make www which updated 1988/robison/index.html and
1990/theorem/index.html.
1986/bright/README.md was fixed with the number of blank lines between
sections.
The file bin/html.sed has been fixed so that it works with
bin/md2html.sh (which has been modified and which is used via
bin/subst.entry-index.sh and output-index-inventory.sh). The script
output-index-inventory.sh was already updated to use html.sed so this
file has not been modified but the md2html.sh and subst.entry-index.sh
scripts have, along with bin/html.sed itself.
Tested make www which rebuilt several index.html files.
Updated bin/README.md as well as bin/index.html.
Testing that all the html files now are correct wrt Nu checker will have
to be done another time, however.
The script, for now, translates the following characters to their html
entity:
&, <, >
An important note that is in a comment is that the & MUST come first as
otherwise the & in the others will be corrupted.
One script uses this but in order to make sure it is okay make www will
have to be run first. Another script, the one that needs it even more,
has a problem that has to be discussed, before it can be used.
Nonetheless the html.sed file is at least added for the scripts once
things are tested okay.
The way the abstract is used for the index.html files does not allow for
parsing by pandoc so it did not work as expected (I did not verify the
two entries this is a problem).
The index.html files of these two entries have been modified. Unless the
script is updated the only other way is to update the abstract to use
< but this can be discussed.
In the case of two which had an abstract (.entry.json file) that
includes one (in one case) '<' or two (in another case) '<'s a markdown
code block had to be used as otherwise the abstract would have to have a
< which looks even worse. This is not ideal but if we want it to pass
lint this is what has to be done. Use of json \uxxxx won't work as that
encodes it to < literally.
In the case of 2018/burton[12] the author had a section called Coda.
This conflicted with the problem that all generated html files have such
a section. To fix this problem I renamed it 'Final remarks'. Not ideal
but at least it now passes as valid.
There were a number of different kinds of problems and in one case the
symbols < and > could be fixed by changing it to a code block (which it
should have been anyway) - that was 2020/ferguson1 I think.
A typo in markdown meant that a link was not formed.
Renamed enigma.html to enigma.txt. Although it was to be set to viewed
as text the problem is that as a html file running a linter on it will
cause errors (obviously).
The .entry.json and all files that referred to the file enigma.html (not
in remote web servers, obviously, but just this website) now refer to
enigma.txt, except that enigma.html was now added to .gitignore and the
recode.md (in the example command) redirects to enigma.html as that
should be a html file, assuming they have the right key (of the
selection I gave).
These problems were not discovered due to trying to get the html files
in a good state (ironically) and knowing that I had written a lot.
I believe now that the files should be okay.
Although I did use sgit I did it carefully and I still ran make
quick-readme2index and make gen_other_html.
In the previous commit when the missing files status was removed I
forgot to change that there is also a bug in part and in particular the
word 'also'.
With thanks to Leo, the filenames have been corrected in the
README.md/index.html file. As the manifest already has them (they were
under different names) the .entry.json file did not have to be updated.
The new file, greasymouse.man, IS the cat man page noted by the author
in their remarks. This file was provided by Leo as remark.txt but to
make it render better I have made it a .man file and, for syntax
highlighting, I moved the section titles to the first column of the
file.
I thought of making it a true man page but as the author suggested that
it is a cat man page I decided against this.