Troubleshooting issues: Difference between revisions

From Plover Wiki
(Initial markdown ~> mediawiki conversion)
(Spacing fix)
Line 2: Line 2:


Also, please make sure to check the [https://github.com/openstenoproject/plover/issues Plover bug tracker] for known reported issues.
Also, please make sure to check the [https://github.com/openstenoproject/plover/issues Plover bug tracker] for known reported issues.
-----
-----


Line 32: Line 30:
*** [[#delayedslow-output-when-using-gnome-shell-and-the-keyboard-machine|Delayed/slow output when using gnome-shell and the keyboard machine]]
*** [[#delayedslow-output-when-using-gnome-shell-and-the-keyboard-machine|Delayed/slow output when using gnome-shell and the keyboard machine]]


<!-- /TOC -->
<!-- /TOC --><span id="running-in-debug-mode"></span>
<span id="running-in-debug-mode"></span>
= Running in Debug Mode =
= Running in Debug Mode =


Line 43: Line 40:
* <code>plover_console.exe --log-level debug</code> for Windows
* <code>plover_console.exe --log-level debug</code> for Windows
* <code>/Applications/Plover.app/Contents/MacOS/Plover --log-level debug</code> for macOS
* <code>/Applications/Plover.app/Contents/MacOS/Plover --log-level debug</code> for macOS
* <code>./plover.AppImage --log-level debug</code> for Linux (AppImage)
* <code>./plover.AppImage --log-level debug</code> for Linux (AppImage)<span id="issues"></span>
 
<span id="issues"></span>
= Issues =
= Issues =
<span id="general"></span>
<span id="general"></span>
== General ==
== General ==
<span id="plover-does-not-recognize-my-usb-keyboard-or-steno-machine"></span>
<span id="plover-does-not-recognize-my-usb-keyboard-or-steno-machine"></span>
=== Plover does not recognize my USB keyboard or steno machine ===
=== Plover does not recognize my USB keyboard or steno machine ===
Line 61: Line 54:
# On the Plover control panel, check if it states the machine is connected or disconnected.
# 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 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.
# If Plover still doesn’t recognize your machine, try closing and relaunching Plover.<span id="strokes-no-longer-appear-when-using-keyboard"></span>
 
<span id="strokes-no-longer-appear-when-using-keyboard"></span>
=== Strokes no longer appear when using keyboard ===
=== Strokes no longer appear when using keyboard ===


If Plover is enabled with [https://github.com/openstenoproject/plover/wiki/Glossary#arpeggiate arpeggiating] and strokes were previously registered, check that arpeggiating has not begun. Press <code>&lt;space&gt;</code> (by default) to toggle arpeggiate.
If Plover is enabled with [https://github.com/openstenoproject/plover/wiki/Glossary#arpeggiate arpeggiating] and strokes were previously registered, check that arpeggiating has not begun. Press <code>&lt;space&gt;</code> (by default) to toggle arpeggiate.<span id="when-using-tx-bolt-any-chord-with-sw--in-it-doesnt-come-out-right"></span>
 
<span id="when-using-tx-bolt-any-chord-with-sw--in-it-doesnt-come-out-right"></span>
=== When using TX Bolt, any chord with <code>SW-</code> in it doesn’t come out right ===
=== When using TX Bolt, any chord with <code>SW-</code> 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.
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.<span id="plugins-manager"></span>
 
<span id="plugins-manager"></span>
== Plugins Manager ==
== 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 [https://github.com/openstenoproject/plover/wiki/Installing-Plugins#manually-installing-plugins manually installing plugins]
If you’re running Plover 4.x and are missing the plugins manager or it’s not working as expected, you can try [https://github.com/openstenoproject/plover/wiki/Installing-Plugins#manually-installing-plugins manually installing plugins]<span id="dictionary-issues"></span>
 
<span id="dictionary-issues"></span>
== Dictionary issues ==
== Dictionary issues ==


By default, Plover ships with three dictionaries: <code>main.json</code>, <code>commands.json</code> and <code>user.json</code>. This can be a source of confusion to new users.
By default, Plover ships with three dictionaries: <code>main.json</code>, <code>commands.json</code> and <code>user.json</code>. This can be a source of confusion to new users.<span id="dictionary-priority"></span>
 
<span id="dictionary-priority"></span>
=== Dictionary priority ===
=== Dictionary priority ===


Line 92: Line 75:
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 ⭐.
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 <code>user.json</code> 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.
By default, the <code>user.json</code> 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.<span id="if-you-have-your-own-dictionary-already"></span>
 
<span id="if-you-have-your-own-dictionary-already"></span>
=== If you have your own dictionary already ===
=== If you have your own dictionary already ===


If you have your own dictionary already, you’ll probably want to remove <code>main.json</code> and <code>custom.json</code> and add your own dictionary. This includes existing stenographers and users of another theory (Magnum, Phoenix).
If you have your own dictionary already, you’ll probably want to remove <code>main.json</code> and <code>custom.json</code> and add your own dictionary. This includes existing stenographers and users of another theory (Magnum, Phoenix).


We do not recommend you remove the <code>commands.json</code> 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 <code>commands.json</code>, and remap strokes that you want to use in your own theory.
We do not recommend you remove the <code>commands.json</code> 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 <code>commands.json</code>, and remap strokes that you want to use in your own theory.<span id="about-the-default-dictionaries"></span>
 
<span id="about-the-default-dictionaries"></span>
== About the default dictionaries ==
== About the default dictionaries ==


Line 116: Line 95:
=== user.json ===
=== user.json ===


<code>user.json</code> is a blank dictionary. By default, the <code>user.json</code> 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.
<code>user.json</code> is a blank dictionary. By default, the <code>user.json</code> 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.<span id="windows"></span>
 
<span id="windows"></span>
== Windows ==
== Windows ==
<span id="unrecognized-keystrokes-and-other-strange-behavior"></span>
<span id="unrecognized-keystrokes-and-other-strange-behavior"></span>
=== Unrecognized keystrokes and other strange behavior ===
=== Unrecognized keystrokes and other strange behavior ===


* Disable AutoKey if you’re getting strange behavior with Plover.
* Disable AutoKey if you’re getting strange behavior with Plover.<span id="no-output"></span>
 
<span id="no-output"></span>
=== No Output ===
=== No Output ===


Line 140: Line 114:


* Running Plover as an Administrator
* Running Plover as an Administrator
* If you are a Citrix user, reinstall Citrix and make sure to opt-out of [https://docs.citrix.com/en-us/citrix-virtual-apps-desktops/secure/app-protection.html app protection]
* If you are a Citrix user, reinstall Citrix and make sure to opt-out of [https://docs.citrix.com/en-us/citrix-virtual-apps-desktops/secure/app-protection.html app protection]<span id="macos"></span>
 
<span id="macos"></span>
== macOS ==
== macOS ==
<span id="plover-does-not-run"></span>
<span id="plover-does-not-run"></span>
=== Plover does not run ===
=== Plover does not run ===
Line 151: Line 122:
<li><p>If you use a keyboard instead of a steno machine, Plover needs [https://support.apple.com/en-ca/guide/mac-help/mh43185/mac Assistive Device Permissions].</p>
<li><p>If you use a keyboard instead of a steno machine, Plover needs [https://support.apple.com/en-ca/guide/mac-help/mh43185/mac Assistive Device Permissions].</p>
<ul>
<ul>
<li><p>If Plover does not have the permission, you’ll see this error message</p>
<li>If Plover does not have the permission, you’ll see the error message <code>Exception: Enable access for assistive devices.</code>
<blockquote><p>Exception: Enable access for assistive devices.</p></blockquote></li>
</li>
<li><p>From the Catalina version of macOS, you may need to enable both the <code>Plover</code> app and the <code>env</code> app under Security &amp; Privacy &gt; Privacy &gt; Accessibility.</p>
<li><p>From the Catalina version of macOS, you may need to enable both the <code>Plover</code> app and the <code>env</code> app under Security &amp; Privacy &gt; Privacy &gt; Accessibility.</p>
<p>Alternatively, upgrade Plover to a newer version. See [https://github.com/openstenoproject/plover/issues/1134 issue 1134] for more details.</p></li>
<p>Alternatively, upgrade Plover to a newer version. See [https://github.com/openstenoproject/plover/issues/1134 issue 1134] for more details.</p></li>
Line 170: Line 141:
</li>
</li>
<li><p>Plover will not work if you are using [https://github.com/tekezo/Karabiner-Elements Karabiner Elements], or generally speaking any program that allow customizing the keyboard might interfere with Plover.</p></li></ul>
<li><p>Plover will not work if you are using [https://github.com/tekezo/Karabiner-Elements Karabiner Elements], or generally speaking any program that allow customizing the keyboard might interfere with Plover.</p></li></ul>
</li></ul>
</li></ul><span id="unrecognized-keystrokes"></span>
 
<span id="unrecognized-keystrokes"></span>
=== Unrecognized keystrokes ===
=== 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 <code>TO/FPLT</code> producing <code>t.</code> instead of <code>to.</code> To disable this, follow the instructions in this article: [https://www.tekrevue.com/tip/how-to-disable-the-character-accent-menu-in-os-x-mountain-lion/ “How to Disable the Character Accent Menu in OS X Mountain Lion”].
macOS has a feature where holding down a key brings up an accent menu. This can sometimes drop keys when typing quickly, such as <code>TO/FPLT</code> producing <code>t.</code> instead of <code>to.</code> To disable this, follow the instructions in this article: [https://www.tekrevue.com/tip/how-to-disable-the-character-accent-menu-in-os-x-mountain-lion/ “How to Disable the Character Accent Menu in OS X Mountain Lion”].<span id="linux"></span>
 
<span id="linux"></span>
== Linux ==
== Linux ==
<span id="missing-or-jumbled-output"></span>
<span id="missing-or-jumbled-output"></span>
=== Missing or jumbled output ===
=== Missing or jumbled output ===


* IBus does not handle the very fast simulated key presses of Plover. This can result in dropped or transposed letters (<code>HAT</code> becomes <code>AHT</code> or <code>AT</code>).
* IBus does not handle the very fast simulated key presses of Plover. This can result in dropped or transposed letters (<code>HAT</code> becomes <code>AHT</code> or <code>AT</code>).<span id="linux-dynamic-keyboard-layout-switching-is-not-working"></span>
 
<span id="linux-dynamic-keyboard-layout-switching-is-not-working"></span>
=== Linux dynamic keyboard layout switching is not working ===
=== Linux dynamic keyboard layout switching is not working ===


* Plover does not handle dynamic keyboard layout switching: see [https://github.com/openstenoproject/plover/issues/298 bug #298].
* Plover does not handle dynamic keyboard layout switching: see [https://github.com/openstenoproject/plover/issues/298 bug #298].<span id="delayedslow-output-when-using-gnome-shell-and-the-keyboard-machine"></span>
 
<span id="delayedslow-output-when-using-gnome-shell-and-the-keyboard-machine"></span>
=== Delayed/slow output when using gnome-shell and the keyboard machine ===
=== Delayed/slow output when using gnome-shell and the keyboard machine ===


* It’s a gnome-shell [https://github.com/openstenoproject/plover/issues/1030 bug], unfortunately there’s no known workaround.
* It’s a gnome-shell [https://github.com/openstenoproject/plover/issues/1030 bug], unfortunately there’s no known workaround.

Revision as of 22:25, 5 February 2024

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.


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:

  1. Confirm your keyboard or steno machine is plugged into your computer.
  2. 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).
  3. 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 the error message Exception: Enable access for assistive devices.
    • From the Catalina version of macOS, you may need to enable both the Plover app and the env 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:

      1. 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.

      2. 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.

      3. 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
      4. 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 becomes AHT or AT).

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.