diff --git a/news.d/bugfix/1663.core.md b/news.d/bugfix/1663.core.md new file mode 100644 index 000000000..858383568 --- /dev/null +++ b/news.d/bugfix/1663.core.md @@ -0,0 +1 @@ +Fix possible issue of plover assuming a different keymap than is actually set for the device and outputting empty translations of unmapped characters after dis- and reconnecting a machine diff --git a/plover/engine.py b/plover/engine.py index cc83c5259..74a8d4b52 100644 --- a/plover/engine.py +++ b/plover/engine.py @@ -241,6 +241,8 @@ def _update(self, config_update=None, full=False, reset_machine=False): self._machine_params = machine_params update_keymap = True start_machine = True + # initialize keyboard emulation again to force update of keymap + self._keyboard_emulation.__init__() elif self._machine is not None: update_keymap = 'system_keymap' in config_update if update_keymap: