use a better wordlist source
This commit is contained in:
parent
6f4b1291b0
commit
26647ad351
3
.gitmodules
vendored
3
.gitmodules
vendored
@ -1,3 +0,0 @@
|
||||
[submodule "english-words"]
|
||||
path = english-words
|
||||
url = https://github.com/dwyl/english-words
|
794771
1_1_all_fullalpha.txt
Normal file
794771
1_1_all_fullalpha.txt
Normal file
File diff suppressed because it is too large
Load Diff
6
Makefile
6
Makefile
@ -1,5 +1,9 @@
|
||||
WORD_LENGTH=5
|
||||
MIN_FREQUENCY=9
|
||||
SOURCE_WORDLIST=1_1_all_fullalpha.txt
|
||||
|
||||
wordlist.js: english-words
|
||||
scripts/gen_wordlist.py english-words/words.txt 5 > wordlist.js
|
||||
./scripts/gen_wordlist.py ${SOURCE_WORDLIST} ${WORD_LENGTH} ${MIN_FREQUENCY} > wordlist.js
|
||||
|
||||
english-words: .SUBMODULES
|
||||
|
||||
|
@ -1 +0,0 @@
|
||||
Subproject commit 22d7c41119076750a96fca2acd664ed994cc0a75
|
12
index.html
12
index.html
@ -3,22 +3,16 @@
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link rel="stylesheet" type="text/css" href="styles.css">
|
||||
<title>word guessing game: infinite</title>
|
||||
<title>words</title>
|
||||
</head>
|
||||
<body>
|
||||
<h1>word guessing game</h1>
|
||||
<h1>words</h1>
|
||||
|
||||
<div id="game_container">
|
||||
you need javascript enabled to play this game
|
||||
<div id="letter_grid">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
built with ❤ and adequate amounts of care by
|
||||
<a href="https://alv.cx">alv</a>
|
||||
</p>
|
||||
<p> built with ❤ and adequate amounts of care by <a href="https://alv.cx">alv</a> </p>
|
||||
|
||||
<script type="application/javascript" src="wordlist.js"></script>
|
||||
<script type="application/javascript" src="game.js"></script>
|
||||
|
3
readme
3
readme
@ -1 +1,4 @@
|
||||
you know what it is
|
||||
|
||||
wordlist `1_1_all_fullalpha.txt` is from https://ucrel.lancs.ac.uk/bncfreq/flists.html
|
||||
|
||||
|
@ -11,15 +11,21 @@ def get_args():
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('wordlist')
|
||||
parser.add_argument('word_length', type=int)
|
||||
parser.add_argument('frequency_min', type=int)
|
||||
return parser.parse_args()
|
||||
|
||||
|
||||
def main(args):
|
||||
""" Entry point for script """
|
||||
with open(args.wordlist) as fp:
|
||||
words = [ word.lower() for word in fp.read().split('\n') if len(word) == args.word_length and word.isalpha() ]
|
||||
words = [ (word[1], int(word[4])) for word in [ word.lower().split('\t') for word in fp.read().strip().split('\n') ] ]
|
||||
|
||||
words = [ word[0] for word in words if word[1] > args.frequency_min and word[0].isalpha() and len(word[0]) == args.word_length ]
|
||||
|
||||
words.sort(key=lambda word: word[1])
|
||||
print(f"wordlist = {json.dumps(words)}")
|
||||
print(f"{args}", file=sys.stderr)
|
||||
print(f"{len(words)=}", file=sys.stderr)
|
||||
|
||||
return 0
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user