Skip to content

Disable pass1only for liblouis braille output #7301

@LeonarddeR

Description

@LeonarddeR

Note: This issue needs an external fix at the moment, liblouis/liblouis#133 . I opened this issue to document cases why using Liblouis multipass is desired.

Steps to reproduce:

  1. Set braille output table to Dutch (Netherlands)
  2. Open notepad, and type: "1b3d5"

Expected behavior:

Output is: ⠼⠁⠠⠃⠼⠉⠠⠙⠼⠑

Actual behavior:

Output is: ⠼⠁⠃⠼⠉⠙⠼⠑
It is not clear how to read this. It is not possible to see where the numbers end and the letters start. In this example, you may be able to guess that there is a b and a d, not a 2 and a 4. However, In strings like 12cde67hij, you certainly won't be able to see where the letters start.

Technical background

NVDA sends text to the liblouis braille translator using the pass1Only mode flag. From liblouis/liblouis#133:

trace_translate , the general translation function in lou_translateString.c calls translatePass for pass2, 3 and 4. translatePass does currently not update the output positions.

Specifically, this leads to the problem that cursor routing is said to break in NVDA as the braille character to output position mapping is broken. I wasn't able to reproduce this using the example above, though.

CC @josephsl @dkager

Metadata

Metadata

Assignees

No one assigned

    Labels

    blockedbugcomponent/braillep3https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#priority

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions