plover icon indicating copy to clipboard operation
plover copied to clipboard

Do nothing meta {#} breaks multi-stroke words

Open Abkwreu opened this issue 2 years ago • 2 comments

Describe the bug

Sending a stroke defined as {#} (do nothing) between two strokes of a multi-stroke word will break the word.

To Reproduce

  1. Define a multi-stroke word (such as TPAOEUR/PHRAEUS = fireplace)
  2. Define another stroke as {#} (for example KHR = {#})
  3. Send the {#} stroke between two strokes of the multi-stroke word (in this example,TPAOEUR/KHR/PHRAEUS)
  4. Observe that the two strokes do not combine into a single word as expected (in this case, the above sequence produces fire place instead of fireplace as expected).

Operating system

  • Windows 10 with Plover 4.0.0-dev12

Abkwreu avatar Dec 12 '22 19:12 Abkwreu

I think it's intentional. If you really want to do something like that you may want to use some "do nothing macro". e.g. the translation =nothing (but you need to write a macro plugin to support that)

What's it for anyway?

user202729 avatar Dec 13 '22 01:12 user202729

I really don't think it's supposed to, given the translation {#} is literally described as doing nothing. From the dictionary format on the wiki: "For example: a null or canceled stroke, which doesn't affect formatting, doesn't output anything, and cannot be 'undone' with the asterisk key."

Anyways, this is because someone on Discord reported for my modifier dictionary that sending a modifier stroke defined as {#} will break up words.

Abkwreu avatar Dec 13 '22 02:12 Abkwreu