Tween is a mainstream Twitter app that happens to be accessible to users who are blind. OpenTween is a newer and open-source version (or "fork") of Tween. OpenTween can be found at https://en.osdn.jp/projects/opentween/, and the original Tween can be obtained from https://sites.google.com/site/tweentwitterclient//en/.
Tween (and thus OpenTween) was originally developed in Japanese, and its documentation appears to have been translated to English using automatic translation services, which impairs readability in English. The purpose of this page is to provide resources for blind Tween users to make using the programs easier.
There are JAWS scripts for Tween and OpenTween on this site. As of August, 2016, these scripts focus more directly on OpenTween. This site also includes an NVDA add-on for OpenTween updated for Python 2019.3 and later (Python 3).
There is a Tween AppModule for NVDA, a version of Peter Vagner's module for enhancing ListView control support, modified by Tyler Spivey to add functionality for Tween. To use, download that Zip file and unpack it into the AppModules folder in NVDA's user configuration directory. The zip file contains one file, tween.py. This module may be part of NVDA itself by now though and thus not require installation.
This section and its subsections are written based on OpenTween 1.3.2. Some keystrokes and functionality may not apply identically in other OpenTween versions or in Tween. Any entries containing three question marks (???) need further clarification. The commands and functionality described in these subsections apply regardless of screen reader.
|Space in a tweet list
|Jump to the next unread tweet in the current buffer. If there are none, move to the first unread tweet in the next buffer with unread tweets. If there are none, move to the last tweet in the Recents tab.
|Space when typed as the first character in the posting area
|Focus the currently active tweet list (tab) and perform the same action as for Space typed in that list.
|Down or j and Up or k in a tweet list
|Move to the next or previous tweet in the current list.
|Shift+J and Shift+K in a tweet list
|Ctrl+J and Ctrl+K in a tweet list
|Ctrl+Shift+J and Ctrl+Shift+K in a tweet list
|Home and End or Shift+G in a tweet list
|Move to the first or last tweet in the current list.
|[ and ]
|Move forward and backward through the chain of replies (the thread). This avoids encountering tweets unrelated to a conversation but will often miss relevant tweets, such as when one person sends three replies to one tweet.
|Right and n or Left and p
|Move to the next or previous tweet that might be part of the current thread or conversation. This may encounter tweets unrelated to the conversation but should not miss relevant tweets.
|Shift+Right and Shift+N or Shift+Left and Shift+P
|Move to the next or previous favorited tweet in the current list.
|h and l in a tweet list
|Move to previous or next tweet by the same user as the current one.
|Alt+Left and Alt+Right
|Move to the previous or next tab containing the current tweet and place focus on that tweet in the newly selected tab. These commands do not cycle; use Alt+Left to check tabs left of the current one and Alt+Right to check higher-numbered tabs.
|Put related tweets in a new tab. This includes only related tweets prior to, not after the current one.
| Open URL in Tween. In OpenTween, also lists users mentioned, hash tags, and multiple URLs when present, for selection and also includes the quoted tweet when applicable. Pressing Enter on a line in this list has the following effects depending on the contents of the line:
|Move to the anchor???
|Shift+H, Shift+M, and Shift+L in a tweet list
|Move to the top, middle, or bottom tweet in the displayed portion of the list.
|z and Shift+Z
|Scroll the current tweet to the top or bottom of the display area???
|Open a dialog for finding the next tweet by matching text. Includes support for case-sensitive and case-insensitive searches.
|F3 and Shift+F3
|Find the next or previous tweet in the current buffer matching the last search entered via Ctrl+F. Opens the Ctrl+F dialog if not yet opened since the application was launched.
|Open in a dialog the tweet to which the current tweet is a reply.
|Ctrl+Tab and Ctrl+Shift+Tab
|Cycle among buffers (tweet lists). Ctrl+n and Ctrl+P do the same thing but appear to be undocumented.
|Jump to standard tabs: recents (home), replies (mentions), messages (DM), favorites.
|Jump to user-created tabs where applicable.
|Jump to the last available tab.
|Esc or Ctrl+W
|Close the current tab if possible. Standard tabs may not be closed, and protected tabs may not be closed without being unprotected first. Use "Protect Tab" in the Tab menu (Alt+T p) to toggle protection of user-defined tabs.
|Reply to the current tweet (by default but can be changed at least in OpenTween).
|Send a direct message (DM) to the current tweet's poster.
|Reply to the current tweet's poster (send a mention). Warning: Sends a mention, not a DM, if used on a DM in at least OpenTween 1.3.2, despite documentation to the contrary.
|Reply to the current tweet's poster and mention all others mentioned in the tweet. Warning: Sends a mention, not a DM, if used on a DM in at least OpenTween 1.3.2, despite documentation to the contrary.
|Retweet (RT) without comment (new style).
|RT with comment (old style). Ctrl+Q is usually better nowadays.
|Quote the current tweet. This simply includes an URL pointing to the tweet and leaves you much more space to type a comment.
|Ctrl+L in the posting area
|Shorten the selected URL. Must select the URL first. Warning: Do not simply select the entire input area, particularly if it contains multiple URLs. Attempting this in at least OpenTween 1.3.2 with text including multiple URLs selected can produce an error message in the application.
|Ctrl+Up/Down in the posting area
|Scroll up and down among recently posted tweets.
|Toggle multi-line mode for the posting area.
|Open a dialog for posting an image along with a tweet.
|i from a tweet list
|Move focus to the posting edit (input) box. Tab accomplishes the same thing.
|Copy the full tweet text including the URL pointing to the tweet on twitter.com.
|Copy only the Twitter URL for the current tweet.
|Copy the Twitter user handle for the current tweet.
|Open the current tweet poster's timeline as a tab.
|Open any user's timeline. There are other useful options in the Command (Alt+C) menu.
|Open the user profile for the current tweet's poster.
|Open the Twitter page for the user who posted the current tweet.
|Open the favorites page for the user who posted the current tweet. Requires logging into twitter.com.
|Open the page for the current tweet on twitter.com.
|Open this poster's Favstar Recents page.
|Open a help page. For OpenTween, this opens the OpenTween Wiki front page.
|Favorite the currently selected tweet or tweets.
|Unfavorite the currently selected tweet or tweets (deletes from the Favorites tab).
|Edit conditions defining which tweets to place in the current tab. This applies to search tabs.
|Select all tweets in the current buffer.
|Mark the selected tweet or tweets as read. To mark all tweets in the current buffer as read, type Ctrl+A and then Ctrl+B.
|Mark the selected tweet or tweets as unread.
|Delete a tweet or tweets you have posted. Also deletes from Twitter.
|F5 or r
|Reload/refresh the current tab.
|Shift+F5 or Shift+R
|Pull the next batch of older tweets into the current tab.
|Open the hash tag configuration manager.
|Switch on/off the automatic addition of a hash tag to outgoing tweets.
|Update mentions regardless of which tab is displayed.
|Update direct messages regardless of which tab is displayed.
|Shift+F6 and Shift+F7
|Retrieve the next batch of older mentions and direct messages, respectively, into their respective tabs without regard to which tab is showing.