25 Commits
Author SHA1 Message Date
Cody Boone Ferguson 3deb7ae603 Improve markdown guidelines wording
Amongst the changes here is that we do not need to have the hex or html
code (numbers) for open and close parentheses (in links) as there are
names. '(' is & followed by lpar; and the ')' is the same but 'rpar;'
instead. This makes it easier to remember and type and it generates the
same html as well (they are all valid). Now the markdown files are
consistent in this (in some cases hex was used and in others the html
code).

Although many markdown files were updated no html files needed to be
updated as it generates the same html. Even so I ran the appropriate
rules to do so just to verify this.
2024-07-31 10:44:10 -07:00
Cody Boone Ferguson e5bcf2ee25 Rename 2020/ferguson1/deobfuscation -> obfuscation
As the file is not actually code and does not give deobfuscated code but
rather shows how I obfuscated it (indirectly and directly) a better
name, if spoilers will not work, is obfuscation. Thus obfuscation.md and
obfuscation.html are the new names.

Manifest updated; regenerated .entry.json, index.html and other html
files that link to the html file.

In a heading/section (in obfuscation.html) I linked to two files that
are named.
2024-07-01 06:40:46 -07:00
Landon Curt Noll 85c991620f convert spoiler filenames into deobfuscation filenames 2024-07-01 01:02:40 -07:00
Landon Curt Noll 3aec80f057 convert more spoiler into deobfuscation 2024-06-30 23:23:48 -07:00
Landon Curt Noll 7712db4a17 Expand all leading tabs in markdown files
Given how problematic leading tabs in markdown files can be,
we have expanded all leading tabs in markdown files by:

```sh
find * -type f -name '*.md' -print |
  while read -r file; do
    rm -f "$file.tmp" ;
    expand < "$file" > "$file.tmp" ;
    mv -f -v "$file.tmp" "$file" ;
  done
```

Given the previous changes to `bin/pandoc-wrapper.sh` and other recent
commits and recent pull requests, the were were **NO** changes to
any HTML files.  This is a **good thing** as the expression goes.

No there are no leading tabs in any markdown files.
A check to catch any re-introduction of leading tabs
into any markdown file is on the way.

BTW: We do not have anything against leading tabs in files,
even though we have had to deal with their impact on forming
HTML from markdown files (as well as the calc source code).
It is just that this is one of those cases where tabs conflict
(sometimes caused by people wanting to change the classic
8-space tab model) with a desired outcome.

Perform `make www` to perform the above and test under macOS.
2024-06-24 11:57:35 -07:00
Landon Curt Noll 4ee4c731f7 convert markdown copyright TAB chars into SPACE chars
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.
2024-06-22 22:15:25 -07:00
Landon Curt Noll 1d5fcc04a7 fix makrdown links to HTML files that use a %%TOKEN%% 2024-05-04 16:56:51 -07:00
Landon Curt Noll b1516f0ed9 fix non-indented markdown code blocks
We have fixed cases where markdown code blocks were not properly intended.

Updated `markdown.md` to discuss how markdown code blocks should be indented
and how blank lines should follow a markdown code block.

We used this shell script to find problematic code blocks:

```sh
find . -name '*.md' ! -name markdown.md -print | xargs pcregrep -M '^``.*\n[^|`\n \t]'
```

Ran `make www` to perform the above.
2024-04-30 17:24:50 -07:00
Landon Curt Noll 8bca099534 fix more broken markdown links
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.
2024-04-26 16:25:17 -07:00
Landon Curt Noll 99cf726783 fix links in entry HTML files other than index.html
Fixed internal links in entry HTML files other than index.html.

Removed links to markdown files that otherwise used to
generate HTML files other than index.html.

Ran `make gen_other_html` to perform the above.
2024-04-21 22:45:46 -07:00
Landon Curt Noll 0eb5e37c12 add Jump to top links to other entry HTML files
Add short line and Jump to top links to other entry HTML files.

Ran `make gen_other_html` to perform the above.
2024-04-21 21:07:41 -07:00
Landon Curt Noll 3ddbac9e6b improve how markdown code language is commented
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 "&lt;!---c--&gt;"
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.
2024-04-12 11:45:50 -07:00
Landon Curt Noll b66c79254a add hack-a-round for language specified markdown code blocks
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="&lt;!---c--&gt;"><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.
2024-04-04 14:50:38 -07:00
Landon Curt Noll a996f8d2b8 improved indentation and whitespace for markdown code blocks
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.
2024-04-01 04:48:48 -07:00
Landon Curt Noll cbc022d864 improve Copyright and CC
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.
2024-03-20 00:19:52 -07:00
Landon Curt Noll 25eae4b2db improve list formatting in 2020/ferguson1 markdown files 2024-03-19 23:02:02 -07:00
Landon Curt Noll ec6dc7187e remove bold code
Remove markdown where test is both bold and code.
This double formatting produces undesirable effects in HTML.

One should make something **bold** or something `code`.
but not both.  The stacking of these two options produces bad
effects when rendered.
2024-03-19 21:09:09 -07:00
Landon Curt Noll f221a588ea remove trailing blanks in markdown files
We used this command to find markdown files with trailing whitespace.

```sh
find . -name '*.md' -print0 | xargs -0 grep -E -l '[[:space:]][[:space:]]*$'
```

After removal, we did a `make www`.
2024-03-14 21:37:02 -07:00
Landon Curt Noll 9d3438fb88 build missing HTML files for entries
Setup a simple topnav for missing HTML files for entries.

Added `bin/gen-other-html.sh` to build entry HTML files from
markdown other than README.md to index.html HTML files.

Fixed duplicate link text in `2020/ferguson1/gameplay.md`.

Improved `inc/md2html.cfg` to support building the missing HTML
files for entries.

Added `make gen_other_html` to top level Makefile.
Added `make gen_other_html` to `make quick_www` and `make www`.

Fixed inventory links for year level index.html files.
Changed `bin/output-year-index.sh` VERSION from "1.0.1 2024-02-23"
to "1.1 2024-02-27".

Added missing lines in `manifest.numbers`.  Update the affected
`.entry.json` files.

The manifest (in both `manifest.numbers` and the collection of
manifests from of all entry `.entry.json` files) now match.  Errors
from `make verify_entry_files` will now abort both `make quick_www`
and `make www` rules in the top level `Makefile`.

Changed markdown files in manifest to have an _inventory_order_ of
_2000000000_ so that the `index.html` file will usually appear at
the start of the _Secondary files_ set for the "#inventory" section
of an entry's `index.html` file.

Changed compressed tar files (files that end in _.tar.bz2_) in
manifest to have an _inventory_order_ of _100000_ so that these
files will usually appear at the end of the _Primary files_ set for
the "#inventory" section of an entry's `index.html` file.

Added 'Jump to top` link above the _Primary files_ section.
Changed `bin/output-index-inventory.sh` VERSION from "1.1.1 2024-02-23"
to "1.2 2024-02-27".

Updated HTML files to perform the above via `make www`.
2024-02-27 22:36:20 -08:00
Cody Boone Ferguson ef456bfb1e Mass typo fixes
This is a HUGE commit:

    417 files changed, 874 insertions(+), 874 deletions(-)

As the IOCCC website now is https enabled I have updated the
'http://www.ioccc' to 'https://www.ioccc'.

There was also a typo in Makefiles where it said 'for VERY WELCOME' when
it should be 'are VERY WELCOME'.

Finally slashdot.org is also https enabled so references to
'http://slashdot' were changed to 'https://slashdot'.

This was done by my sgit tool (see https://github.com/xexyl/sgit)
like:

    sgit -e 's,http://www.ioccc,https://www.ioccc,g' -e 's/for VERY WELCOME/are VERY WELCOME/g' -e  .

but because I didn't have a list of files that should be modified I had
to be careful which files to commit as I had files that were changed but
not ready to be committed. Since I did it in steps, finding typos as I
went along, I actually ran sgit three times but to simplify the above
(and to show that it's possible to do more than one sed command) I made
it all as one. Since I did not have a list of files ahead of time I had
to determine what files to commit, first going through them like:

    for j in $(for i in $(git status|grep modified|cut -d: -f2); do \
	git grep 'https://www.ioccc' "$i"; done|cut -d: -f1|sort|uniq); \
	do git diff "$j"; done|less -r

(I had to pipe through less because of a strange problem with the git
diff which appears to be because of a terminal problem maybe due to the
command above but it was all I could come up with in a very tired head.)

The above and

    git status | grep modified:

showed that some C files had been modified which obviously should not be
done so I had to do:

    git co '*c'

to undo those changes.

Finally to commit the correct files I did:

    for i in $(git status|grep modified|cut -d: -f2); do \
	git grep -E 'https://www.ioccc|https://slashdot|are VERY WELCOME' "$i"; \
	done |cut -d: -f1|sort|uniq|xargs git commit -v

or so (with any formatting issues or typos here due to typos in the log
due to the terminal (in)sanity issue described).
2023-10-07 04:35:47 -07:00
Cody Boone Ferguson 421a8ccbe7 Fix html vs md files issue in 2020/ferguson1
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.
2023-04-17 06:18:35 -07:00
Cody Boone Ferguson 49a6a4074d Format and other fixes in 2020/ferguson1
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.
2023-04-16 10:09:33 -07:00
Cody Boone Ferguson eaf9f59a0c Rename 2020/ferguson1/cannibalism.log{,.md}
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).
2023-04-15 08:12:32 -07:00
Cody Boone Ferguson aa15137a9d Update 2020/ferguson[12]
Surprise, surprise there are more updates on my entries! :-) But to be
fair to me there were some important fixes and I had not really gone
through the README files of these entries (I still didn't go through all
of them thoroughly and probably won't since I'm far too concise :-)
:-)). In fact some of these problems broke some of the features of some
of the entries.

In 2020/ferguson1: termcaps must be compiled by make all. It also needed
a make test rule that runs ./termcaps. As well it needed a play and
snake-colours rule which copies and chmod +x the respective .sh files.

There were some typo fixes here and there as well as (I hope) a bit
clearer wording.

Some out of date things were changed.
2023-03-13 06:12:20 -07:00
Cody Boone Ferguson 19d5c3a848 Rename *.text *.md
As luck would have it the only entries where this applied were my own.
The links/references to these files have been changed in the files.

An unfortunate problem is that in 2020/ferguson1 there are several
*.markdown files. I will have to go through these and figure out which
ones should be changed to .md and which ones can be removed. This can
happen later but in the meantime the references are to .md. I believe
the only difference is that the .md has the footer added by the judges.
This was a workaround with the fact that I wasn't sure (and still am not
entirely sure) the generation of the html files will work. It might be
that the .markdown files have the footer and the .md files do not but
this can be dealt with later anyway.
2023-02-08 06:21:11 -08:00