A lexicon search tool for language teachers and students. Explore word patterns in any language.
Project description
lexgo
A lexicon search tool for language teachers and students. Explore word patterns in any language.
Crack WORDLE in minutes using lexgo for hints. It's also great for cracking crossword puzzles. You can ask lexgo to find example words of specific lengths and with specific letters.
Installation
On Linux or Mac, things couldn't be simpler. Just open a terminal and follow these instructions.
Install this tool using pip:
pip install lexgo
Python Package Index: https://pypi.org/project/lexgo/
If you aren't familiar with Python and have trouble with the install, you can read the python.org article Using Python on Mac OSX. The article recommends an installer distributed by python.org. Personally, I like to use Homebrew for installing applications on Mac, but Anaconda is also very popular.
Windows
You can use lexgo on Windows using the Windows Subsystem for Linux inside the Windows Terminal.
Here is a crash course:
Search "Terminal" in your programs. Once the terminal is open, type these commands and follow the instructions you see in the terminal.
wsl —install
sudo apt update
sudo apt upgrade
sudo apt install python3-pip
sudo apt install python3-venv
python3 -m venv ./venv
pip install lexgo
Now you are ready to use lexgo. Just type in your first command.
# show all three letter words with 'a'
lexgo -i "a" "..."
After installing, when you want to use lexgo again in the future. Just open the terminal and type the following to get started.
wsl
source ./venv/bin/activate
Usage
For help, run:
lexgo --help
You can also use:
python -m lexgo --help
Development
To contribute to this tool, first checkout the code. Then create a new virtual environment:
cd lexgo
python -m venv venv
source venv/bin/activate
Now install the dependencies and test dependencies:
pip install -e '.[test]'
To run the tests:
python -m pytest
Acknowledgements
The English lexicon used was taken from the english-words repo. Thanks to the esteemed programer @dwyl for his excelent work.
The Spanish lexicon used was taken from the diccionario-español.txt repo. Gracias al estimado programador @JorgeDuenasLerin por su trabajo excelente.
The French lexicon used was taken from the French-Dictionary repo. Merci au programmeur estimé @hbenbel pour son excellent travail.
The Portuguese lexicon used was taken from the words-pt repo. Obrigado ao estimado programador @jfoclpf por seu excelente trabalho.
The German lexicon used was taken from the wortliste repo. Vielen Dank an den geschätzten Programmierer @davidak für seine hervorragende Arbeit.
The Italian lexicon used was taken from the paroleitaliane repo. Grazie allo stimato programmatore @napolux per il suo eccellente lavoro. This lexicon is in ascii and doesn't include any diacritical marks on the words. I'm searching for a better option.
The python package chardet and the command line tool iconv were very helpful in detecting and converting encondings.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lexgo-1.2.tar.gz.
File metadata
- Download URL: lexgo-1.2.tar.gz
- Upload date:
- Size: 8.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f8ba129cc9e197029a6c9c768d28a8f82bd8ddc315360b738e5fc933d1942ec
|
|
| MD5 |
5a8379ff8fea28fa558cd76518b73029
|
|
| BLAKE2b-256 |
b3f9243ad1ccf7d48be928a92a7a0bce396cb5126d1292a861340492924d72d9
|
Provenance
The following attestation bundles were made for lexgo-1.2.tar.gz:
Publisher:
publish.yml on joshkil/lexgo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lexgo-1.2.tar.gz -
Subject digest:
8f8ba129cc9e197029a6c9c768d28a8f82bd8ddc315360b738e5fc933d1942ec - Sigstore transparency entry: 1107822400
- Sigstore integration time:
-
Permalink:
joshkil/lexgo@e5a1ceeece44dde45d7cc028d3fe29225f2fd75d -
Branch / Tag:
refs/tags/v1.2 - Owner: https://github.com/joshkil
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@e5a1ceeece44dde45d7cc028d3fe29225f2fd75d -
Trigger Event:
release
-
Statement type:
File details
Details for the file lexgo-1.2-py3-none-any.whl.
File metadata
- Download URL: lexgo-1.2-py3-none-any.whl
- Upload date:
- Size: 8.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68f41c7d16d4dada8567ec914774507dbbf59195ed73eda242fcede3e8a76115
|
|
| MD5 |
77c6f23ae7cd7ad8bf7b0842f0cb7ad0
|
|
| BLAKE2b-256 |
74f49b3fdaa324967b7564dbc5d6bc40302b99e4de17e202993d1614563b15fa
|
Provenance
The following attestation bundles were made for lexgo-1.2-py3-none-any.whl:
Publisher:
publish.yml on joshkil/lexgo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lexgo-1.2-py3-none-any.whl -
Subject digest:
68f41c7d16d4dada8567ec914774507dbbf59195ed73eda242fcede3e8a76115 - Sigstore transparency entry: 1107822401
- Sigstore integration time:
-
Permalink:
joshkil/lexgo@e5a1ceeece44dde45d7cc028d3fe29225f2fd75d -
Branch / Tag:
refs/tags/v1.2 - Owner: https://github.com/joshkil
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@e5a1ceeece44dde45d7cc028d3fe29225f2fd75d -
Trigger Event:
release
-
Statement type: