Crates.io | nonogram-rs |
lib.rs | nonogram-rs |
version | 2.2.3 |
source | src |
created_at | 2022-01-06 15:23:49.40237 |
updated_at | 2023-01-04 14:13:38.825491 |
description | A fast and lightweight nonogram solving library. |
homepage | |
repository | https://github.com/ricoriedel/nonogram-rs |
max_upload_size | |
id | 509013 |
size | 189,963 |
A fast and lightweight nonogram solving library.
Features:
serde
feature)Examples of how to use this library can be found in the tests/
directory.
This library includes a CLI called nonogram-cli
as a binary target.
cargo build --bin nonogram-cli --features='cli'
# Solve
cat layout.json | ./nonogram-cli solve > result.json
# Show
cat result.json | ./nonogram-cli show
# Both in one line
cat layout.json | ./nonogram-cli solve | ./nonogram-cli show
{
"cols": [
[["y", 1], ["y", 1]],
[["r", 3]],
[["r", 1]]
],
"rows": [
[["y", 1], ["r", 1]],
[["r", 1]],
[["y", 1], ["r", 2]]
]
}
[
[
[{"Box":{"color":"y"}}, {"Box":{"color":"r"}}, "Space"],
["Space", {"Box":{"color":"r"}}, "Space"],
[{"Box":{"color":"y"}}, {"Box":{"color":"r"}}, {"Box":{"color":"r"}}]
]
]
The following colors are supported by the CLI. Lowercase letters are dark and uppercase letters are bright colors. Note that the library supports arbitrary color types.
Key | Color | Key | Color | Key | Color |
---|---|---|---|---|---|
! | default | R | red | r | dark red |
0 | black | G | green | g | dark green |
1 | dark grey | Y | yellow | y | dark yellow |
2 | grey | B | blue | b | dark blue |
3 | white | M | magenta | m | dark magenta |
C | cyan | c | dark cyan |
The algorithm is explained in detail in a separate document.
This software (including the complete source code) is licensed under the GPLv3.