[gui-talk] EdSharp Version 3.0 is now Available

Steve Pattison srp at internode.on.net
Tue Mar 3 23:13:05 UTC 2009


EdSharp version 3.0 is now available and a direct link to the file is at www.empowermentzone.com/edsetup.exe.  For those people not familiar with EdSharp it is a very powerful text editor designed to work with screen readers.  Here are the changes in this version:

Version 3.0
March 3, 2009

When saving text to a file, EdSharp now checks whether any character has a Unicode number greater than 255, which means that more than one byte is needed to represent it.  If so, the file is saved with a UTF-8 encoding, the most common form of Unicode for storing files on disk.  Otherwise, the default encoding of the computer is used, e.g., Latin 1.

Several enhancements are designed to increase the efficiency of managing indentation with a screen reader.  The need is motivated by coding in the Python language.  Although a friendly language in other ways, its "significant white space requirement" is inherently challenging to nonvisual users.  Indentation is a recommended style in most programming languages, but in Python, it is required for the code to run.  Other languages, moreover, often have utilities for automatically reformatting code according to common conventions.  In Python, a change in indentation denotes the end of a code block rather than a keyword like EndIf, or a } symbol.  Thus, when reading normally by line with a screen reader, the structure of code is not indicated.  Instead, one often has to check the indentation to clarify logical understanding.

The EdSharp commands to find a matching right brace, left brace, or to check brace balance have been reassigned from key combinations with the B key to ones with bracket keys:  Control+Shift+RightBracket, Control+Shift+LeftBracket, and Alt+Shift+RightBracket, respectively.  To eliminate key conflicts, the EdSharp installer includes a checkbox to remove previous settings, which is checked by default.

You can now press Control+B to go to the next code block, or Control+Shift+B to go to the previous one.  A block is defined as lines with the same or greater indentation/nesting.  Control+I and Control+Shift+I have a similar purpose, but they move to the next or previous change in indentation, so they stop at nested blocks.  EdSharp skips blank or commented lines with these commands.  

Thus, Control+I will stop at a nested block, whereas Control+B will not, since it continues past lines with greater indentation.  For example, if the cursor is inside a loop block, then Control+I will go to the line at the closing of the loop where a lower level of indentation resumes.  In Ruby, this would be the line with the word "end".  In Python, it would be the first line of code following the loop, since the change in indentation, itself, indicates the end of the loop.  

The related query commands, Alt+B and Alt+I, help you understand code groupings without moving the cursor.  They are examples of a new EdSharp feature where a key can have an alternate action if pressed twice in a row without moving the cursor.  Alt+B says the rest of the current block, beginning at the current line.  When toggled with a second press, it says the whole block, including lines prior to the current one, if any.  Alt+I says the indentation level of the current line.  When toggled, it reads the text of the preceding line with less indentation, which is typically the statement that introduced the current block, e.g., an if, for, or while statement.  These commands are best learned by experimenting with familiar code.

Use the Infer Indent command, Alt+RightBracket, to hear what indent unit the current document seems to be using.  EdSharp looks at the first line that starts with a space or tab character.  If this key is pressed again without moving the cursor, that sequence of space or tab characters is configured as EdSharp's IndentUnit setting.  This makes it easy to use the same indentation style as a file you have opened.

Other keys with alternate actions spell a message when pressed a second time.  These include Say Open Windows (Shift+F4), Selected Text (Shift+Space), Chunk (Shift+Backspace), Path (Alt+P), and Clipboard (Alt+Apostrophe).

Regards Steve
Email:  srp at internode.on.net
Windows Live Messenger:  internetuser383 at hotmail.com
Skype:  steve1963


More information about the GUI-Talk mailing list