This page is laid out for easy navigation via JAWS:
- Use h to jump from section to section.
- Use Tab to move among links for
different script versions. JAWSKey+F7 should also provide
a list of these links.
Resources for Tween and OpenTween users, besides the JAWS scripts described below, are listed in a separate
Tween Resources document on this site.
These scripts support both Tween and OpenTween, from now on collectively referred to as Tween unless
differentiation is necessary.
As of August, 2016, the scripts focus primarily on OpenTween.
Documentation of script usage and features can be viewed by typing
Insert+F1 twice in quick succession from within either application
while these scripts are running.
This script version is dynamic, meaning that updates to it will be made
"in place." Newer revisions will replace older ones, and I will add
change notes to this section as changes are made.
Here are the changes in this version, most recent first.
In JAWS, use the h or 3 keys to move through
changes by release date, or Tab to jump straight to the
Revision 213, released January 17, 2020
- Key sequences consisting of [ followed by a digit will read corresponding columns from the focused tweet list: [ 1 reads the first column, [ 2 the second, etc. [ 0 reads column
10 if that many columns exist.
The name of the column is announced before the column value. When a column's name includes a sort indicator icon, the icon's "triangle" description is omitted for brevity.
Finally, when the Date column value consists of two numeric subparts separated by a single space, the scripts insert a comma between the parts to make the distinction between date and time more obvious.
Note that it is normal for a column (usually column 1) to say nothing, because both name and value are empty or graphic.
- The scripts try to move the mouse off the menu bar area when the application receives focus, because hovering the mouse over that area activates the menus.
- Insert+b, pressed twice quickly, virtualizes the current screen (intended for user profile screens) even if a menu is active.
This is now allowed over an active menu because, on one occasion, this script author encountered a situation where OpenTween reported a menu to remain active until the application was closed and restarted, thus disabling the
virtualization feature until an application restart.
- Insert+b processing may be slightly faster.
- Added the [ g sequence for directly rendering a specific webpage by its URL into a JAWS virtual view.
- Removed a beep sometimes heard during at least collection of tabs for [ t.
- Fixed an HTML processing issue or two in the code that displays web material in a JAWS virtual view.
- In a virtual webpage view, LI tags appear as asterisks.
This is of course imperfect though, because this means that items in ordered lists (OL tags) appear as asterisks as well rather than as numbers.
- The commands for reading long tweets support two more services: Instagram, and Amanda Rush's arush.io site.
- A few updates to the user guide are included.
Revision 196, released August 21, 2019
- A beep produced on tweets fixed by the previous release is removed. This beep was present during script testing in order to verify successful evasion of tweet truncation, but the beep inadvertently remained in the release.
- [ Shift+d is enhanced to include links in the virtualization of the current tweet. Pressing Enter on such a link will attempt to render the page referred to in a JAWS virtual view, permitting quick
reading of many pages without opening a browser.
See the Browserless Web Page Review section of the script user guide for details and caveats.
Revision 186, released July 2, 2019
- For tweets that begin with a very large number of mentions (e.g., 40), which can make the length of the tweet exceed an internal item name length limit in JAWS, the scripts make arrows read the entire tweet.
This applies whether or not the condense-mentions feature is turned on.
(Of course, such tweets are what made me write the condense-mentions feature in the first place.)
For the curious, I was made to notice the JAWS buffer length limit issue on July 1, 2019, when reading a conversation in which most tweets began with 50 mentions each.
Revision 182, released June 19, 2019
- There is a new setting in Quick Settings (JAWSKey+V) for toggling on and off the automatic announcement of changes to the OpenTween status line as they occur.
These usually consist of refresh notices and error messages, such as when a tweet is blocked or protected and cannot be displayed.
This setting is on by default but can now be turned off.
Revision 178, released June 10, 2019
- The JAWS Quick Settings command, JAWSKey+V, includes Tween-specific settings.
- [ b reads the tweet to which the current tweet refers.
This could be a quoted tweet or a tweet to which the current tweet is a reply.
- There are three new commands for handling instant access to long tweets
(currently Twishort and TwitLonger are supported):
A few notes:
- [ l reads the full text of the long tweet.
- [ Shift+l displays the long tweet in a JAWS virtual buffer.
Use arrows and/or the JAWS
SayAll command, JAWSKey+a, to read the tweet text. Press Esc when finished to return to the application.
- [ Ctrl+l launches the website containing the long tweet by activating the relevant link in the OpenTween Details area.
- The format of the long tweet text may not be identical to the format presented on its host website.
- Depending on your Internet connection speed and reliability, retrieving the text of a long tweet may pause JAWS for a few seconds. On a good connection though, the pause should be very brief.
- At this writing, the retrieval of very long tweet text has only been tested under JAWS 2019. If an older version of JAWS struggles with announcing a long block of text all at once with [ l, try using [
Shift+l and then the JAWS
SayAll command, JAWSKey+a, instead. Press Esc when done reading in this way.
Revision 163, released June 2, 2019
- The minimum supported JAWS version is now 14.0 rather than 11.0.
- Vertically long (often poetic) tweets are no longer cut short when read by Insert+b or [ d or via navigation when tweets are being read from the detail area.
The [ Shift+d virtual view of the Detail area is also complete now for such tweets.
- When a Profile screen is in focus, Ctrl+Tab and Ctrl+Shift+Tab move focus among the last-focused Profile field, the Bio area, and the Latest Post area. This facilitates review of Bio and Latest Post
areas and allows link activation within them via Space or Enter.
- [ e reads the last error message or Twitter action result from the status line.
- If focus lands on the main window while it is disabled due to another popup dialog, focus is placed on the dialog. This can happen when a focus hotkey is set and used to focus OpenTween while a dialog, such as a user
profile, is open.
- Space is again silent when it is used to read tweets. This broke in either OpenTween 2.2.0 or JAWS 2019.
- A few scripts that were missing help text for Keyboard Help mode now have it.
- Less verbiage as focus moves between tweet lists in some cases.
- Possibly faster response in the post edit box.
- Possibly better reading of edit controls in some dialogs with Insert+B.
- Source code to the scripts is no longer included. See my Script Distribution Policy document for details.
Revision 141, released August 4, 2018
- The key for toggling use of the Detail area when reading tweets with arrows, formerly F2, is now the sequence [ r.
- The sequence [ m toggles on/off a new feature that condenses strings of mentions into just a mention count. This is very handy in Twitter conversations involving many people.
- The above two settings survive across JAWS and system restarts rather than requiring users to reset them manually.
Revision 134, released July 16, 2018
- The installer version is reverted to the older one in an effort to help those for whom the newer one bothered antivirus software.
- The installer tries drives D and E along with C when trying to find the JAWS executable but not permitted to read the Windows registry.
- A couple minor installer language and comment cleanups.
- More cleanup of HTML entities supported when reading tweets.
Revision 116, released September 5, 2017
- The scripts can install under JAWS 2018 beta and should also install under JAWS 2018 when it is officially released.
- In the installer, failure to find any JAWS versions results in a log display.
- Space is silenced in lists so it can be used more efficiently to read unread tweets across all buffers.
- Users who need to change the Command key, the left bracket ([) by default, may do so by typing Command JAWSKey+C.
- The sound played on key layer exit is much quieter.
- HTML in messages should no longer be removed on reading or displaying the details area for a tweet.
- There may be a slight speed improvement in Braille support.
Revision 107, released October 27, 2016
- F2 toggles on/off a new feature that makes JAWS read tweets in tweet buffers from the Details
area rather than from the tweet list. This causes DM direction (to/from) and other information to speak that
is usually missed, at the expense of a slight decrease in performance on each arrow.
At this time, this setting is not saved across JAWS restarts; you will have to press F2 after
restarting JAWS to turn the feature on again.
- [ t brings up a list of tabs for selection by incremental search. This makes it very fast to
find a tab when many are open. This also works for the tabs in the Events screen.
Revision 98, released September 18, 2016
- The scripts have now been tested against OpenTween 1.3.3 and 1.3.4.
- [ a announces, when available, the remaining and total API calls that apply to the current tab.
- Field hints displayed on Settings pages speak after the field, like JAWS tutor text would do.
- Many Settings page fields for setting fonts and colors are more usable.
- The dialog for building filter rule sets is made more accessible.
- The Profile screen virtualization (double Ins+B) is slightly reorganized to improve readability.
- The user guide includes more tips for general usage, including guidance on configuring Tween/OpenTween
for maximum efficiency with JAWS.
- There are improvements in the handling of TreeView controls.
- Fix: Tab counts on [ w are correct where they sometimes were not.
- Fix: Ins+B reports the correct information after a switch among Settings pages.
Revision 66, released August 17, 2016
This is a very major script update and replaces all previous support for Tween with new scripts for Tween and
OpenTween. The following change list is far from comprehensive and is only meant to assist those who used the
previous (2015) scripts for Tween. For full details on this release, consult the
JAWS Scripts For Tween and OpenTween users guide.
Changes affecting users of the original Tween scripts:
- This revision drops support for JAWS versions older than the latest update to JAWS 11, in order to support
advances in the JAWS scripting language.
- OpenTween is now supported along with Tween.
- Ins+T includes the name of the active tweet list when focus is in one.
- Ins+Tab announces, and Braille shows, the number of characters remaining during tweet
and DM composition.
- The installer is now Nullsoft rather than Inno Setup, and there is now a script uninstaller.
- The Ctrl+Shift+D command for focusing the tweet detail area is changed to the key sequence
[ Ctrl+D but is likely to be far less often necessary.
- The key sequence [ d reads the twee detail area without changing focus, and the sequence [
Shift+D places the material in a JAWS virtual buffer for more thorough review, copying portions to
- Tween.jcf is no longer replaced when the scripts are installed. This means that any custom configuration
changes set up by the user or by previous Tween scripts, such as a customized reading of tweet list items,
will not be changed by updating these scripts.
- These scripts no longer customize the presentation of tweets. Users may accomplish this through JAWS'
Customize ListView utility. As just mentioned though, if you used the previous version of these scripts, the
customizations established then will remain in effect.
To apply the customizations from the original scripts manually without using the JAWS Customize ListView utility,
place the following in tween.jcf in your JAWS user folder:
Revision 12, released June 11, 2015
Ctrl+Shift+D moves focus to an HTML area containing the tweet.
This is useful for the form of retweets in which the original
tweet text is not present but is replaced with a link to the original
At least in OpenTween, this material can also be viewed natively via the g and Ctrl+E commands.
Ins+Q includes the revision number of the Tween scripts, to
ease verification of correct script installation.
Revision 7, released September 9, 2012
This is the first public release of these scripts. Features included:
- Typing a tweet no longer causes excessive extra speech on each
- The tweet list reads less information on each arrow key.
- Insert+F1 brings up the script documentation.
Download: Version 1.0 executable installer (can also open with 7Zip)