Convert word to keypress sequence
Project description
I made this as a submodule for my project on correcting password typos. I found this very cool, and might be useful in many scenarios where one has to find vairations of word due to mistyping.
Here we define typo as purely mistyping a key, and not due to ignorance. Hence, finding possible typos of a word require converting the word into sequence of key presses. This module provides those functionality to convert word into and from sequence of key presses. Also, given a word find the possible typo of that word tuned to the typos due to mistyping.
Dependency
Right now it needs cython. I will remove it in future. * Cython.
Install
$ pip install word2keypress
# or
$ python setup.py install
How to Use?
Refer to the HowToRun.ipynb file.
from word2keypress import distance, Keyboard
kb = Keyboard(u'US') # making unicode is mandatory (weird Cython)
kseq = kb.word_to_keyseq('Password')
print "\nRaw sequence:", repr(kseq)
print "\nReadable sequence:", repr(kb.print_keyseq(kseq))
print "\nkeyseq->word:", kb.keyseq_to_word(kseq)
print "\ndistance:", distance('Password1', 'PASSWORD1')
How to test/develop ?
(For myself, as I keep forgetting how to deal with cython. Stupid Idea) Don’t forget to regenerate the src/word2keypress/_keyboard.c file in Option 1.
$ python setup.py pytest # Option 1 $ tox # Option 2 $ python -m pytest tests/ # Option 3
In any case have to regenerate the _keyboard.c to test with the new code.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file word2keypress-1.0.16.tar.gz
.
File metadata
- Download URL: word2keypress-1.0.16.tar.gz
- Upload date:
- Size: 192.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.1.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1cf380b4795e4c0071ce92d388224f910eee16135824151da8328f11be3ed04 |
|
MD5 | db02cbe5ee4dc6761d533740a25dbb68 |
|
BLAKE2b-256 | f131fe02ab3dc90b7d39869fb3ec89c60b855773ed3b05ec90929aa22a146f26 |