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
File details
Details for the file mathkeyboardengine-0.1.0a9.tar.gz
.
File metadata
- Download URL: mathkeyboardengine-0.1.0a9.tar.gz
- Upload date:
- Size: 12.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bcc965569a9f84cac8e2d1b87e1de1d6c039f10739039f10ce6a610cbe42f8c7 |
|
MD5 | 1a10862e15f9d7d8dca9417e309be73f |
|
BLAKE2b-256 | d8790d026e1a296ae8b6bbdf9581b6f85c9f7adc5b3e4b03442f041aaadb5ffe |
File details
Details for the file mathkeyboardengine-0.1.0a9-py3-none-any.whl
.
File metadata
- Download URL: mathkeyboardengine-0.1.0a9-py3-none-any.whl
- Upload date:
- Size: 38.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7d49197ae527bec1e9c7869621a30f8818746ffcc1066fdc4693cb6a62a0af5a |
|
MD5 | 943278b90a096f1cb2ab9feb00d99647 |
|
BLAKE2b-256 | 049494f206a3ae943ec0a00c7b71b5cb8f295e012f02931917cf3a775856831f |