Troubleshooting issues
Some common problems and solutions are recorded here. If you're having a problem with Plover, see if it is described here along with a solution.
Also, please make sure to check the Plover bug tracker for known reported issues.
<!-- TOC -->
- Running in Debug Mode
- Issues
<!-- /TOC -->
Running in Debug Mode
Follow instructions in Invoke Plover from the command line. You need to invoke the command
plover --log-level debug
In particular, the exact commands are
plover_console.exe --log-level debug
for Windows/Applications/Plover.app/Contents/MacOS/Plover --log-level debug
for macOS./plover.AppImage --log-level debug
for Linux (AppImage)
Issues
General
Plover does not recognize my USB keyboard or steno machine
Note: Initially, Plover is set up to use your computer keyboard as a steno machine. If you have a steno machine, you'll need to configure Plover to look for your machine. See the Supported Hardware page for configuration instructions specific to your machine.
If you know your machine has been configured correctly, and Plover doesn't recognize your keyboard or steno machine:
- Confirm your keyboard or steno machine is plugged into your computer.
- On the Plover control panel, check if it states the machine is connected or disconnected.
- If it states the machine is disconnected, press the Reconnect button (this is to the right of "connected" or "disconnected" message).
- If Plover still doesn't recognize your machine, try closing and relaunching Plover.
Strokes no longer appear when using keyboard
If Plover is enabled with arpeggiating and strokes were previously registered, check that arpeggiating has not begun. Press <space>
(by default) to toggle arpeggiate.
When using TX Bolt, any chord with SW-
in it doesn't come out right
Solution: in the serial settings, uncheck "Xon/Xoff" under "Flow control". This will solve the issue where using S and W in a chord causes Plover to ignore those keys.
Plugins Manager
If you're running Plover 4.x and are missing the plugins manager or it's not working as expected, you can try manually installing plugins
Dictionary issues
By default, Plover ships with three dictionaries: main.json
, commands.json
and user.json
. This can be a source of confusion to new users.
Dictionary priority
If two dictionaries contain the same steno strokes, Plover will use the one in the dictionary that has the highest priority.
In Plover 3.x and below, the dictionaries in the dictionary list were prioritized from the bottom up.
In Plover 4 and above, the dictionaries order is configurable, but the default is to have the highest priority dictionary at the top, and it is labeled with a star ⭐.
By default, the user.json
dictionary is placed at the highest priority. If you want new strokes to go to a different dictionary by default (for example, you have your own dictionary already), make sure that the target dictionary is the highest priority.
If you have your own dictionary already
If you have your own dictionary already, you'll probably want to remove main.json
and custom.json
and add your own dictionary. This includes existing stenographers and users of another theory (Magnum, Phoenix).
We do not recommend you remove the commands.json
dictionary from the dictionary list. This is because Plover has some concepts that users of other steno software will not be familiar with initially. Feel free to go through commands.json
, and remap strokes that you want to use in your own theory.
About the default dictionaries
main.json
main.json
is the core default dictionary. It is based on Mirabai Knight's own personal dictionary, which follows a StenEd-style thoery. It contains over 140,000 entries and is adequate for anyone learning stenography. Mirabai uses this dictionary professionally for her realtime work.
commands.json
commands.json
contains some keyboard shortcuts and Plover-specific utilities. For example, the stroke to add a new translation: TKUPT
. It also contains arrow key movements, copy and paste, and more.
Have a look inside to see some sample keyboard commands that Plover can do.
user.json
user.json
is a blank dictionary. By default, the user.json
dictionary is the highest priority - it is the first dictionary Plover will use. When you define new strokes, they will get added to this dictionary. This means you can see which strokes you've defined yourself, instead of trying to locate them inside the default dictionaries.
Windows
Unrecognized keystrokes and other strange behavior
- Disable AutoKey if you're getting strange behavior with Plover.
No Output
Double check the following:
- Your machine is connected
- Plover's output is set to "Enabled"
- You can see strokes in the paper tape
If nothing is "typed" when you're focused in a program like "Notepad", something may be interfering with Plover's ability to send keystrokes.
You can try:
- Running Plover as an Administrator
- If you are a Citrix user, reinstall Citrix and make sure to opt-out of app protection
macOS
Plover does not run
-
If you use a keyboard instead of a steno machine, Plover needs Assistive Device Permissions.
-
If Plover does not have the permission, you'll see this error message
Exception: Enable access for assistive devices.
-
From the Catalina version of macOS, you may need to enable both the
Plover
app and theenv
app under Security & Privacy > Privacy > Accessibility.Alternatively, upgrade Plover to a newer version. See issue 1134 for more details.
-
If Plover is shown to have Accessibility permissions but it still won't output anything/shows the error message above, there may be something wrong with the permissions.
(some situations such as operating system upgrade/Plover version upgrade might trigger this issue.)
There are several ways you can try to fix them, from least destructive to most destructive:
-
Removing Plover from the list of Accessibility permissions using the little
-
button below the list. After removing Plover from the list, restart Plover, enable output and start writing, it should ask again for permission and reappear in the list for you to enable. -
Resetting the Accessibility permissions should clear the list and you will have to re-enable Accessibility permissions for every app that was enabled before. To reset the permissions, open a terminal (Applications > Utilities > Terminal.app), copy/paste the following command and press Enter:
sudo tccutil reset Accessibility
Enter your password and press Enter again. Restart Plover, enable output, and it should ask again for permission when it tries to output text as you write.
-
Same as solution #2 but resetting all of the permissions, not just the Accessibility ones. The instructions are the same, but copy/pasting this command instead.
sudo tccutil reset All
-
Alternatively, as a debugging step, invoke Plover in the terminal with the command
/Applications/Plover.app/Contents/MacOS/Plover
then grant Terminal assistive permission. (remember to revoke the permission after the possible is fixed to avoid potential security issues!)
-
-
Plover will not work if you are using Karabiner Elements, or generally speaking any program that allow customizing the keyboard might interfere with Plover.
-
Unrecognized keystrokes
macOS has a feature where holding down a key brings up an accent menu. This can sometimes drop keys when typing quickly, such as TO/FPLT
producing t.
instead of to.
To disable this, follow the instructions in this article: "How to Disable the Character Accent Menu in OS X Mountain Lion".
Linux
Missing or jumbled output
- IBus does not handle the very fast simulated key presses of Plover. This can result in dropped or transposed letters (
HAT
becomesAHT
orAT
).
Linux dynamic keyboard layout switching is not working
- Plover does not handle dynamic keyboard layout switching: see bug #298.
Delayed/slow output when using gnome-shell and the keyboard machine
- It's a gnome-shell bug, unfortunately there's no known workaround.