As besides the entries that are not supposed to compile/cannot compile
due to architectural limitations all the entries can compile in macOS
(though some do not work - yet(? I have plans to work on more later)) it
was not necessary to not silence the warnings after all as the entries
that don't work will be easy to identify ('they don't work' :-) ) so I
can just do make CSILENCE= all in the directory of those entries which
solves the problem I had originally thought of.
Some of the Makefiles have retained other changes I had to make
yesterday to get the entries to work with clang in linux but most of
them were either not changed or were made better with the rollback of
the commit that originally silenced warnings.
Now work on silencing warnings for linux can be done.
Due to the fact we now have .orig.c files and thus the possibility of
winner.orig or prog.orig being built I have updated all the .gitignore
files so that these files ignored. This was done with the following
shell commands, for reference:
for i in $(find 19* 200* 201[0123] -mindepth 2 -maxdepth 2 -name .gitignore) ; do echo $(dirname "$i"|sed -e 's,[0-9]\{4\}/,,g').orig >> "$i"; done
for i in $(find 201[4-9] 2020 -mindepth 2 -maxdepth 2 -name .gitignore) ; do echo prog.orig >> "$i"; done
and the two commands is because it was only in 2014 that the winning
entries were renamed to prog so prog.orig is the correct glob.
Used the following script to check for warnings
not silenced via ${CSILENCE}:
```sh
find ???? -mindepth 1 -maxdepth 1 -type d | while read dir; do
(cd "$dir"; echo =-=-= "$dir" =-=-= ; csilence -v 1 clobber all ; echo ; csilence -v 1 clobber alt)
done 2>&1 | less
```
The is a file excluded from this commit that has had the change because
there are other changes but the file is incomplete. That file will be
committed when the fixes are complete which will happen at a later date.
With commit f46e68740f twitter links were
converted to archived copies (due to Elon Musk threatening to delete
accounts that are not active) and the chocolate cake files had a link to
a tweet. However the 2020/ferguson2 chocolate cake files were encrypted
with a key (one of 16 I gave to experiment with the entry itself) which
means that the files were not updated. Now they have been so that when
properly decrypted they will link not to twitter itself but twitter on
the Internet Wayback Machine.
Question: what's the difference between SpaceX rockets and Twitter? Elon
Musk hasn't yet managed to blow up twitter!
We further deprecate the use of twitter.
In cases such as historic guidelines and rules, we add
a note about using Mastodon.
In cases where a tweet URL was used, we replace with
an Internet Archive link because twitter has announced
that accounts that are not used for a period of time
will be deleted.
We add a few missing deprecated_twitter information
to the author.numbers and author.cvs files.
We remove references to twitter handles (after making
sure that both author.numbers and author.cvs has the
deprecated_twitter information). When the "_README.md_"
files have their header information generated by
a tool, such deprecated_twitter data will not be present.
Yes well what can I say? I looked at the files by chance and saw a few
things that were not clear and needed to be corrected. Call me a snake
if you must! :-)
The solution is that when referring to html files have in parentheses
text like 'foo.md' on GitHub though with a link.
...at least I believe this should solve the problem. Time might show
otherwise but we'll see.
It seems like the problem might have been because before opening a pull
request the old file is viewed and the format was not correct there. Or
it might be I did something wrong. Hopefully this resolves the issue.
To make this easier to see what it all is I'm doing this in a separate
pull request.
Some of the links were broken and I added some links as well. I tried to
only link to the same thing once (per section) but it's possible I
missed some.
Format fixes in some code blocks and probably other things too.
Clarify and reword some things as well.
And _this_ should be the final one for now unless I see a problem on
GitHub (I'll be checking the rendered output of the markdown files and
making any fixes if necessary).
Extraneous ')' added by accident when adding a link yesterday.
I also, unrelated, clarified in a spot or two that one should use the
markdown files if reading on GitHub. This however is not consistent and
needs to be done throughout all files probably including other entries
(mostly README.md but there are certainly others).
With this commit I should be able to return to the other entries though
as Landon pointed out I might never finish this and this is a reason it
might not have been as thorough as I could have been (another part is
it's long). Nevertheless the formatting should now be okay along the
lines of what was requested for all the winning entry markdown files.
Updated the chocolate-cake.md file to stress important points (including
by making the ingredients - in the instructions parts - upper case to
make it stand out more). Some of the points are critical.
Added to 2020/ferguson2/.gitignore a file that is used to encrypt the
chocolate-cake.md (from 2020/ferguson1) for the Enigma entry (even
though anyone interested would use the 2020/ferguson1 plaintext
version). This is because it's easier to have than to look up the syntax
each time (of the recode program).
Fixed formatting in the markdown files. I did not check for typos due to
the fact I wrote so much (which I'm only sorry about in the sense that
it's too much to go through for almost everyone and this might make some
people miss useful/interesting things. If I had 'more "time" ' maybe I
could shorten it but I don't).
Renamed crazy.log to crazy.log.md. Updated Makefile for the DATA
variable.
Corrected file names in some cases.
Fixed formatting in man page.
There is one other change I have in 2020/ferguson1 but it's also needed
in 2020/ferguson2 so I'll do that at the same time.
It did not work if one did not choose to reconfigure colours and the alt
prog was not already compiled.
It now allows you to continue play after you end a game if you so
choose.
Shellcheck fixes.
... and that's all there is to it for now ...
I believe these commits improve the file and this should be all that's
needed unless something else shows otherwise. But as Landon said maybe
I'll never be done. I guess we'll see! :-)
In GitHub the code block overflows so I've attempted to fix this by
shortening the text. It might need further adjustments and maybe it
depends on screen width but I'm not sure of that.
Rename cannibalism.log to cannibalism.log.md as an experiment. I
believe it'll look nicer this way. I also made some changes that should
make it easier to see where each part of the game is (in some cases for
the tail; every case for the head and insect).
Updated gameplay.md to refer to the renamed file and removed the now
irrelevant information about cannibalism.log.
I did not regenerate gameplay.html but I did not remove it either. The
reason I didn't is because there will be a tool that converts markdown
to html files and since this commit won't sync to the IOCCC website it's
not a risk in the meantime. Nevertheless I want the html file in for the
time being. The html file is still referenced in the file too because
it's preferable that it's used when everything goes live (except on
GitHub of course).
I've not gone through the file entirely but I have some significant
fixes to make and I want to get my working repo clean so I can do these
fixes. I'll go through this file in full later.
Instead of relying on curl to obtain the text files just add them to the
repo.
Typo fixes.
Formatting fixes.
Added what on Middle-earth lámatyávë is to the README.md so that people
may enjoy the award title a bit better. From Morgoth's Ring, volume X of
the wonderful set History of Middle-earth (HoMe), one of many things
that were edited and published by the late Christopher Tolkien, heir and
literary executor of the great Tolkien.
I did not fix the strange output when more than one arg is specified nor
do I think I should.
I did not update Dave's comment that it will segfault on zero args nor
do I think I should (instead I updated the To run section like I've done
with the many others I've fixed).
There were many many README.md files with the wrong heading level for
different sections. These have been changed.
To help go through the changes it should be noted I used sgit and also
here is what is changed:
The 'Try', 'To build' and 'To run' lines have two '#'s. Some had one and
others had three.
An exception is that in 1984/anonymous/README.md for the alternative
code that had three '#'s. This is not consistent yet and it might be
that only two are desired. But for now that one at least has three.
For Makefiles that have alt related rules, moved
the related rules under the alt rule section.
In some cases where there is no alt code,
removed alt rules and/or targets.