Skip to main content

Plover Steno Engine Hooks Logger

Build Status PyPI - Version PyPI - Downloads linting: pylint

Plover uses Engine Hooks to allow plugins to listen to its steno engine events. This hybrid extension/GUI Tool plugin simply connects into all the known Engine Hooks, and logs out the given parameters to the Plover log, which can be handy during Plover plugin development.

Install

  1. In the Plover application, open the Plugins Manager (either click the Plugins Manager icon, or from the Tools menu, select Plugins Manager).
  2. From the list of plugins, find plover-steno-engine-hooks
  3. Click "Install/Update"
  4. When it finishes installing, restart Plover

Extension Logging

  1. After re-opening Plover, open the Configuration screen (either click the Configuration icon, or from the main Plover application menu, select Preferences...)
  2. Open the Plugins tab
  3. Check the box next to plover_steno_engine_hooks to activate the extension

GUI Tool Logging

  1. After re-opening Plover, click the Steno Engine Hooks Logger button on the Plover application to enable GUI-related logging.

Usage

Since both the Extension and GUI Tool logging cover the same ground, you will likely only want to use one at a single time (the extension, or the GUI Tool, depending on what kind of plugin you are developing), otherwise the logs will get very noisy.

To view the logs, open up plover.log, located under your Plover configuration directory:

  • Windows: C:\Users\<your username>\AppData\Local\plover
  • macOS: ~/Library/Application Support/plover
  • Linux: ~/.config/plover

There, you should see entries there prefixed with [STENO ENGINE HOOK (EXTENSION)] or [STENO ENGINE HOOK (GUI)].

If you ever find the logs getting too noisy, then comment out any of the hooks you don't need to listen to in the _HOOKS list under the Logger class.

Development

Clone from GitHub with git and install test-related dependencies with pip:

git clone git@github.com:paulfioravanti/plover-steno-engine-hooks-logger.git
cd plover-steno-engine-hooks-logger
python -m pip install --editable ".[test]"

If you are a Tmuxinator user, you may find my plover_steno_engine_hooks_logger project file of reference.

Python Version

Plover's Python environment currently uses version 3.9 (see Plover's workflow_context.yml to confirm the current version).

So, in order to avoid unexpected issues, use your runtime version manager to make sure your local development environment also uses Python 3.9.x.

Type Checking and Linting

Since the only parts of the plugin able to be tested are ones that do not rely directly on Plover, automated testing has not been possible. But, at least there are some code quality checks performed:

  • Pylint is used for code quality
  • Mypy is used for static type checking

Run type checking and linting with the following commands:

pylint plover_steno_engine_hooks_logger
mypy plover_steno_engine_hooks_logger

If you are a just user, you may find the justfile useful during development in running multiple test commands. You can run the following command from the project root directory:

just

Deploying Changes

After making any code changes, install the plugin into Plover with the following command:

plover --script plover_plugins install --editable .

When necessary, the plugin can be uninstalled via the command line with the following command:

plover --script plover_plugins uninstall plover-steno-engine-hooks-logger

Release files for plover-steno-engine-hooks-logger 0.3.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for plover-steno-engine-hooks-logger 0.3.6
File Size Uploaded
plover_steno_engine_hooks_logger-0.3.6.tar.gz 20.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for plover-steno-engine-hooks-logger 0.3.6
File Interpreter ABI Platform
plover_steno_engine_hooks_logger-0.3.6-py3-none-any.whl Python 3 none any Details

Total release size: 40.7 kB

Release files / plover_steno_engine_hooks_logger-0.3.6.tar.gz

Download URL plover_steno_engine_hooks_logger-0.3.6.tar.gz
Size 20.5 kB
Tags Source
SHA-256 checksum
How to use checksums
49410d71e8f746353c6ea5709a0af5d29e54cb5a346dfa8e5a6a8e71ace7f08f
BLAKE2b-256 checksum
How to use checksums
3d0a4d86a340ef067a0a0529358e0ac086bf4d3c855e9ec8dfc8512c7d76c6fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.1 CPython/3.12.7

Release files / plover_steno_engine_hooks_logger-0.3.6-py3-none-any.whl

Download URL plover_steno_engine_hooks_logger-0.3.6-py3-none-any.whl
Size 20.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
153af410c801479461ed3c3d86fd390ac00c11e681b7cd25c338434bf7f92910
BLAKE2b-256 checksum
How to use checksums
eacfe5baaa322e34b9e6fabdf1868e04058f8785b6995d6da1188a36205a033a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/5.1.1 CPython/3.12.7

Release history Release notifications | RSS feed

This release

0.3.6 This release

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page