405 Commits
Author SHA1 Message Date
Landon Curt Noll 657a0be130 add tool to sort .gitignore content
We sort with lines starting with # first.
We sort with lines starting with * second.
We sort with lines that do not start with [#!*] third.
We sort with lines starting with ! fourth.

Example usage in vim with a keyboard macro <escape>f:

```vim
:map ^[f 1G!G../../bin/sgi^M
```

 or via .vimrc:

```vimrc
" sort the entire .gitignore file using ../../bin/sgi
:map  ^[f 1G!G../../bin/sgi^M
```

 NOTE: The ^[ above is ((Escape)) and ^M is ((Control-M)).

Example usage in shell:

```sh
rm -f t && ../../bin/sgi < .gitignore > t && mv -f t .gitignore
```

Suggested usage:

```sh
bin/all-run.sh bin/sort.gitignore -v 1
```

Sorted all winner .gitignore according to this method.
Sorted all year level .gitignore according to this method.
Sorted top level .gitignore according to this method.
2024-02-01 14:35:49 -08:00
Cody Boone Ferguson a4a153cd74 Improve 2018/algmyr/try.sh + update FAQ
The script now does more (another feature of the program).

The FAQ now has a name of 'sox' for FAQ 3.10 which the script refers to
and the README.md file now refers it too (instead of 3.10).

Fix make clobber: rm *.wav.

Update .gitignore.
2024-01-31 09:12:10 -08:00
Cody Boone Ferguson 485b24beab Add 2018/bellard/try.sh 2024-01-31 08:52:06 -08:00
Cody Boone Ferguson 35ca2f8d1f Add 2018/anderson/try.alt.sh + improve try.sh 2024-01-31 07:03:16 -08:00
Cody Boone Ferguson 5259fc9b69 Improve wording in 2018/endoh2/try.sh 2024-01-31 06:25:28 -08:00
Cody Boone Ferguson 89b7d13c73 Improve 2018/endoh1/try.sh 2024-01-31 06:24:38 -08:00
Cody Boone Ferguson a1cac7d803 Improve 2018/burton2/try.sh 2024-01-31 06:23:12 -08:00
Cody Boone Ferguson a85ebbcfc6 Improve 2018/burton1/try.sh 2024-01-31 06:21:09 -08:00
Cody Boone Ferguson f6188dd4d8 Improve 2018/yang/try.sh + fix make clobber
The script now compiles generated1.c and runs it. This might actually be
one of the others (some of the generated*.c files have the same effect)
but it's perhaps interesting to show nonetheless. This is only done if
the spoilers option is selected.

Update .gitignore with better globs.

Fixed make clobber to remove generated* rather than generated*.c.
2024-01-31 06:13:21 -08:00
Cody Boone Ferguson 55ca7f433f Improve and add scripts to 2018/ferguson
The id.sh and id.alt.sh scripts are (for entry and alt entry that I
submitted to the contest) are for those who want to try and prove that
'"intelligent" design' is real or for those who know better to see how
long it'll take Eric the monkey to type 'EVOLUTION IS A PROVEN FACT'.
These were both added by the judges at time of publication but I moved
them to the try scripts. Now however the id scripts limit to 250000 max
attempts (see below on this change) before giving up to save time (and
to maybe let them move on to the next step, see below also).

The monkey-words.sh and monkey-words.alt.sh are to see how long it is
before the monkey Eric can type 'words' or more likely how long it'll
take before he gives up or falls asleep. I am no longer sure if I added
this or the judges did but I'm pretty sure I did.

As for the max attempts this one might need to be moved to a second alt
version for both but if so I don't know what to name them. This
reconfiguration option was not originally submitted but to show what
will happen when Eric fails it was added. It would normally be put in
prog.alt.c but prog.alt.c already exists: a simpler keyboard. But if the
new feature was moved to prog.alt.c what would prog.alt.c be? Maybe
prog.alt2.c but then what about the simpler keyboard version? This can
be discussed because I am not sure I want it in prog.c and I am not sure
if it should be either as it was not part of the original entry (though
in retrospect it should have been). The try.sh and try.alt.sh scripts
now show what happens when Eric fails where previously one would have to
wait a very long time (max attempts SIZE_MAX - 1 is what it was set to
and still defaults to, being reset to it if it's < 100 which was
arbitrarily selected).

The Makefile has been improved to simplify redefining the macros that
specify how many offspring per generation to have and the max length of
the string (this has also been used in the try.sh and try.alt.sh scripts
if the user says they want to see the undocumented Easter egg).

The test.sh script now uses less(1) so one can look at the output one
page at a time.

The make test rule now has a '@' to silent the command being executed
('./test.sh').
2024-01-31 05:50:43 -08:00
Cody Boone Ferguson 16ff54cebf Add note about runtime to try section of 2018/giles
Specifically point out that the invocations will take quite some time.
That is also why no script that cycles through each file.
2024-01-30 09:05:41 -08:00
Cody Boone Ferguson cf4b113f56 Improve 2018/hou/try.sh + update bugs.md 2024-01-30 09:01:19 -08:00
Cody Boone Ferguson c907667f3a Improve 2018/poikola/try.sh + format fix README.md 2024-01-30 08:43:04 -08:00
Cody Boone Ferguson 16c3b55cad Improve 2018/vokes/try.sh 2024-01-30 08:39:16 -08:00
Cody Boone Ferguson cb1f7a1622 Fix and improve 2018/yang/try.sh 2024-01-30 08:36:11 -08:00
Cody Boone Ferguson 18b1a10d16 Fix make clobber in 2018/burton1
When scripthd was renamed to scripthd.sh the DATA field should have been
updated to have scripthd.sh. Also make clobber should remove scripthd
(but not scripthd.sh).

Updated .gitignore.
2024-01-28 08:58:12 -08:00
Landon Curt Noll d414b6d71f add quick-readme2index.sh, improve all-run.sh and readme2index.sh
Improved `all-run.sh` and `readme2index.sh` so that
certain command line options (e.g., -p, -P, -u, -U ...)
are only passed along to other tools if they are
given on the command line.

all-run.sh VERSION changed from "1.1.1 2024-01-19"
to "1.1.2 2024-01-20",

readme2index.sh VERSION changed from "1.1 2024-01-16"
to "1.1.1 2024-01-20".

Added `quick-readme2index.sh` that only calls
`readme2index.sh` if the `index.html` is not
a non-empty file, or of either `.winner.json`
and/or `README.md` is newer than `index.html`.

Updated all `index.html` files because the
the file contains a comment that includes
the newly modified readme2index.sh VERSION.
2024-01-21 00:21:40 -08:00
Landon Curt Noll bcc69ae454 update manifest as per recent file changes 2024-01-18 19:07:46 -08:00
Cody Boone Ferguson ab9f7fd107 Fix references in 2018/burton1/README.md
I believe that the previous commit got the ordering wrong. The
significant inspiration for the contest was linked to directly in
markdown rather than a '[...]: ...' style link so reference 3 should
actually be reference 2 (instead of the link to the main IOCCC readme
file). A question of course is what to do about the link

    http://ioccc.org/all/README

since all README files have been changed to README.md files.
Nevertheless right now the ioccc.org site has README, not README.md, so
it would be either a broken link or it would refer to say /all/README.md
(which might be the best way?).
2024-01-17 05:53:31 -08:00
Landon Curt Noll c1466f5165 build index.html for all winners
Updated manifest as per recent file changes.

Updated winner `.winner.json` to reflect the manifest changes.

Added [bin/all_run.sh](bin/all_run.sh) tool to run a command over
all winning entries.

These tools had slight improvements in the help usage message:

* bin/gen-author.sh VERSION="1.3.1 2024-01-16"
* bin/gen-inventory.sh VERSION="1.0.1 2024-01-16"
* bin/pandoc_wrapper.sh VERSION="1.3.1 2024-01-16"
* bin/subst.default.sh VERSION="1.1.1 2024-01-16"
* bin/subst.winner-index.sh VERSION="1.1.1 2024-01-16"

The `bin/readme2index.sh` tool was improved so that
if the `index.html` file exists and the tool forms
the exact same content, then the file `index.html`
file is NOT touched.

* bin/readme2index.sh VERSION="1.1 2024-01-16"

We used the following command to generate `index.html` files
for all winning entries:

```sh
bin/all_run.sh -v 3 bin/readme2index.sh
```

NOTE: We have not (yet) built HTML files above the winner directory
level (e.g., no year level nor top level HTML), nor have be built
non-index HTML files for winners.

NOTE: By default we are running `pandoc(1)` with:

```
--fail-if-warnings=true
```

This means that any problems with markdown to HTML
generates an error.  This is done to be sure that
the HTML conversion is clean.

We had to fix the following `README.md` files:

* `2000/rince/README.md`

The reference [^2] was never used.  We made a guess that [^2] applies
to the same spot as [^1].  Perhaps there is a better spot where
[^2] applies?

NOTE: For every reference, there MUST be some place where that
reference is used.

* 2012/vik/README.md

The string "$...$" is assumed to be a TeX encoded string.

NOTE: Every "$..$" needs to be backslashed as in "\$..\$".

* 2018/burton1/README.md

The reference [2] was duplicated.  We changed the
second [2] to [3].

NOTE: Every reference needs to have a unique number.

* 2020/carlini/README.md

The string "$...$" is assumed to be a TeX encoded string.

NOTE: Every "$..$" needs to be backslashed as in "\$..\$".

We also found 2 errors in the `author/author_handle.json` file set:

* author/Anonymous_2001.json

The `author/Anonymous_2001.json` file was missing.

* author/Jari_Arkko.json

The winner ID for `1989_jar.1` had a typo.
2024-01-17 00:32:39 -08:00
Cody Boone Ferguson ba0f1ea721 Fix heading level of 'Try' section
It was agreed to be '## Try:' but there were many files where it was
'### Try:'. This has been corrected.
2024-01-15 04:29:39 -08:00
Landon Curt Noll c6e6201209 release readme2index.sh version 1.0 2024-01-14
The initial release of `bin/readme2index.sh` tool that converts
`READMD.md` and various JSON files such as `.winner.json`
as well as "author/author_handle.json" files.

Applied the `readme2index.sh` tool to generate `2020/ferguson1/index.html`.

We generated the  `2020/ferguson1/index.html` by executing:

```sh
./bin/readme2index.sh -v 3 2020/ferguson1
```

NOTE: This above tool requires **pandoc to be installed**.
See the [pandoc web site](https://pandoc.org) for how
to install.  We used _HomeBrew_ to install it,
but there is also a _macports_ process as well.

NOTE: While the above web page does have formatting issues, it is
a first attempt data driven programmatic web page generation.

Some adjustments can be made by mostly improving `ioccc.css`,
and some perhaps by modifying how `bin/pandoc_wrapper.sh`
invokes pandoc.  But probably most of the improvements can
be made by fixing and improving `ioccc.css`.

TODO: Fix and improve the `2020/ferguson1/index.html`
web page by fixing and improving `ioccc.css`.

Moved scripts and tools needed to generate HTML pages
into a new `/bin` subdirectory.

TODO: Consider getting rid of the [build-ioccc
repo](https://github.com/ioccc-src/build-ioccc) and just use the
`/bin` subdirectory.

NOTE: Some links in the `2020/ferguson1/index.html`
web page do not (yet) exist.

TODO: Once the basic format of the `2020/ferguson1/index.html` web
page is somewhat reasonable, generate `index.html` pages for other
winners.  Generate the year level `index.html' files.
Generate the top level HTML files, including the missing
`location.html` file.

Greatly simplified the `.winner.json` file format,
removing a number of fields that were not strictly needed
for generating an inventory on a `index.html` page.

Updated various versions:

* `bin/gen-author.sh` VERSION="1.3 2024-01-14"
* `bin/gen-inventory.sh` VERSION="1.0 2024-01-14"
* `bin/manifest.winner.json.awk` VERSION="1.0 2024-01-14"
* `bin/pandoc_wrapper.sh` VERSION="1.3 2024-01-14"
* `bin/readme2index.sh` VERSION="1.0 2024-01-14"
* `bin/subst.default.sh` VERSION="1.1 2024-01-14"
* `bin/subst.winner-index.sh` VERSION="1.1 2024-01-14"
* `tmp/gen_path_list.found.sh` VERSION="1.1 2024-01-14"
* `tmp/gen_winner_json.sh` VERSION="1.1 2024-01-14"

The `.winner.json` file format from winner_JSON_format_version
"0.5 2023-11-04" to "1.0 2024-01-14".

All `.winner.json` files have been updated to use the
new `.winner.json` file format.

The manifest (`tmp/manifest.numbers` and `tmp/manifest.csv`) has
updated to use the new `.winner.json` file format.

The following procedure was used to generate the
`tmp/manifest.csv` manifest file:

0. open [manifest.numbers](manifest.numbers) in numbers: modify if/as needed

NOTE: Please try to keep the [manifest.numbers](manifest.numbers) spreadsheet
      in order order.  Use Organize -> Sort -> ((Sort Now)) to sort.

NOTE: Empty fields in the [manifest.numbers](manifest.numbers) spreadsheet
      are not allowed.  By default, a cell that is empty is colored
      as a warning.

1. File -> Export To -> CSV...
    * 1a. `[ ]` Include table names (unset)
    * 1b. Text Encoding: Unicode (UTF-8)
    * 1c. Click ((Save..))

2. Save As: manifest.csv
    * 2a. Select the `tmp` directory

3. Click ((Export))
    * 3a. If needed click ((Replace))

4. Execute ./tmp/[fix_csv.sh](fix_csv.sh)

NOTE: You must run the [fix_csv.sh](fix_csv.sh) in the above
      step in order to make the CSV file usable by other tools.

NOTE: If no changes are needed in the above step, the
      original file content will be restored.

5. Execute ./tmp/[gen_path_list.found.sh](gen_path_list.found.sh)

NOTE: The above step silently performs a `make clobber` at the
      top level, and so it takes a bit of time.

NOTE: If no changes are needed in the above step, the
      original file content will be restored.

6. Execute ./tmp/[check_path_list.sh](check_path_list.sh)

NOTE: The above step prints nothing and for an exit 0, then
      all is well.  If there is a problem, such as files
      found that are not part of the manifest, or files
      in the manifest that are not found, then an error
      message will be printed and the tool will exit non-zero.
      If errors are reported, go back to step 0 and
      correct the errors.

7. Execute ./tmp/[run_all.sh](run_all.sh) ./gen_winner_json.sh

NOTE: The above step will take a few seconds to run.  It will rebuild
      all `.winner.json` files for all winners.

NOTE: If no changes are needed in the above step, the
      original file content will be restored.

8. Execute `git status` and inspect changes

NOTE: Check in changes if and as needed.

NOTE: In a number of shell scripts under `bin/*.sh`,
      and in the `bin/manifest.winner.json.awk` script
      you will find comments of the form:

```
```

This is a note that when tools such as `jnamval` (and `jval` and `jfmt`) are
ready, these gross hacks should be replaced with calls to those tools.
Until they are ready, some must be careful with the layout of JSON files.

A number of bugs and typos have been fixed.

NOTE: Fixing typos in the files touched by this comment is welcome.
      This includes scripts, data files, text files, etc.

The _inventory_order_, _display_as_, _display_via_github_.  and
_winners_text_ fields of the [manifest.numbers](manifest.numbers)
spreadsheet were just set to have some initial values.
As they impact the inventory displayed on `index.html` pages,
their content needs to be improved.

NOTE: Improving the above mentioned fields of the
      [manifest.numbers](manifest.numbers) spreadsheet is welcome.
2024-01-14 22:03:28 -08:00
Landon Curt Noll 259d8c8503 update manifest, remove inventory.html, update .winner.json
Update the manifest as per recent file changes.

Removed inventory.html from all winners as the inventory will be
added to the winner `index.html` instead,

Updated winner `.winner.json` files as per the above.
2024-01-10 14:03:53 -08:00
Landon Curt Noll 5859489b60 update .winner.json based on updated manifest.csv
We used:

```sh
cd tmp
./run_all.sh ./gen_winner_json.sh
```
2023-12-28 19:22:06 -08:00
Cody Boone Ferguson 2e23483ffb Remove space at end of line in 2018/endoh/Makefile 2023-12-27 09:16:44 -08:00
Cody Boone Ferguson ba764a1833 Fix tmp/format-headers.sh, format headers
The script had "s surrounding the git ls-files command which turned it
to a single file which of course is wrong.

Ran script again fixing many README.md files that had incorrect number
of blank lines for critical headers.

This will have to be done a final but a good number of files have been
corrected.
2023-12-27 08:54:28 -08:00
Landon Curt Noll c9a023ff09 note old Email, header formatting, improve copyright and license
For the top level and year level README.md, where email are found,
a note was added to the effect that email addresses found above are
for historical purposes only, and should not be used today.

Old references to asking for fixes, comments, when content was used,
and next contest links were replaced with a general reference to the FAQ.

Harmonized the Copyright and License and copyright dates.
Now using Creative Commons "CC BY-SA 4.0 DEED Attribution-ShareAlike 4.0
International".

The above Creative Commons will become the standard for the IOCCC.
Replaced old `png/by-sa-3.0-88x31.png` with a new ` png/by-sa.88x31.png` icon.
Updated the top level HTML files to use the license.
2023-12-26 14:43:30 -08:00
Cody Boone Ferguson 801f3fe90c Add missing comment in all Makefiles
The comment for the rule diff_alt_orig was missing. It was added like:

    sgit -e '/diff_alt_orig:/i \
    # diff alt and orig' '*Makefile'
2023-12-26 09:00:03 -08:00
Cody Boone Ferguson 631869dc7f Add PDFLATEX var to var.mk
This is not strictly necessary any more than some of the others but two
entries use this tool (at least since I added them back - they were
missing) and it seems better to have it this way.
2023-12-20 03:14:32 -08:00
Cody Boone Ferguson a76d3fde42 Add save state option in 2018/mills, update bugs
The save state option is based on the author's remarks that one can
change the W macro to MAP_SHARED. This is defined in the Makefile so a
variable called 'SAVE' was added which if not 1 will result in
MAP_PRIVATE. This way one can run

    make clobber SAVE=1 all

and it'll save state, assuming that (if you add a file) you run 'sync'
before exiting. If you don't run sync(1) it's likely the file won't
exist or it'll be corrupt (like a.out from mullender.c). README.md file
updated for this update. Note that the setting the W macro to ${MAP} is
only done for the make targets that had it set to MAP_PRIVATE. This is
because I guess that if it's already set to MAP_SHARED in the Makefile
there is a good reason for this. This is noted in the Makefile.

The bug I discovered happens whether or not state is saved (this had to
be verified before I did the above change that I added when I was
working on this entry some days back but never committed it for this
reason). If you run ./prog and then exit (ctrl-e) if you then run ./prog
again it'll show a strange message as if the image was corrupt. You have
to hit enter at this point (that's important) and then hit ctrl-e again.
When you run it a third time it'll be okay. I did not look at this in
detail but it probably should be fixed.

The Makefile also tries to make the note about preserving images to be
the state of the file (downloaded) at the time the entry won and how any
updates are unofficial stand out more.
2023-12-17 08:37:58 -08:00
Cody Boone Ferguson 36f452de33 Fix number of args in main() in 2018/bellard
Out of an abundance of caution with clang defects / the ANSI C Committee
I have added a second arg to main() in case they decide to enforce the
rule that main() has 0, 2, 3 args.
2023-12-15 03:42:44 -08:00
Cody Boone Ferguson ef88fe9e1c Many updates/fixes to 2018/burton2
This is a big commit but it should complete this entry and 2018 unless I
have missed something.

The make test rule was fixed. A script was not +x.

Renamed freqcount -> freqcount.sh (for browser/display).

Renamed mkkeywords -> mkkeywords.sh (for browser/display).

Renamed runtest -> runtest.sh (for browser/display).

Renamed spotcheck -> spotcheck.sh (for browser/display).

Renamed spotdiff -> spotdiff.sh (for browser/display).

Made tac.man proper man format and renamed tac.1.

Added tokcount.sh - a script that the author included in the remarks but
not in a script.

The renaming of files should be okay including the manifest (it is
believed this is true anyway).

Add try.sh script.

The READ_ME.txt was deleted as it had been renamed to author-README.txt
but the former was never deleted. This file was typo/format checked.

Format/typo check README.md file.
2023-12-14 12:14:08 -08:00
Cody Boone Ferguson 8cb287d7b8 Add 2018/burton1/try.sh, rename scripthd, ...
The scripthd is now called scripthd.sh to help GitHub/browsers with
whether or not to download or show it.

The try.sh script uses the script to show the differences between it and
prog.

The README.md file has been format/typo checked.
2023-12-14 10:46:25 -08:00
Cody Boone Ferguson 7f4204bed8 Add 2018/anderson/try.sh + format/typo checks 2023-12-14 10:17:59 -08:00
Cody Boone Ferguson 0cbd1db764 Add 2018/algmyr/try.sh + format/typo checks
The README.md file has been format/typo checked.

This entry was also expanded some in bugs.md.
2023-12-14 10:08:03 -08:00
Cody Boone Ferguson 3751e63000 Format/typo check 2018/mills/README.md 2023-12-14 05:43:24 -08:00
Cody Boone Ferguson 6b74e04bf4 Add 2018/endoh1/try.sh + format/typo checks
The try.sh script shows each input file first so that one can see how it
turns out as a GIF file. The input files include those not suggested by
the judges including the source code itself (the author suggested it has
a message too).

The README.md file has been format/typo checked.
2023-12-13 09:20:13 -08:00
Cody Boone Ferguson 30847d6aad Add helper scripts to 2018/endoh2 + formatting
The run.sh script was fixed to work. It did not work because it had a
command that does not even exist ('tempfile') and even after that was
resolved there was another problem to be resolved.

The Makefile rule make python runs the python.sh script but it sets a
trap so one can exit that script but not exit everything (see below).
The python3.sh script is what python.sh is but for the make rule python3
and it works in the same way. The try.sh script runs all of these
scripts as well as the commands suggested by the judges.

The README.md file has been format/typo checked. For the link (twice
referenced) that has flashing lights (and quite a few at that) I put a
warning in parentheses for those who are (like me) sensitive to it (more
important for some people with epilepsy, depending on how sensitive they
are, maybe, but I hate flashing text and lights and so do many other
people).
2023-12-13 06:41:52 -08:00
Cody Boone Ferguson d643c1e38e Add 2018/yang/try.sh + format/typo checks
The try.sh script will ask if the user wants to see the spoilers before
showing them. The rest of it is shown regardless (first).

Format/typo check README.md file.
2023-12-12 10:16:35 -08:00
Cody Boone Ferguson d077890560 Format/typo check 2018/giles/README.md 2023-12-12 09:15:22 -08:00
Cody Boone Ferguson 03ba78f2d1 Add 2018/poikola/try.sh + format/typo checks
I believe this completes the review of the entry.
2023-12-12 05:02:25 -08:00
Landon Curt Noll ecf595706b fix PDF paper 2018/ciura/lexicon.pdf 2023-12-11 13:33:04 -08:00
Cody Boone Ferguson d1d7faecfc Add 2018/bellard alt code + format/typo checks
The alt code should work for Windows, based on the author's remarks.

Format and typo check README.md file.

I believe this completes this entry's review.
2023-12-11 12:34:51 -08:00
Cody Boone Ferguson 26c4717ad4 Add 2018/hou/try.sh + format/typo checks 2023-12-11 09:38:46 -08:00
Cody Boone Ferguson 1959925eda Add 2018/ciura/try.sh, missing PDF + formatting
The try.sh script does not use less for longer output because for some
reason less options -r/-R do not seem to work with the output (I haven't
looked into it in detail of how it works).

The missing PDF file was a paper I believe by the actual author but was
a dead link. Retrieved from the Internet Wayback Machine.

Format/typo check README.md file.

I believe this completes this entry's review.
2023-12-11 09:22:14 -08:00
Cody Boone Ferguson 70bb65f47e Add try scripts to 2018/ferguson + formatting
The try.sh and try.alt.sh scripts are respectively for the entry and the
alt code. There is a joke in them that is based on what the judges
originally suggested one try.

The weasel.man page was deleted. Instead weasel.1 has had the FILES
section removed (which caused some confusion in another way with
another winner of that year). The spec file will have to be tested again
another time.

I did NOT format / typo check the README.md file. Too much to do for now
and since it's mine I can do it any other time. I'd like to get through
the rest of the entries.

Thus this should complete (for now?) 2018/ferguson.
2023-12-11 06:43:51 -08:00
Cody Boone Ferguson a3eb5340d7 Add 2018/vokes/try.sh + format/typo checks
The bugs.md file was also updated with INABIAF status.
2023-12-11 06:07:31 -08:00
Landon Curt Noll 658669a73a improve .gitignore files, fix index.html links, sync CNAME
fix experimental web site links in experimental index.html

sync CNAME with https://github.com/ioccc-src/winner/blob/master/CNAME

improve .gitignore files

Added to each .gitignore file, comments on how to sort.

Put into winner .gitignore files, ignore *.dSYM files.

Put into winner .gitignore files, ignore indent.c,
indent.o and indent files.  This is done so that the
winner directory can more self contained.

We did not put into winner .gitignore files, however,
excludes of .-files as found in the top level .gitignore file.
As .-files are not allowed by mkiocccentry, the top level
.gitignore file remains sufficient.

Added to year level .gitignore files, excludes of
mkentry or iocccsize files as needed.

Sorted (via sort -d -u) all .gitignore file.
2023-12-08 04:06:44 -08:00
Landon Curt Noll 6206201d8a add make genpath rules, .path files, updated .top and .year
Add .path files to each winner directory: a file containing
the path to the winner directory from the top directory.

Changed YYYY/.year files to contain the paths, from the top
directory, if the winning directories for the given year.

Changed `/.top` to contain the IOCCC years.

Added `make genpath` rule to the top Makefile and the
year Makefiles to generate the above.

Added FAQ 6.8 to `faq.md` to explain the above.

Updated manifest to reflect recent changes to the list of files.
2023-12-08 01:29:43 -08:00
Landon Curt Noll f929afd344 update .winner.json
We used:

```sh
./run_all.sh ./gen_winner_json.sh
```

to update `.winner.json` files due to recent changes
made to `manifest.csv`.
2023-12-05 22:51:27 -08:00