For fun more strings have been added and the dictionary constructed with
mkdict.sh now uses index.html as well.
Some fun anagrams that might amuse some people, some from the program
and some that I noticed:
free software foundations:
foundation was set for free
foundations for free waste
unix international:
relaxation unit inn
nun relaxation in it
inline no tar at unix
bill gates:
stale glib
free software foundation (software):
routine and waste offer of (software)
idea for fun software note
microsoft conspiracy:
try ansi op forms ioccc
any op first forms ioccc
international microsoft conspiracy:
first conspiracy container main tool
force locations contains primary tin
but there are plenty others to find with the script and otherwise.
103 lines
2.7 KiB
Bash
Executable File
103 lines
2.7 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
#
|
|
# try.sh - demonstrate IOCCC entry 1992/gson
|
|
#
|
|
|
|
# make sure CC is set so that when we do make CC="$CC" it isn't empty. Doing it
|
|
# this way allows us to have the user specify a different compiler in an easy
|
|
# way.
|
|
if [[ -z "$CC" ]]; then
|
|
CC="cc"
|
|
fi
|
|
|
|
make CC="$CC" all >/dev/null || exit 1
|
|
|
|
# clear screen after compilation so that only the entry is shown
|
|
clear
|
|
|
|
ag()
|
|
{
|
|
if [[ "$#" -lt 2 ]]; then
|
|
echo "$0: ag() requires at least two args, given: $#" 1>&2
|
|
return
|
|
fi
|
|
|
|
echo "$ ./ag -5 ${*:2} < $1" 1>&2
|
|
read -r -n 1 -p "Press any key to continue (space = next page, q = quit): "
|
|
echo 1>&2
|
|
./ag -5 "${@:2}" < "$1" 2>/dev/null | less -rEXF
|
|
|
|
echo 1>&2
|
|
}
|
|
|
|
# try making our own dictionary with mkdict.sh:
|
|
#
|
|
rm -f words
|
|
cat index.html README.md try.sh Makefile | ./mkdict.sh > words
|
|
DICT="words"
|
|
|
|
# safety check that DICT is not empty and is a readable file
|
|
#
|
|
if [[ -n "$DICT" && -f "$DICT" && -r "$DICT" ]]; then
|
|
read -r -n 1 -p "Press any key to use our own dict from mkdict.sh: "
|
|
echo 1>&2
|
|
ag "$DICT" free software foundation
|
|
ag "$DICT" free software foundations
|
|
ag "$DICT" obfuscated c contest
|
|
ag "$DICT" obfuscated c contests
|
|
ag "$DICT" unix international
|
|
ag "$DICT" george bush
|
|
ag "$DICT" ross perot
|
|
ag "$DICT" paul e tsongas
|
|
ag "$DICT" bill gates
|
|
ag "$DICT" microsoft conspiracy
|
|
ag "$DICT" international microsoft conspiracy
|
|
fi
|
|
|
|
# now attempt to find a dictionary file if DICT unset or not a regular readable file
|
|
#
|
|
echo "Will now try locating system dictionary." 1>&2
|
|
read -r -n 1 -p "Press any key to continue: "
|
|
echo 1>&2
|
|
DICT=""
|
|
if [[ -z "$DICT" || ! -f "$DICT" || ! -r "$DICT" ]]; then
|
|
DICT="/usr/share/dict/words"
|
|
|
|
if [[ ! -r "$DICT" ]]; then
|
|
DICT="/usr/share/lib/spell/words"
|
|
|
|
if [[ ! -r "$DICT" ]]; then
|
|
DICT="/usr/ucblib/dict/words"
|
|
|
|
if [[ ! -r "$DICT" ]]; then
|
|
DICT="/dev/null"
|
|
fi
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
# safety check that DICT is not empty and is a readable file
|
|
#
|
|
if [[ -n "$DICT" && -f "$DICT" && -r "$DICT" ]]; then
|
|
echo "Using $DICT as dictionary file." 1>&2
|
|
read -r -n 1 -p "Press any key to continue: "
|
|
echo 1>&2
|
|
ag "$DICT" free software foundation
|
|
ag "$DICT" free software foundations
|
|
ag "$DICT" obfuscated c contest
|
|
ag "$DICT" obfuscated c contests
|
|
ag "$DICT" unix international
|
|
ag "$DICT" george bush
|
|
ag "$DICT" bill clinton
|
|
ag "$DICT" ross perot
|
|
ag "$DICT" paul e tsongas
|
|
ag "$DICT" pauline hansen
|
|
ag "$DICT" bill gates
|
|
ag "$DICT" microsoft windows
|
|
read -r -n 1 -p "This next one can take some time. Do you want to run it anyway (Y/N)? "
|
|
echo 1>&2
|
|
if [[ "$REPLY" = "y" || "$REPLY" = "Y" ]]; then
|
|
ag "$DICT" international microsoft conspiracy
|
|
fi
|
|
fi
|