MathKeyboardEngine provides the logic for a highly customizable virtual math keyboard. It is intended for use together with any LaTeX typesetting library.
Project description
MathKeyboardEngine for Python
MathKeyboardEngine for Python provides the logic for a highly customizable virtual math keyboard. It is intended for use together with any LaTeX typesetting library (for example ...).
Also available:
An execution timeline
todo
Let me test it now!
Live examples can be tested at MathKeyboardEngine.GitHub.io.
Pros and cons?
Unique about MathKeyboardEngine:
-
it supports (almost?) all math mode LaTeX, including matrices. (Please share if you know anything that is not supported.)
-
its syntax tree consists of very few different parts: the
StandardLeafNode
,StandardBranchingNode
,AscendingBranchingNode
andDescendingBranchingNode
can be used for almost all LaTeX, including fractions, powers, combinations, subscript, etc. with ready-to-use up/down/left/right navigation. -
it can be used with any LaTeX math typesetting library you like.
A con:
- this library will never be able to handle setting the cursor with the touch of a finger on a typeset formula. (But it DOES support up/down/left/right navigation and has a selection mode via arrow keys.)
More pros:
-
you have full control over what you display on the virtual keyboard keys and what a virtual key press actually does.
-
customize the editor output at runtime: dot or comma as decimal separator, cross or dot for multiplication, cursor style, colors, etc.
-
this library also supports handling input from a physical keyboard, where - for example - the forward slash "/" key can be programmed to result in encapsulating a previously typed number as the numerator of a fraction. (See the examples.)
-
almost forgotten: it's open source, free to use, free to modify (please fork this repo)!
How to use this library
PyPi link: https://pypi.org/project/mathkeyboardengine
Documentation
todo
How to use this repo
Follow these steps to set up (and verify) a development environment for this repository:
-
Install the latest version of Python via https://www.python.org/downloads. The download includes
pip
. -
Open the Terminal in VS Code and run
py -m pip install -U pytest
. -
Run all tests via
py -m pytest
. -
See code coverage:
py -m pip install pytest-cov
+py -m pytest --cov=src --cov-report term-missing
.
Ask or contribute
-
ask questions about anything that is not clear or when you'd like help.
-
share ideas or what you've made.
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
Built Distribution
Hashes for mathkeyboardengine-0.1.0a3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a0007eeb04bea9f30ea4c3dd6899800f3c61db9995c7ba2f64bb1f8ac4e1bb9 |
|
MD5 | b717ba316e2e4d75179136b136631845 |
|
BLAKE2b-256 | b578070410d908ba82575bcf920d2acb4975592c1d654ee528b50ec3c8ae6313 |
Hashes for mathkeyboardengine-0.1.0a3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8eb12c69993dc8fbf4745d2edbb9a34a4718779c494372dac3e3b4ccb1c1739b |
|
MD5 | 28f48d53bb9f790e7b5c69fba2dcaa0a |
|
BLAKE2b-256 | 15e2c34127ea8773a617dd8c9047ccffc3b4fc6e08e120510ccfdef3ccc94248 |