5 个稳定版本
1.3.1 | 2024年4月7日 |
---|---|
1.3.0 | 2024年4月2日 |
1.2.0 | 2024年1月6日 |
1.1.0 | 2023年7月23日 |
1.0.0 | 2022年10月16日 |
#453 in 命令行工具
1.5MB
4K SLoC
Ingrid Core
此crate包含Ingrid构造应用程序中使用的核心填字游戏解决代码,以及一个独立的二进制文件,可用于从命令行解决网格。
用法
在 设置 Rust 后,您可以使用 cargo
安装Ingrid Core CLI工具
$ cargo install ingrid_core
然后您只需要提供一个网格作为输入文件
$ cat example_grid.txt
....#.....#....
....#.....#....
...............
......##.......
###.....#......
............###
.....#.....#...
....#.....#....
...#.....#.....
###cremebrulees
......#.....###
.......##......
...............
....#.....#....
....#.....#....
$ ingrid_core example_grid.txt
bile#seeit#slaw
room#lasso#pone
intimateapparel
garret##whirred
###amens#easels
wisterialane###
aloes#nuevo#tnt
ssns#betty#ciao
pas#wipes#pelts
###cremebrulees
dealin#deere###
imgonna##aesops
goingintodetail
utne#anise#atta
pegs#lemur#shay
您还可以使用自定义词表(默认为 Spread the Wordlist)或自定义各种其他选项
$ ingrid_core --help
ingrid_core: Command-line crossword generation tool
Usage: ingrid_core [OPTIONS] <GRID_PATH>
Arguments:
<GRID_PATH> Path to the grid file, as ASCII with # representing blocks and . representing empty squares
Options:
--wordlist <WORDLIST>
Path to a scored wordlist file [default: (embedded copy of Spread the Wordlist)]
--min-score <MIN_SCORE>
Minimum allowable word score [default: 50]
--max-shared-substring <MAX_SHARED_SUBSTRING>
Maximum shared substring length between entries [default: none]
-h, --help
Print help information
-V, --version
Print version information
致谢
-
本库中回溯搜索的实现很大程度上归功于 Thanasis Balafoutis 的 "Adaptive Strategies for Solving Constraint Satisfaction Problems",它既有关于 CSP 空间的概述,又是具体实现想法的来源。
-
CLI 工具包含由 Brooke Husic 和 Enrique Henestroza Anguiano 发布的免费 Spread the Wordlist 字典的一个副本。
依赖
~4–14MB
~209K SLoC