Skip to main content

Convert hex strings and magnet links to poetry or prose.

Project description

Pick3letters

Pick3letters is a program to help inspire you to create poetry or prose by taking a random string (hexadecimal strings and Torrent magnet links are currently supported) and outputting lists of word prefixes you can use. Just for fun, and for confirming that you used the right prefixes, it also supports recovering the original hex string or a working magnet link from the poetry or prose they came up with.

Usage

The output of pick3letters is a sequence of prefix lists, one per line. For each line, choose a word of at least 4 letters that starts with one of the prefixes. You may use capital letters and punctuation at the end of a word, but any word that starts with punctuation or has any punctuation mark within the prefix will be ignored during decoding. Words shorter than 4 letters will also be ignored, making it easy to insert articles, conjunctions, or fill words where needed while still being able to check your work by "decoding" it.

To "encode", pass -e. To get back the original data, pass -d. If your input or desired output is a hex string, pass -x, or if you want to use a magnet link pass -m.

The prefix list

The list of prefixes was generated with pick3letters/generate.py. That takes a list of words and their counts as input and generates a specified number of prefix lists as output, such that the sum of counts of each prefix in a group is approximately the same. It also allows filtering the list of words by minimum count to avoid unusual prefixes or typoes. You can also change the prefix length, the number of groups (which must be a power of 2), and the minimum word length.

Generating new prefix lists

You can run the generator with python3 -m pick3letters.generate for usage information. For now, you'd need to replace prefixes.py with its output, though at some point I'll probably add support for multiple prefix lists.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pick3letters-1.0.0.tar.gz (20.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pick3letters-1.0.0-py3-none-any.whl (22.2 kB view details)

Uploaded Python 3

File details

Details for the file pick3letters-1.0.0.tar.gz.

File metadata

  • Download URL: pick3letters-1.0.0.tar.gz
  • Upload date:
  • Size: 20.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 PyPy/7.3.5

File hashes

Hashes for pick3letters-1.0.0.tar.gz
Algorithm Hash digest
SHA256 a2ae25fbf2e21b1ca5631549d1026b206866ddc0a72ee681257b0d505e03081e
MD5 b5b1a598aaaf81635a5e78b2840d8f92
BLAKE2b-256 93b8625e16a2ac6201835a27a95ab8d778a6de50125f69edb80356829976f2ce

See more details on using hashes here.

File details

Details for the file pick3letters-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pick3letters-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 22.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 PyPy/7.3.5

File hashes

Hashes for pick3letters-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c33491aa10872e97fd225fe3038f1bd215a183730f0765c662a2e82a4ad7f360
MD5 b32d28d0884e63eab006a3744d961717
BLAKE2b-256 f70ae6840f4ca9a8d26af9832da2181942d9eb38d42ce2bdafa492325809d240

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page