This Plover extension plugin contains metas for your dictionaries that can assist with Q&A (Question and Answer): the process of recording lines of questioning in a conversation involving multiple people, usually in a legal context.
More information about the concept of Q&A can be found at:
More information about the creation of, and reasoning behind, the outlines that originally informed this plugin can be found at the following blog post:
You can see a video of the plugin in action here:
(And if you are a Vim user and want the syntax highlighting, you can find it in the Vim Steno Q&A plugin)
- In the Plover application, open the Plugins Manager (either click the Plugins
Manager icon, or from the
Toolsmenu, selectPlugins Manager). - From the list of plugins, find
plover-q-and-a - Click "Install/Update"
- When it finishes installing, restart Plover
- After re-opening Plover, open the Configuration screen (either click the
Configuration icon, or from the main Plover application menu, select
Preferences...) - Open the Plugins tab
- Check the box next to
plover_q_and_ato activate the plugin
See the examples directory for example configuration and dictionaries to
help you get up and running with using this plugin for Q&A.
See the INSTRUCTIONS page.
Clone from GitHub with git:
git clone git@github.com:paulfioravanti/plover-q-and-a.git
cd plover-q-and-a
python -m pip install --editable ".[test]"If you are a Tmuxinator user, you may find my plover_q_and_a project file of reference.
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.
- Pytest is used for testing in this plugin.
- Coverage.py and pytest-cov are used for test coverage, and to run coverage within Pytest
- Pylint is used for code quality
- Mypy is used for static type checking
Currently, the only parts able to be tested are ones that do not rely directly on Plover.
Run tests, coverage, and linting with the following commands:
pytest --cov --cov-report=term-missing
pylint plover_q_and_a
mypy plover_q_and_aTo get a HTML test coverage report:
coverage run --module pytest
coverage html
open htmlcov/index.htmlIf 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 --working-directory . --justfile test/justfileAfter making any code changes, install the plugin into Plover with the following command:
plover --script plover_plugins install --editable .Where
ploverin the command is a reference to your locally installed version of Plover. See the Invoke Plover from the command line page for details on how to create that reference.
When necessary, the plugin can be uninstalled via the command line with the following command:
plover --script plover_plugins uninstall plover-q-and-a