Skip to content

Quick navigation to font attributes #9527

@LeonarddeR

Description

@LeonarddeR

Initially suggested in #4684 (comment)

Is your feature request related to a problem? Please describe.

As a blind user, it is pretty difficult to analyse the formatting of text in an efficient way. If you really want to be sure that the layout of a document is correct, you either need to do one out of several options:

  1. Read the whole document with all relevant NVDA's document formatting settings enabled
  2. Convert the document to a format that exposes certain attributes using code, such as html or mark down, and assess the results. This most likely doesn't include several MS Word specific attributes, such as style.
  3. Ask a sighted user to do a final assessment of the document.
  4. Use something like the JAWS Text analyser

Describe the solution you'd like

I would propose a separate layer of quick navigation keys that, instead of moving to elements in a document, moves to text in the document with a specific attribute. For example

Key Attribute\
a alignment change
b bold
c color change
d any change in formatting with the current text
e emphasis
f font name change
i italic
l line spacing
n Underline change (i.e. underline when current text is non-underlineand vise versa)
s different font size
t Italic change(i.e. italic when current text is non-italic and vise versa)
u underlined text
w weight change (i.e. if the current text is bold, move to non-bold and vise versa
y style change

This layer could be enabled by enabling browse mode with NVDA+Space. The single letter navigation toggle (shift+NVDA+space) could be changed to cycle between content quick navigation, layout quick navigation and quick navigation off.

Quick tests revealed that implementing this shouldn't be at all difficult for MS Word using UIA. Having said that, I think it should be possible to implement this for most if not all textInfo implementations that expose formatting information. However, it is most likely that performance can be a real culprit here.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions