Translate

Braille

The braille you have entered, as Unicode braille cells. A braille display shows these as dots. Chord dots on F D S and J K L; space ends a word.

Text

About Translate

Translate shows you what a braille user is writing, as they write it. The braille user brailles on the left; the same words appear as ordinary print on the right.

A short document that shows most of this off: braille turning into print, a word you can click, a contraction that was missed, and two sums - one in UEB maths, one in Nemeth. It replaces what is open, so save your work first.

Who it is for

Anyone who needs to follow braille but doesn't read it fluently - sighted teachers, teaching assistants, parents, SEN staff, and classmates. You don't need to know braille: you can see what the braille user is typing, and check it with them.

It is equally usable by a braille reader: both panels work with a screen reader, and the braille panel sends real braille cells to a braille display.

How the braille user types

Braille is entered the way a Perkins brailler works - press the dots for a letter together, like a chord, then release.

Dot321456
KeySDFJKL

Ordinary editing works as you would expect. Selecting some braille and then brailling a new cell replaces what was selected, and Ctrl+Z (Mac: Cmd+Z) undoes.

A word only appears in print once it is finished, so half-written words don't flash up and change.

The braille panel is a real text box, not a picture of one. That is what lets a braille display work with it properly - the cursor dots show where the braille user is, the display follows them along the line, and its routing keys move the cursor. A screen reader's own reading commands work here too.

Six-key entry can be turned off

Under ⚙ Settings, six-key input can be switched off. The S D F J K L keys then type normally instead of forming braille chords, which suits anyone using a braille display's own keyboard, or pasting braille in.

While six-key entry is on, the ordinary letter keys do nothing - only S D F J K L make braille. Some braille displays type letters rather than dots when they are plugged in; if a display's own keyboard seems dead, switch six-key entry off in Settings and it will work.

Seeing which braille made which letters

Click any word in either panel. It is highlighted in both, and the bar along the bottom explains it - how many cells, whether a contraction was used, and what each cell stands for. Matching colours link each braille cell to the letters it produced, e.g. ⠐⠺ = “work”.

This works inside sums too. Clicking a single sign in either panel highlights just that sign in both, and reads the whole sum aloud so the braille user hears it in context. Clicking a sum anywhere other than on a sign highlights the whole thing.

The bar can be made bigger. There is a small handle on its top edge: drag it upwards, or click it and use the ↑ and ↓ arrows (Home for normal size). The braille and the words inside grow together, which helps when a braille user with some sight is reading it, or when a class is looking at one screen.

Contractions the braille user could have used

Grade 2 braille has short forms - for “the”, for “st”. When a braille user spells a word out in full where a short form was available, Translate gives a small ding as they finish the word, and underlines the letters that could have been shortened - in both panels, so you can see it whether you read braille or print. Clicking the word shows what was available: “could also be written ⠮, 1 cell”.

This is a nudge, never a mark. Braille often allows more than one correct spelling - proper names, and places where the rules forbid a short form - so a word being underlined does not make it wrong. It is there to prompt a conversation, not to score anything.

Maths

Choose which maths code you use - Nemeth or UEB maths (⚙ Settings calls this one UEB Technical, its formal name) - once, under ⚙ Settings. Then Ctrl+M (or Ctrl+I) switches between ordinary text and that code, and says which you are in. The right-hand panel lays the maths out properly: real fractions, powers, roots, matrices, even number lines drawn as pictures. Clicking an expression explains the maths signs used.

The maths side covers a great deal - from simple sums through algebra, fractions and roots to calculus, chemistry and number lines. Where it cannot read something with confidence it says so and shows you which cell defeated it, rather than guessing and presenting a wrong answer as if it were right. That is deliberate: a wrong sum shown confidently is worse than no sum at all, because nobody knows to check it.

After Load (or Clear), choosing a mode applies to the whole document - so you can load a saved file and then pick how to read it. Once you start typing, modes stick to lines again.

When you load a file, Translate also looks at the whole document: if every line is clearly UEB maths (or clearly text) the boxes are set for you, with a spoken and written note saying so - one click undoes it. If the file is mixed or unclear, nothing is changed. Files saved here mark their Nemeth lines with the switch indicators, so those describe themselves - and a file whose lines are all switched ticks the Nemeth box for you.

Maths starts where the cursor is, not at the start of the line. Put the cursor where the sum belongs, press Ctrl+M, and a maths group opens with the cursor inside it. Write the sum, press Ctrl+M again and you step out to the right of it. The words you had already written stay words - a sentence can carry a sum in the middle of it.

In Nemeth the switch indicators are written into the braille, because that is how Nemeth marks itself on paper and a reader needs to see them. In UEB nothing is written at all: UEB maths is UEB, so there is no switch sign to write, and inventing one would put cells in the braille that the braille user never typed. The run is remembered instead, and an eBraille file keeps that memory.

The Maths box in the toolbar shows whether the cursor is currently inside a sum, so it tells you where the braille user is rather than what was last chosen. Clicking it does the same as Ctrl+M. Unticking it when the whole document is set to maths turns that off and returns to ordinary writing.

Marking maths that is already written

The Maths box (and Ctrl+M) acts on what you have, so it does the sensible thing in three different situations:

The moment the braille user writes anything, the third case takes over: modes stick to lines again, so one press can never sweep up work already done.

When a file is opened, Translate also says if it suspects maths without being sure - "some lines in this file look like UEB maths". It changes nothing on a suspicion; it tells you, and one press does the rest. UEB is the harder case to spot: Nemeth writes its switch signs into the braille and so declares itself, while UEB maths is UEB and nothing in the cells sets it apart.

The two maths codes are different, so only one can be on at a time. Nemeth cannot be detected from the cells alone (its digits are the same cells as ordinary punctuation), which is why you choose it - except when the braille carries the explicit switch, which is unambiguous.

Writing a sum

Maths is written in the braille panel like everything else - the difference is only that you tell Translate where the sum starts and stops.

  1. Put the cursor where the sum belongs and press Ctrl+M. Translate says which code you are in and waits.
  2. Braille the sum. In both codes a number is introduced by the number sign , and the fraction line is dots 3-4, - the same shape as the printed /. So a half is ⠼⠁⠌⠃: number sign, 1, fraction line, 2.
  3. Press Ctrl+M again to step out to the right of the sum, and carry on with your sentence.

A whole line looks like this in UEB maths - ⠼⠁⠌⠃⠐⠖⠼⠁⠌⠉ and so on for 1/2 + 1/3 = 5/6, with ⠐⠖ for plus and ⠐⠶ for equals. The same sum in Nemeth is wrapped in its own switch signs, ⠸⠩ to open and ⠸⠱ to close, because that is how Nemeth marks itself on paper.

You hear the sum, not the letters. Finish a word inside the maths and Translate speaks it as arithmetic - "fraction 1 over 2", or for the whole line "1 half plus 1 third, equals 5 sixths". The same cells outside a sum would be read as ordinary braille, which is the point of marking where the maths is.

The braille panel tints the sum with a wash of colour, so you can see at a glance which part of a line is maths and which is words. In Nemeth the switch signs sit just outside the tint, bracketing it.

In the print panel, clicking a term reads that term; clicking the row away from any term reads the whole equation. Either way the explanation bar names the signs used.

What you see, and how it is set

The checks - what the coloured notes mean

Translate never guesses silently. Under a maths line you may see:

No note at all means the reading was verified: the maths shown translates back to exactly the braille the braille user typed.

In the print panel, a ? stands for a cell that has no letters in the braille code you are using - a stray dot, or a sign belonging to some other code. Click it and Translate says so in words. The dots themselves are untouched in the braille panel, so nothing is lost: the ? only marks the place where we will not guess.

“Display fault on line …” is different from all of these and should never appear. It means the braille panel has drawn something other than what the document holds, and it is reported rather than hidden because braille you did not write is the one thing this app must never show you quietly. If you see it, the panel cannot be trusted for that line - please report it.

Reading aloud

Under ⚙ Settings you can pick a voice and choose what is spoken: each letter as it is written, each finished word, and each finished sentence. If several are on, only the later one speaks, so nothing is said twice over. Any braille key stops the speech, and so does Control on its own.

Two of those settings are worth knowing about in detail. Speak each letter covers deleting as well as typing - taking a cell out is the same moment as putting one in, and the braille user needs to hear which cell went. (If a whole selection is deleted, Translate says so however this is set: losing a chunk of work quietly is a different thing altogether.) Speak where the cursor moves is separate, because moving about is not writing - it is the one to turn off if a screen reader is already reading the cursor. It governs the cell-by-cell echo only: arriving on a word always says what that word is made of, whichever way this is set, because that is the teaching and no screen reader can say it for us.

While the braille user is typing, Translate names the cell, not the word. That matters more than it sounds. on its own is the short form for “that”, but a braille user who has just pressed those dots has not decided yet whether they are writing “that” or the start of “thing” - so Translate says “t”, and waits for the space to say the finished word. Cells that stand for a pair or group of letters are spelt out: is “s t”, is “i n g”, is “t h e”. Spelling them keeps them clearly a report about the braille, rather than sounding like more of the sentence.

The same three settings cover maths, so there is one rule to learn rather than two: each cell as it is written, each finished part of the sum, each finished line.

Ctrl+Shift+L reads the current line at any time. Press it twice for a second, closer listen - and what that second listen gives you depends on the kind of line, because the useful answer is different:

Both readings come from the same reading of the maths - only the wording differs. If the short and the full reading seem to describe different sums, that is worth a closer look at the braille rather than a quirk of the setting.

The voice list starts with voices in the language you are working in; the rest are a click away, and the joke voices some computers install are kept in a list of their own so they do not crowd out the useful ones. Maths is read as a sentence rather than a list of signs - “a half plus a third equals five sixths” - in English, Spanish, French and ten more languages.

Using Translate with a screen reader

The braille panel is a real text box holding real braille, so a connected braille display shows exactly the cells the braille user has written.

Two voices are one too many. A screen reader reads out what is typed, and so does Translate, so without a little setting up a braille user hears everything twice - once as dot numbers from the screen reader, once as words from Translate. The way to sort it out is to let each do the half it is good at: the braille display shows the cells, and Translate does the talking.

On a Mac with VoiceOver, three settings do it:

On Windows with NVDA, the same three:

JAWS has the same two switches - Settings Center → Typing Echo, set to None, and Verbosity set to Beginner off - but the steps here have not been tried with it, so treat them as a starting point rather than instructions.

If you would rather have one voice doing everything, choose Speech → “Screen reader” instead: Translate then passes its announcements to the screen reader to say in its own voice, at the speed the braille user is used to.

These are settings on the computer, not in Translate, so a school may want to set them up once on a pupil's machine.

Saving

Save writes an eBraille file (.ebrl) - the DAISY standard for braille documents. It keeps things a BRF cannot: which lines are text and which are maths, and which code they were written in, so a saved page opens back exactly as you left it.

Export offers two, because the two sides of the app go to different people:

Load opens a saved eBraille file or an exported BRF, and also a .brl file (braille saved as dot patterns) or a .txt holding braille. Word is export only: a .docx holds print, and the braille it came from is not in it, so there is nothing for Load to read back. It works out which from the file itself rather than its name - so a file renamed by an email program still opens. A file with no braille in it is refused, and says so, rather than quietly emptying the braille user's work.

Clear empties both panels, asking first and reading the question aloud, and starts the new page in ordinary text even if the last one was maths.

Translate keeps working with no internet connection, once it has been opened once on that computer.

That first visit downloads about 5.5 MB, and most of it - 3.7 MB - is the maths engine, which reads equations aloud and checks them. It is fetched then rather than the first time maths is used, so a braille user who opens the app on the school network and takes the laptop home still has maths. On a metered connection that is most of what the app costs, and it is downloaded once.

Credits and licences

Typefaces: the interface is set in Inter (SIL Open Font License 1.1, © The Inter Project Authors); the braille pane uses APH Braille Shadows, by permission of the American Printing House for the Blind. Both travel with the app rather than being fetched from anywhere, so nothing about your use of it is reported to a third party and it looks the same with no internet connection.

Braille translation by liblouis (LGPL-2.1-or-later). Maths layout by Temml (MIT) and MathCAT (MIT, © Neil Soiffer / DAISY). The full licence texts, the versions used and where to get their source travel with the app: third-party licences (opens in a new tab).

© Sensory App House Ltd.
Licensed under CC BY-NC-SA 4.0