Merge pull request #1365 from xexyl/leo1995

This commit is contained in:
Landon Curt Noll authored and GitHub committed 2023-11-10 14:54:53 -07:00
commit ec9f14d8be
3 files changed
+23 -12

No files matched your search

+16 -12
View File
@@ -58,13 +58,13 @@ The usage is:
where the first three are literal words, `cycle` is a positive integer (0 is where the first three are literal words, `cycle` is a positive integer (0 is
ignored), and `freq` is an integer (default = 0) that's supposed to be in the ignored), and `freq` is an integer (default = 0) that's supposed to be in the
range 0..100 (bigger values are allowed, however). Invalid parameters and range `0..100` (bigger values are allowed, however). Invalid parameters and
options usually stop the command line parsing (but not always, why?). The actual options usually stop the command line parsing (not always but why?). The actual
position of the word options does not matter, so `./leo right Variable 1 70` is position of the word options does not matter, so `./leo right Variable 1 70` is
equivalent to `./leo 0 0 0 1 Variable 70 right`, etc. equivalent to `./leo 0 0 0 1 Variable 70 right`, etc.
If `Variable' is used, `cycle' is almost ignored (see below) but has If `Variable` is used, `cycle` is almost ignored (see below) but has
to be present if you want to enter `freq' (and you usually do). to be present if you want to enter `freq` (and you usually do).
Some options to try (besides the obvious): Some options to try (besides the obvious):
@@ -77,7 +77,9 @@ This draws the basic pattern I invented in high school:
You take a big sheet of "arithmetic" paper and draw a line You take a big sheet of "arithmetic" paper and draw a line
of length 1 (between 2 crossings) at the center of the sheet: of length 1 (between 2 crossings) at the center of the sheet:
```
| |
```
This makes 2 open ends (I think the notion of an "open end" doesn't This makes 2 open ends (I think the notion of an "open end" doesn't
require explanations) in step 1. Now, until there are open ends in step N, require explanations) in step 1. Now, until there are open ends in step N,
@@ -162,7 +164,7 @@ Step 6:
depending on the desired "hairiness". The original (paper-based) depending on the desired "hairiness". The original (paper-based)
algorithm was "hairy", but it didn't look as good on the screen. algorithm was "hairy", but it didn't look as good on the screen.
\
The program cannot handle non-hairy mode 100% correctly - step 6 happens The program cannot handle non-hairy mode 100% correctly - step 6 happens
to be to be
@@ -179,7 +181,7 @@ to be
``` ```
and so on: the horisontal symmetry has been lost. That's why and so on: the horizontal symmetry has been lost. That's why
the opening for step 1 is not a single line but a cross: the opening for step 1 is not a single line but a cross:
``` ```
@@ -187,7 +189,7 @@ the opening for step 1 is not a single line but a cross:
/ \ / \
``` ```
To watch it repeatedly (as a screensaver), use: To watch it repeatedly (as a screen saver), use:
```sh ```sh
./leo 2 | cat - /dev/tty | gs - ./leo 2 | cat - /dev/tty | gs -
@@ -201,7 +203,7 @@ The command line:
draws the same as above. Try: draws the same as above. Try:
```sh\ ```sh
./leo Variable 1 1 | cat - /dev/tty | gs - ./leo Variable 1 1 | cat - /dev/tty | gs -
``` ```
@@ -218,7 +220,7 @@ if you want to pipe the output to a printer.
begin 664 spoiler1 begin 664 spoiler1
M*%1H92!C;VQO;B J:7,J('1H92!S96-R970@<W=I=&-H("T@=&AE('-P86-E M*%1H92!C;VQO;B J:7,J('1H92!S96-R970@<W=I=&-H("T@=&AE('-P86-E
=(&)E9F]R92!I="!I<R!N;W0@82!M:7-T86ME*0II =(&)E9F]R92!I="!I<R!N;W0@82!M:7-T86ME*0II
\
end end
``` ```
@@ -231,7 +233,7 @@ as far as it is > 1. To figure out what difference
``` ```
and other values of `cycle`; smaller values usually require and other values of `cycle`; smaller values usually require
smaller values of `freq` for the patterns to be non-trivial smaller values of `freq` for the patterns to be non-trivial.
The options `deep` and `right` make the patterns to be drawn in different The options `deep` and `right` make the patterns to be drawn in different
manners. Try all the examples above with `deep` and with `right`. manners. Try all the examples above with `deep` and with `right`.
@@ -256,8 +258,10 @@ even want to explain what it does. You've been warned!
Special thanks: Special thanks:
- to PostScript syntax designers for the curly braces; - to PostScript syntax designers for the curly braces;
- to Dmitry Mendeleyev for his periodic table of elements; - to [Dmitry Mendeleyev](https://en.wikipedia.org/wiki/Dmitri_Mendeleev) for his
- to Hydrogen for having 2 more isotopes. [periodic table of elements](https://en.wikipedia.org/wiki/Periodic_table);
- to [Hydrogen](https://en.wikipedia.org/wiki/Hydrogen) for having 2 more
[isotopes](https://en.wikipedia.org/wiki/Isotope).
## Copyright and CC BY-SA 4.0 License: ## Copyright and CC BY-SA 4.0 License:
+1
View File
@@ -0,0 +1 @@
(The colon *is* the secret switch - the space before it is not a mistake)
+6
View File
@@ -1888,6 +1888,12 @@ to specify which one to use is to make it easier on the user as typing
running `./garry.alt.test.sh`. running `./garry.alt.test.sh`.
## [1995/leo](1995/leo/leo.c) ([README.md](1995/leo/README.md]))
At our change in how to deal with spoilers, Cody uudecoded the spoiler provided
by the author, putting it in [spoiler1.md](1995/leo/spoiler1.md).
## [1995/makarios](1995/makarios/makarios.c) ([README.md](1995/makarios/README.md)) ## [1995/makarios](1995/makarios/makarios.c) ([README.md](1995/makarios/README.md))
Cody fixed this so that it will compile with versions of clang that has a defect Cody fixed this so that it will compile with versions of clang that has a defect