ListTbl Users Guide
Doug Lee
Last Revised July, 2024
This short document explains how to use the ListTbl scripts for
navigating supported controls with JAWS in any application.
These scripts require JAWS version 2019 or later.
Table of Contents
What Is ListTbl?
These scripts make standard HTML table navigation commands
(Ctrl+Alt with arrows, Home, End,
etc.) apply to various types of controls.
This facilitates scanning down columns other than column 1
without having to type numerous or difficult key sequences.
There are also a few added commands for clicking cells and column
headers without having to use the JAWS cursor.
The JAWS Table Layer commands also work on supported controls.
The types of controls supported by these scripts are
- ListView controls such as are found in Windows Explorer and many applications.
- The Windows 10+ Task Manager lists in the various tabs, including the TreeView controls in the Processes
and Users tabs,
and App History and Startup Apps tabs in Windows 11.
Script Installation Instructions
To install these scripts on a new system:
- Load JAWS if this has not already been done. This will require
administrative privileges on the computer.
- Run JAWS as the user for whom the scripts are to be installed.
This and the following steps must be performed for each user of the computer
who will be using JAWS with these scripts.
- Download and run, or run directly, the installer for these scripts; and follow the on-screen
directions. Be sure to install the scripts in the currently running
JAWS version if a JAWS version list is presented.
Commands and Features
The primary feature of these scripts is to make the standard JAWS
table navigation commands work in supported controls. This works in all
supported JAWS keyboard layouts and uses the same keystrokes in each
as appear in HTML environments.
The Table Layer commands also work on supported controls.
In addition to the standard table navigation commands though, these
scripts add a few commands for left-clicking and right-clicking
"cells" and column headers in supported controls. These added commands work
only in supported controls and do not carry over to HTML environments.
The following table lists the available functions with the commands
for each supported keyboard layout:
Added Click Support Commands
Function |
Common/Desktop Layout |
Laptop and Classic Laptop Layouts |
Kinesis Layout |
Table Layer |
Description |
Left-click cell |
Ctrl+Alt+NumPad / |
Ctrl+Alt+8 |
Ctrl+Alt+I |
NumPad / |
Left-clicks The Current Cell In The ListView. |
Right-click cell |
Ctrl+Alt+NumPad * |
Ctrl+Alt+9 |
Ctrl+Alt+O |
NumPad * |
Right-clicks The Current Cell In The ListView. |
Left-click header |
Ctrl+Shift+Alt+NumPad / |
Ctrl+Shift+Alt+8 |
Ctrl+Shift+Alt+I |
Shift+NumPad / |
Left-clicks The Column Header Above The Current Cell In The ListView. |
Right-click header |
Ctrl+Shift+Alt+NumPad * |
Ctrl+Shift+Alt+9 |
Ctrl+Shift+Alt+O |
Shift+NumPad * |
Right-clicks The Column Header Above The Current Cell In The ListView. |
Note:
Though standard JAWS Table Layer commands do not exit the Table Layer, the above Table Layer commands will do
so. This is because clicking cells and headers usually causes new or reorganized screens to appear, whereas
the standard JAWS Table Layer commands simply navigate among cells.
As a side effect, it will be necessary to use commands outside of the Table Layer in order to double-click
cells.
Usage Examples
In the following examples, the Common/Desktop layout is assumed. For
other layouts or the Table Layer, substitute appropriate keystrokes as necessary.
ListTbl usage examples
Task |
Action(s) |
Read each cell in the current row with its header. |
Use Ctrl+Alt+Right to move one cell at a time to the
right across the row, Ctrl+Alt+Left to move left, and
Ctrl+Alt+NumPad 5 to announce the current cell with header
and position information..
The normal JAWS ListView commands for reading cells
(JAWSKey+Ctrl+1-9/0) also work for ListView controls but do not provide a means
for examining more than the first ten columns of a wide list.
These native JAWS commands also will not work in Windows 10+ Task Manager TreeView controls unless JAWS begins natively to support this.
|
Find the largest file in a Windows Explorer file list |
Either use Ctrl+Alt+Left/right to move to the Size
column and then scan through sizes manually with
Ctrl+Alt+Up/down, or
- Find the Size column using Ctrl+Alt+Left/right.
- Left-click the Size column header twice with
Ctrl+Shift+Alt+NumPad /, once to sort the list by ascending
size, and once to reverse the sort and place the largest file at the
top of the list.
- Use any desired means to move to the top row, a good one being
Ctrl+Alt+Home to move to column 1 of the top row.
|
Find out which process is using the most CPU time. |
In the Processes tab of the Task Manager, sort the list by CPU,
just as was done for Size in the previous example; then check the top
row. The same approach also works for finding the process that is
consuming the most memory. Beware, though, that this list is very
dynamic when sorted by CPU or memory usage and can reorder frequently
as process resource utilization changes.
|
Add or remove columns in Windows Explorer file lists (Windows 7 and older) |
From any row, type Ctrl+Shift+Alt+NumPad * to
right-click a column header. In the Context menu that appears,
column names appear, checked if displayed and not checked if not
displayed. Press Enter on a checked column to remove it or
on an unchecked column to add it.
|
Revision History
Here is the revision history of these scripts, most recent revision first.
Note that revision numbers for these scripts are artificially high because these scripts were initially part of BX.
Revision 2396, released July 18, 2024
- The minimum supported JAWS version is raised from 15.0 to 2019.
- Some support for old JAWS versions is removed for efficiency.
- Windows 11 Task Manager Processes and Users tabs are again supported, as are
the App History and Startup Apps tabs.
- An accidental debug code line that could cause JAWS to say "fail2" during navigation of a Windows 10+
Task Manager grid is removed.
- Old history entries in this document section are now hidden inside a
details
tag
that may be expanded to show them. Among the benefits of this, heading count is reduced and text searches won't
match very old material.
Translators: No changes required since the previous revision.
Revision 2392, released July 10, 2023
- The UIA support is refactored significantly and updated to account for recent increases in JAWS' UIA support.
A JAWS restart after installing this script update is recommended, though not required.
This refactor is being applied to several projects.
Users who use several of this author's script sets may notice a slight reduction in JAWS' memory consumption as
these updates progress.
- The installer and uninstaller more carefully check for errors while updating
.ini
-style files.
Revision 2387, released September 08, 2020
- The table commands supported for ListView controls in these scripts also work in Windows 10+ Task Manager tree controls for Processes and Users tabs.
They already worked in the lists under other tabs.
The commands for clicking cells and headers also work in the Windows 10+ Task Manager.
- The minimum JAWS version is changed from 14.0 to 15.0 to better support UIA as required for the above feature.
- A rare condition was fixed in which information for a list could be "remembered" for too long and reported in place of current information.
Technical information on this multi-project fix appears in
The JAWS Script Cache Life Cycle (CLC) Bug and Resolution.
- The release history is now part of the manual rather than being in a separate file/page.
- Keystroke names in this document are more consistent, and there are other minor documentation improvements,
including how well screen readers respond to activation of links in this document.
- The installer contains version and product information visible from the Details tab in Windows Explorer, to better identify its contents. This update is being applied to all projects.
- A "directives" text file is included that provides information on how to install this set of scripts manually.
See "Handling Directives Files" in the "Common Script Elements" document for further information.
- Source code to the scripts is no longer included. See my Script Distribution Policy document for details. As one side effect, this will cause installation to run somewhat faster.
- The messages for these scripts are now distributed in XML files so that translators can create translations with no need for script source recompilation.
See the Script Translation Procedure document for details on how to translate these scripts, including how to update the XML message file.
Revision 2119, April 9, 2019
- JAWS 14.0 or later now required (changed from 11.0 because of a performance update that only works starting in JAWS 14).
- Installer built with older, safer NSIS version.
- Installer language updates.
- JAWSUtil guesses drives D and E along with C when seeking the JAWS executable while unable to read the Windows registry.
5 older revisions back through January 7, 2014
Revision 1878, September 11, 2017
- This update fixes a beep on Ctrl+Alt+Up and Ctrl+Alt+Down in some cases and adds installer support for JAWS 2018.
Revision 1691, July 22, 2016
- This update just prevents the script installer from installing into a JAWS version that has default scripts
with no provided source code. This usually indicates a script set that is commercial and that does not support
script chain management.
For those who attempted installation of these scripts prior to this update and who are having problems using
JAWS as a result:
- Run the uninstaller for these scripts.
- Rename
default.jkm
in the JAWS user folder, then restart JAWS.
The JAWS user folder can be opened via Start, All Programs, JAWS <your JAWS version>, Explore JAWS,
Explore My Settings.
This step should make JAWS commands work as expected if they did not.
If you do not see a default.jkm
file, skip this step.
- Reinstall the commercial scripts that were present before you attempted to install these scripts.
Revision 1689, July 19, 2016
- The installer name for this script set is changed.
- Script source code is distributed starting with this revision and is compiled during installation.
- default.jkm is updated by the installer instead of by the autoStartEvent in the scripts.
This should avoid a possible minor delay on JAWS start.
- The JAWS Table Layer, introduced in JAWS 13, is supported for supported controls.
- The user guide for these scripts is updated and is placed in the script folder alongside the scripts
themselves.
Revision 1600, January 19, 2016
- This update fixes installer issues for JAWS 17 and includes minor code updates acquired from other projects
over the previous two years.
- A note on the revision number: Shortly after the publication of this ListTbl script set in January of 2014, I
chose to incorporate ListTbl into a set of files for another project. They are still managed that way, and so
the revision number reflects modifications made to files that are not related to ListTbl; hence the huge jump
in revision number.
Revision 57, January 7, 2014
- This is the first release of these scripts.