
Security News
Deno 2.6 + Socket: Supply Chain Defense In Your CLI
Deno 2.6 introduces deno audit with a new --socket flag that plugs directly into Socket to bring supply chain security checks into the Deno CLI.
mathkeyboardengine
Advanced tools
MathKeyboardEngine provides the logic for a highly customizable virtual math keyboard. It is intended for use together with any LaTeX typesetting library.
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 matplotlib.mathtext, sympy in combination with the official latex install or Katex in a webview).
Also available:
insert(some_matrix_node) or move_up(), delete_left(), etc.get_edit_mode_latex() outputs the total of LaTeX you typed, for example \frac{3}{4}\blacksquare (if \blacksquare is your cursor), which you then feed to the typesetting library for display.get_view_mode_latex() outputs the LaTeX without a cursor.Live (JavaScript) examples can be tested at mathkeyboardengine.github.io.
A Python example for the PyQt6 GUI framework can be found in the examples folder. Note that the Python example is limited, because it does not handle physical keyboard input. Also, there are many more GUI frameworks for which there is no example. However, the PyQt6 example might provide insight in how to use MathKeyboardEngine in any project.
Unique about MathKeyboardEngine:
StandardLeafNode, StandardBranchingNode, AscendingBranchingNode and DescendingBranchingNode can be used for almost all LaTeX, including fractions, powers, combinations, subscript, etc. with ready-to-use up/down/left/right navigation.A con:
More pros:
Run the following command in the VS Code Terminal:
py -m pip install --upgrade mathkeyboardengine
Then use
from mathkeyboardengine import *
k = KeyboardMemory()
latexconfiguration = LatexConfiguration()
# subscribe to button click events of virtual key presses, etc.
or
import mathkeyboardengine as mke
k = mke.KeyboardMemory()
latexconfiguration = mke.LatexConfiguration()
Note: "mke" is an abbreviation of "MathKeyboardEngine". You can choose something different.
Visit the documentation and the (latest version of the)* examples folder for more implementation details.
* If you use a version tag in the url like this: https://github.com/MathKeyboardEngine/MathKeyboardEngine.Python/tree/v0.2.0, you can see the git repository as it was for that version. That may not be needed if the changelog doesn't note any important changes.
Follow these steps to set up (and verify) a development environment for this repository:
pip.py -m pip install pytest==7.4.4.py -m pytest tests/.py -m pip install pytest-cov==5.0.0py -m pytest tests/ --cov=src --cov-report term-missing.py -m pip install nox==2023.4.22py -m nox (this uses noxfile.py from the root of the repository).The MathKeyboardEngine repositories use the most permissive licensing available. The "BSD Zero Clause License" (0BSD) allows for
commercial + non-commercial use, closed + open source, with + without modifications, etc. and is equivalent to licenses like:
The "BSD Zero Clause License" (0BSD) does not have the condition
(...), provided that the above copyright notice and this permission notice appear in all copies.
which is part of the "MIT License" (MIT) and its shorter equivalent "ISC License" (ISC). Apart from that they are all equivalent.
FAQs
MathKeyboardEngine provides the logic for a highly customizable virtual math keyboard. It is intended for use together with any LaTeX typesetting library.
We found that mathkeyboardengine demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Deno 2.6 introduces deno audit with a new --socket flag that plugs directly into Socket to bring supply chain security checks into the Deno CLI.

Security News
New DoS and source code exposure bugs in React Server Components and Next.js: what’s affected and how to update safely.

Security News
Socket CEO Feross Aboukhadijeh joins Software Engineering Daily to discuss modern software supply chain attacks and rising AI-driven security risks.