Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion

Ctrl+Left Arrow and Ctrl+Right Arrow issue

A customer reported this:

//---------------------------------------------------------------------------

I am blind and use a screen reader jaws. When moving by word control+left arrow or control + right arrow, the cursor will not jump to a symbol if it is the next word causing it not to be read.

Example:

if A > B;

1.       Press control+right arrow (next word).

2.       The cursor jumps to A from the I in if

3.       Press control+right arrow again and it does not jump to the greater than sign, it jumps to b.

This causes the greater than sign not to be read by the screen reader because the end of the word is considered to be the space after ‘A’.

Let me know if this issue is addressed and I will purchase and use the product, otherwise, please remove me from your mailing list as the software is useless to me in its present state.

I would note that this is the only editor that I have ever used that behaves like this.

Great product otherwise!

//---------------------------------------------------------------------------

How can I address this? I think it should work like he suggests. I tried his example (using "if A > B;") in Microsoft Word and in another text editor and it worked as he stated... shouldn't SyntaxEdit work the same way when using Ctrl+Left Arrow and Ctrl+Right Arrow? Can this be addressed?

Thanks!

Comments

  • 8 Comments sorted by Votes Date Added
  • Hi,

    Try it in Delphi code editor :)
  • edited October 2013 Posts: 177Vote Up0Vote Down
    I tried it and it seems to work like SyntaxEdit... but is there a way to make SyntaxEdit work like Microsoft Word, EmEditor, and other programs that work better with screen readers?

    I also tried it with Notepad and it works similar to Word but not exactly as the cursor does not stop before the ';', but even this would be an improvement for users using screen readers.

    Perhaps a simply option that one can specify some additional places/characters to stop before, like '>' and ';'.
  • Word and Notepad are general text editors, while syntax-edit is a code oriented editor. Thus, it works like Delphi code editor. 
    However, there exist a possibility to customize this feature slightly: WordSeparators property. 

    I don't know how screen readers work, but they proabably should be consistent with standard Windows EDIT (TEdit, TMemo, as well as Notepad, ect). It splits words using whitespace only; so, for example: "5 + 3" will be tree distinct words, but "5+3" - will be single word (this is of course different from how it works in Word).
  • edited October 2013 Posts: 177Vote Up0Vote Down
    Hello,

    Using this test text again: if A > B;

    I checked WordSeparators and intuitively one would think there would be more words if there are more characters in WordSeparators, but when I REMOVED '>', it started working as desired, stopping before the '>' character. I could not get it to stop before the ';' character, where ';' was a word separator or not.

    If '>' and ';' are word separator characters, then shouldn't the cursor stop before any word separator character when using Ctrl+Left Arrow or Ctrl+Right Arrow?

    Strings of word separator characters (excluding whitespace) should probably be considered "words" though because you wouldn't want to stop before every ';' character in a string like ";;;;;;;;;".

    So perhaps something is wrong with how word separation works, because I would think that if '>' and ';' are word separator characters, then when skipping words with "if A > B;", the cursor would stop before the '>' character and before the ';' character because those characters are word separator characters.
  • I could not get it to stop before the ';' character, where ';' was a word separator or not.

    Strange about ';' symbol, I'll look...

    would be more words if there are more characters in WordSeparators

    Word separators are characters, which (additionally to classical whitespace) are treated as something BETWEEN words.

    Strings of word separator characters (excluding whitespace) should probably be considered "words" though because you wouldn't want to stop before every ';' character in a string like ";;;;;;;;;".

    Yes, and this should work.
  • Hi, again :)

    I've checked symbol ';'. So, I see no issues. If its not in word separators, it treated as a part of word. JUST LIKE in notepad. So, fort example "abc;" will be one word, but "abc ;" - will be two, because there is a space between "abc" and ";".
  • OK, it makes more sense if you look at the word separator characters as something BETWEEN words, like whitespace, and not as words themselves.

    Perhaps the solution would be an option to treat the word separator characters as words themselves, instead of what's between words, so any string of consecutive word separator characters would be navigated as if it was a real word, and if there are letters followed by a word separator then it's two words. So "abc;" would result in "abc" as a word and ";" as the following word so the cursor should stop in front of each word during navigation. In this case, whitespace and newlines would still be treated as what's BETWEEN words.

    But I suppose this is more work than you want to do and it affects very few people. I think it would be nice to have though, but not as nice as http://forum.lmd.de/discussion/378/simple-but-extremely-useful-feature-request#Item_1
Sign In or Register to comment.