Most of this applies to the desktop app on Windows, macOS and Linux and to WND Terminal in a browser, which have the same interface.
The two ways to see a screen
The classic screen is the host’s screen as it is: 24 rows of 80 characters (or 27 x 132, 62 x 160 and so on), drawn as text. Keys go to the host exactly as typed, as on any 3270 or 5250 terminal.
Modern view (Ctrl+Shift+M, ⌘⇧M on a Mac) shows the same live screen as a form. Each input field is a real text box with its label, the screen’s title is a heading, menu choices and function keys are buttons, a list is a table with column headings, and the host’s messages are announced. If you use a screen reader, Modern view is the better way to work. See the screen reader section below.
The keyboard
On the host’s screen
On the classic screen the keyboard belongs to the host. Tab and Shift+Tab move between the host’s fields, as people who use mainframes expect.
On a small screen, swipe the table to read all columns.
| Keys | What they do |
|---|---|
| Enter, right Ctrl | Enter |
| F1 to F12, Shift+F1 to F12 | PF1 to PF24 (F1 to F24 on IBM i) |
| Tab, Shift+Tab | Next field, previous field |
| Page Down, Page Up | PF8 and PF7 on a mainframe, Roll Up and Roll Down on IBM i |
| Escape | Reset on a mainframe. Attention on IBM i, or Reset while an error code shows |
| Pause or Ctrl+L | Clear (mainframe) |
| Alt+1, Alt+2, Alt+3 | PA1, PA2, PA3 (mainframe) |
| End | Erase to the end of the field |
| Insert | Insert mode on and off |
| Ctrl+Enter, keypad Enter | Field Exit (IBM i) |
| Ctrl+F9 | Cursor Select, the light pen at the cursor |
Your organization may give you a keyboard map from your old emulator (Keyboard maps in the search palette), which changes some of these.
Ctrl+F6 takes the keyboard off the host’s screen, to the row of session tabs. From there, Tab goes on to the toolbar, and the arrow keys move between tabs. Enter shows a tab, and Delete closes it. Clicking the screen, or Ctrl+1 to Ctrl+9, goes back to a session.
Everywhere
On a small screen, swipe the table to read all columns.
| Keys | What they do |
|---|---|
| Ctrl+K | Search: every command, session and saved connection, by name |
| Ctrl+F6 | The keyboard to the session tabs and toolbar |
| Ctrl+T, Ctrl+W | New tab, close the tab |
| Ctrl+Tab, Ctrl+Shift+Tab | Next tab, previous tab |
| Ctrl+1 to Ctrl+9 | Go to that tab |
| Ctrl+\ | Two sessions side by side |
| Ctrl+Shift+M | Modern view and the classic screen |
| Ctrl+E | Explain this screen |
| Ctrl+Shift+E | Ask WND |
| Ctrl+Shift+H | Send to the help desk |
| Ctrl+C, Ctrl+Shift+C | Copy, copy the list as a table |
| Ctrl+P | Print the screen |
| Ctrl+ +, Ctrl+ −, Ctrl+0 | Bigger screen text, smaller, fit the window |
On a Mac, ⌘ takes the place of Ctrl, except in Ctrl+W, Ctrl+Tab and Ctrl+F6. In a browser, where Ctrl+T and Ctrl+W belong to the browser, use Alt+T and Alt+W, and Alt+Page Down and Alt+Page Up for the next and previous tab.
Every command has a name in the search palette, so anything you would do with the mouse can be found there by typing a few words.
In Modern view
Tab and Shift+Tab move between fields and buttons in screen order. Typing goes into the real field on the host. Enter sends the screen, the function keys work as on the classic screen, and each function key is also a button. Ctrl+Shift+L shows a translated screen in the host’s own words and back (see Screens in your language).
In dialogs
When a dialog opens, the keyboard goes into it. Tab and Shift+Tab stay inside it while it’s open. Escape closes it, and the keyboard goes back to where it was.
Screen readers
WND Terminal’s interface reaches screen readers through the operating system’s accessibility interface, as any app built on the system’s web view does: NVDA, JAWS and Narrator on Windows, VoiceOver on the Mac and Orca on Linux, and the browser’s own in WND Terminal in a browser. WND Terminal’s buttons, menus, dialogs and settings all have names and roles a screen reader can announce.
In Modern view, a screen reader hears a host screen as a form: the title as a heading, each field with its label (and "required" when the host requires it), hints such as "(YYYY-MM-DD)" after a field, menu choices as buttons, lists as tables with column headings, and the host’s messages as they arrive. Error messages are announced at once, other messages when the reader is free.
On the classic screen, the screen is one area that passes keys to the host (an application region, so the screen reader doesn’t take the keys for itself). When the host answers and the keyboard is free again, the screen’s first line and the line the cursor is on are read out, with any keyboard error. To read the rest of the screen, switch the screen reader to its reading mode (NVDA+Space in NVDA, for example) and read it line by line. The host’s screen doesn’t say which text is the label for which field, so the classic screen can’t announce fields by their labels. Modern view works that out.
The status line (connected, encrypted, ready, waiting for the host) is announced when it changes.
When a screen is shown in another language, each translated text carries its language, so the screen reader reads it with the right voice.
Text size and zoom
- The host’s screen. Ctrl+ + and Ctrl+ − make the screen’s text bigger and smaller (up to 64 pixels). Ctrl+0 fits the screen to the window again. Display settings has the same, under Text size. A screen too big for the window scrolls.
- Everything else follows the operating system’s display scaling on the desktop (Windows display scale, macOS and Linux text size). In a browser, the browser’s zoom works up to 400 %. In a narrow window, or zoomed to 200 % and more, the toolbar keeps its icons, the session tabs move to a row of their own, and dialogs taller than the window scroll. Nothing scrolls sideways.
- Modern view fits the window, with labels above their fields when the window is narrow.
Colors and motion
- Appearance is dark, light, or matching the computer, in Display settings.
- Screen colors: Modern, Classic (the IBM 3279 colors) or Light (dark text on white). Auto follows the appearance.
- Shade input fields shows where you can type on the classic screen without relying on the host’s colors.
- WND Terminal’s own text meets a contrast of 4.5 to 1 in dark and light, and the borders of text fields 3 to 1. The host’s screen uses the colors its application asks for, drawn in the chosen screen colors. On the screens we checked they meet 4.5 to 1 too, but a host application can choose colors that don’t.
- Blinking cursor can be turned off. When the computer asks for reduced motion, the cursor and the host’s blinking text don’t blink.
Phones and tablets
The touch layout puts a key bar (Enter, PF keys, Tab and the rest) above the phone’s keyboard. Large touch targets makes keys, buttons and tabs bigger. A pinch zooms the screen, and Bigger and Smaller text in the search palette do the same without a gesture. Both orientations work.
How it’s checked
Every change to WND Terminal is checked by an automated test in its build. It runs axe-core’s WCAG 2.1 A and AA rules over 30 screens of the interface (the connect page, mainframe and IBM i screens, Modern view, a translated screen, the search palette and every main dialog and dashboard), in dark and light. Then it checks what axe can’t see. Dialogs must take the keyboard, keep it and close with Escape. Ctrl+F6 must leave the host’s screen, the session tabs must work from the keyboard, translated text must carry its language, and nothing may scroll sideways at 200 % and 400 % zoom. A serious or critical finding fails the build.