Before you can start typing, you have to first discover the buttons for each braille dot. For iPhone and iPod there are three fixed layouts, two for holding the phone on a table and another one for holding the screen facing away from you. For iPad the keys are arranged horizontally, like piano keys, or keys on a Perkins brailler. iPad supports both landscape and portrait orientation, so you can pick the one that fits you best. You can explore the button placements by sliding one finger across the screen. The full screen area is covered by the buttons and you'll hear each button announced by voiceover as your finger crosses over from one button to the next. (You can later turn this off from the settings by disabling the tutorial mode.)
Note, for iPad it is advisable to turn off Multitasking Gestures from the iPad settings.
For table layout turn your phone to landscape with the home button to the right. For a natural typing position place the three middle fingers of your hands in an open V position, where the index fingers are almost touching and ring fingers are close to the upper corners of the phone.
You will hear each braille dot as you explore the keyboard layout. Once you are ready to start typing type L (dots 1 2 3) followed by W (dots 2 4 5 6).
The buttons corresponding to the braille dots cover the whole screen, so you have some room to adopt to a layout that suits you. In the table layout keys 3 2 1 can be thought of as stripes you'd get when you put your 3 middle fingers flat on the phone pointing upper right. Keys 4 5 6 are stripes perpendicular to the previous, coming up from the lower right corner to upper left, limited by the 1 key.
If you are holding the phone in your hands, keep the home button to the right. With the screen facing away from you, the keys for braille dots are simple rectangles, again covering the whole screen.
From the settings you can select how you wish the Braille cell to be layed out. With "Table" setting you force the layout to open V position. With "Away" setting you hold your phone in landscape, screen facing away, home button under your right hand. Additionally there is an option to swap dots 1&3 and 4&6, which some user prefer when the screen is facing away. Piano layout has the keys like on Perkins brailler, in order 3 2 1 4 5 6. The Piano layout is suitable for iPhone 6 and up, on iPhone 5 it might feel too cramped.
The braille key input begins when one finger goes down and ends when all fingers are lifted. You can tap all the dots simultaneously, or in sequence as long as at least one finger remains on the screen. iPhone has the small restriction that it does not distinguish 6 simultaneous touches, so the contraction for the word "for" requires some finger gymnastics. For example you can put down fingers on dots 1 2 3 4 5, lift any of the previous fingers and then hit dot 6 and finally lift all fingers. The order of hitting the dots does not matter. By default contracted Braille is used, but it can be turned off from settings. To quickly turn contractions on and off while entering text, hold down dot 6 with one finger and flick up or down with another finger.
Swipe right towards the home button to enter a space. Swipe down to enter a newline. Both space and newline trigger the expansion of contractions in the preceding word. Swipe left to delete the previous character. Swipe up (in away mode towards the volume buttons) to hear what you have written.
Two finger swipe left to delete last word.
Two finger swipe right for undo. You can undo cutting and deletions, including clear buffer
Two finger swipe up to hear number of characters and words in the text.
Swipe right with three fingers to go to menu
Swipe down with three fingers to erase your current writing. Alternatively you can shake your phone to do the same.
If you switch to another application from MBraille, the current text is automatically copied to the clipboard. You can then paste the text in the other application. When in home screen, you can double tap the home button to open the app switcher and select MBraille to get back.
To copy just a given block of text from MBraille to another application, mark and copy your block as described in the next topic and then immediately press the home button.
You can do simple editing with MBraille, preview what you have written and move text around by selecting, cutting and pasting. You can even paste text from other applications to MBraille for editing.
All editing gestures work on the same principle. You use one hand to press and hold one or more braille dots to select the gesture. You then swipe up, down, left or right with other hand to activate the selected gesture.
When editing existing words or entering punctuation, it is often more convenient to use uncontracted Braille. To quickly toggle contractions on and off while entering text, hold down dot 6 with one finger and flick up or down with another finger.
Hold down braille dot 3 with one finger. Use another finger to slide or flick left or right to have VoiceOver read your text word by word. Swipe up to read sentence at a time. Swipe down to drill down to the words in the sentence last read. Swipe down again to drill down to the characters in the last word. The preview mode ends when you release dot 3.
Navigate in the text using the preview function. Once you have found your spot, tap dot 1 while still holding dot 3. Alternatively you can in MBraille settings activate the mode where the preview cursor and the input cursor move in concert.
You can move to beginning of text by holding dots 1 and 3 and swiping left.
You can move to end of text by holding dots 1 and 3 and swiping right.
Navigate in the text using the preview function. Once you have found your spot, press down dot 2 while still holding dot 3. With dots 2 and 3 held, moving around with flicks selects the text that is passed over. VoiceOver announces the selected text as you move. To hear the full selection, swipe up with two fingers while still holding dots 2 and 3.
To copy the selected text, tap dot 5 with dots 2 and 3 still held down. To cut the selected test, tap dot 4.
To paste text at the insertion point, hold down dot 2 and flick down with another finger. Hold down dot 2 and flick up to hear what currently is in the clipboard. You can paste text you copied with MBraille copy or cut function, or text that you copied from another application.
To quickly extend the selection to beginning or end of text, hold down dots 1,2,3 and swipe left or right.
Hold dots 4,5,6 and swipe up or down to enter search mode.
The swipe direction determines the search direction: down for forward, up for backwards.
Type your search string and swipe down for newline, at which point the string you entered is searched from current point to direction chosen. If found, the cursor is placed at beginning of match and line number and sentence it is in is announced.
Swipe down again to find the next match. The search automatically wraps around at end or beginning. If it wraps you will hear an announcement.
To get out of search mode hold dots 4,5,6 again and swipe up or down again. The input cursor is left at the position of last match.
You can configure spelling aids in the MBraille settings.
You have 3 options for spelling in settings:
So the first switch in settings is the master switch for enabling / disabling spelling.
When MBraille detects a spelling mistake, it can also suggests a list of possible corrections.
You can select a suggestion with a gesture:
When you hear a beep for a mistake while typing or previewing, you can immediately pick a suggestion from a list by holding down dot 1 and swiping up or down. The first choice in the list is the mistyped word, in case you wish to keep it. As soon as you lift your fingers, the correction is done and you can resume typing.
If in the settings you have selected to automatically spell out the suggestions, you'll hear each suggestion similar to hello below.
Regardless of the setting, you can force spelling out a suggestion by holding dot 1 and swiping right. That will also report the number of suggestions, like
hello, h,e,l,l,o, 4 of 14
You can add the word you wrote to spelling dictionary by holding dot 1 for the first suggestion, which is the word that caused the beep, and swiping left. You will be asked for a confirmation to add the word to the spelling dictionary.
.dict dot command will list the words in your user dictionary, allowing you to remove words.
After composing your message, you can perform various commands through the braille keyboard by starting a line with a period followed by the command and possible arguments, followed by a newline.
So you first type your message as you would otherwise. Then you can send it away using a dot command at the end of the message. .mail, .sms, .tweet or .fb, without having to go back to the menu. You can also create a calendar event with .cal command.
The dot commands you enter in MBraille are saved, so you can browse and re-execute old commands. For example, if you keep texting the same handful of persons, it is convenient not having to type the command again.
At the beginning of line, hold dot 4 and swipe up to go back in history, down to go forward. When you lift your finger from dot 4, it is as if you had typed again the old command. Just swipe down for newline to play it again.
You can also search from the command history. Type a dot followed by a space and the search keyword. Then hold dot 4 and swipe up. Only those dot commands are retrieved that have the search keyword.
You can send tweets directly from the braille keyboard. To send a tweet, first type your message, then add a newline (swipe down), then enter .tweet at the beginning of line. So period, followed by the word "tweet" at the beginning of line. Then swipe down again and the text from preceding lines is tweeted.
You can send a direct message by adding the recipient's twitter name after the tweet command, separated by a space.
To post a Facebook status update you can use dot facebook command. Write
At the beginning of line, swipe down, and the Facebook message window opens with your preceding text pre-pasted. You can then choose in more detail there how you want your post to be sent.
To directly post your status without having to go through the Facebook window do the following: write your text and terminate it with a newline. Add
and swipe down. Now your status is sent directly.
Rather that going to mail screen via menu, a dot command can also be used. The advantage of a dot command is that you can type the subject and recipient names in Braille. So you first type your mail message, then add the dot command.
.mail "Hello there" Jack
Follow this with a newline and the send mail form is brought up with the Subject set to "Hello there" and To: pre-filled with the email address for Jack. Subject needs to be quoted if it contains spaces. Recipient emails are looked up from contacts by their first or last name. You can add multiple recipients.
.mail "Hello there" Jack Jill
will send the mail to both Jack and Jill.
For the recipient you don't need to write out the full name, a prefix is enough. You just need to use enough letters to tell the names apart. For example, to send an email to Jill when you have both Jane and Jill in your address book, you would need to type just ji. The name lookup is not case sensitive and you can add as many recipients as you wish. If you have not typed enough letters to tell multiple recipients apart, you will be warned.
To use both first name and last name to specify the recipient, you must separate the names with a period. So if you have in your contacts Jill Jones, and Jill Smith, you need to use the last name to tell the two Jill's apart. You can address an email to Jill Jones by abbreviating her name to jill.j or even just to j.j, if you have no other people in contacts whose first and last name both start with j. Note that if you are using contracted English Braille, to type the period between the first and last name you escape it with dot 4 before it. So a.b would be dots 1 4 256 12. An alternative is to toggle to uncontracted Braille on the fly to enter the arguments.
You can also give an explicit email address instead of a contact name. To type @ sign, switch to uncontracted braille by holding dot 6 and flicking up or down.
On a line by itself will launch the SMS send screen with the current text pre-pasted.
You can also pre-fill the recipient numbers in the same way as for the .mail command. Just give the first few letters of the recipient name as parameter. For example
Would pre-fill the number for John. You can also give the full telephone number as an argument.
If your recipient has multiple telephones, you will be asked which one to use in a selection list. To directly pick the first mobile or iPhone number from the list, you can prefix your recipient name with "m:" as follows:
.dial name or number
Calls given contact or number. The contact can be abbreviated as for .sms or .mail commands. The call is opened as soon as you swipe down for a new line.
You can place both Facetime audio and Facetime Video calls with MBraille.
.ft name or number or email
is used for Facetime Audio calls.
.ftv name or number or email
is used for Facetime Video calls.
The contact can be abbreviated as for .sms or .dial commands. The call is opened as soon as you swipe down for a new line.
You can create a new Calendar item from MBraille with the dot cal command. The current text is added to the calendar entry as notes. The arguments to specify the time follow the .cal command.
.cal title starts [ends] [alert [time]] [location: place]
.cal "Pickup laundry" "2013-06-07 13:00" alert 30 min
Would add a calendar entry for June 7, 2013 at 1 PM, with title "Pickup laundry", and add an alert to the event 30 minutes before.
.cal Paris 2013-08-08
Since there is no time, this is automatically an all day event. As title and date don't have spaces, no quotes are required.
.cal "Piano lesson" "2013-07-07 14:00" "2013-07-07 15:00" alert 1 hour
Adds an event with starting and ending time, with and alert 1 hour before the event.
.cal Meeting 17:30
Schedules an event with title Meeting for 17:30. If now is before 17:30, the meeting is for today, if it is already past 17:30, the date it is automatically set for tomorrow.
.cal Meeting 5pm location: lobby
Schedules a meeting for 5 pm, location being lobby.
Different formats for specifying date are supported. In the USA MM.DD.YY format is understood, outside USA the order is day, month year; DD.MM.YY. For time, 24 hour clock is always supported, but so is "1:00 PM" format.
To avoid typing quotes to give a date-time, following examples go around that, as no spaces are in the date-time.
.cal Coffee 2014-05-16-16:00
.cal Coffee 21/3/14-10am
You can also leave out the year, in which case the current year is used, or the following year if the date has passed.
To practice your typing speed, you can use the .tst command.
When you start a test, you'll hear a tone. When you stop a test, you'll hear the same tone as in the start. If you make a mistake when testing with a sample sentence, you'll hear a different tone after a word to signal a typo.
swipe down, you'll hear the starting tone. Type for 10 seconds and you'll hear the same tone to signal 10 seconds have elapsed. Hold dot 3, swipe up to preview by sentence and swipe left to hear your results.
.tst sample text to type
swipe down, you'll hear the starting tone. Type "sample text to type" and end with space or newline. If you make a typo, you'll hear a different tone and need to correct your mistake. Once you have entered the text again without mistakes, you'll hear a tone to signal you are finished. Hold dot 3, swipe up to preview by sentence and swipe left to hear your results.
is a shorthand for typing:
.tst The razor-toothed piranhas of the genera Serrasalmus and Pygocentrus are the most ferocious freshwater fish in the world. In reality they seldom attack a human.
This is the official phrase used in the Guinness World Records texting attempt, see Records_and_competition for more information.
You can do a Google search at any time with dot Google. It will open Safari browser displaying the search results.
.google word1 word2
You can abbreviate the command to .goo
.goo "Albert Einstein"
Note that you can quote search terms, as you can with a regular Google search. If you don't give any parameters, all of your current text is used as search keywords.
You can open an arbitrary url in Safari browser with .web command.
You don't need to add the http:// in the beginning, but you can, for instance if you are pasting a link. If the url does not seem to make sense, it is passed to Google to ponder upon.
To consult help directly from the Braille keyboard, you can give the dot help command.
Without any arguments takes you to the top of full help.
Will give you help for .sms command.
Will give you this section.
Common topics for .help command are: editing, tweet, facebook, mail, sms, dial, cal, google, web, help, feedback and applications.
Opens filename.txt from MBraille folder. If you use another suffix than .txt, you need to specify it.
Without filename will let you browse the files in /MBraille folder.
If you don't remember the filename, but remember it at the letter A in it, you can do ".open A" and you'll get a list of all files with letter A in the name.
Swipe left/right or up/down
to go through the list, double tap when you have the file you wish to open.
At bottom of screen there is a cancel button if you wish to cancel the action.
Saves the current buffer with the name it was opened with. If a new buffer, the default name is notes.txt
Saves the current buffer as filename.txt. It is saved under /MBraille folder which you can see with a file explorer, or when you connect to your PC.
Deletes the file, asking for a confirmation. If you leave the filename out, or give partial filename, you will be presented a list of matching filenames.
In the settings you can turn on Dropbox file sync. All the file management commands will then work against the Dropbox files.
At Dropbox, the files will be under applications/MBraille.
With alias you can create shorthand forms for arbitrary text. The alias is expanded when you swipe for space or newline.
.alias myname: Harri Pasanen
Now I would need to type just myname and it would be expanded to Harri Pasanen.
You don't need quotes if your expansion does not contain leading or terminating spaces. In the cases you need them, you can do it, like
.alias ans: " Your signature here: "
If you desire newlines in your alias, you denote them with \n (backslash n). For example the following alias mailsig
.alias mailsig: "\nHugs and Kisses,\n\nLuke\n\nSent with MBraille -- http://mpaja.com/mbraille\n"
mailsig would expand to:
Hugs and Kisses,
Sent with MBraille -- http://mpaja.com/mbraille
However, MBraille does not have a backslash in all the Braille tables and editing those long strings with \n is not so convenient. So there is a better way:
That will take the existing MBraille text buffer and use it as the alias. Note that there is no colon after the alias name, myalias in this case.
Hint: you can create new dot commands based on existing ones, for example:
.alias .sh: .sms harry
Will list you all the aliases you have defined.
Will save the aliases to a file called alias.mb. Aliases defined in this file are automatically loaded at MBraille start.
Note that if you are using Dropbox, your aliases are automatically synced between devices. As alias.mb is a simple text file, you can just open alias.mb in any editor to make modifications, or send a useful alias.mb file to your friends. The file can be transferred from-to MBraille either through iTunes or Dropbox.
You can of course edit alias.mb in MBraille itself, using ".open alias.mb" and .save commands.
The file format is:
myalias1: definition myalias2: another alias definition
Empty lines are ignored, as well as lines starting with # (Note that .alias save overwrites the file and sorts the aliases alphabetically. Comments are lost.)
Instead of colon, you can also use '=' sign to denote the start of definition. The leftmost sign matters. (Not all braille tables have '=', so I chose ':' as the default.)
Will load alias.mb without having to exit MBraille. This way you can edit your alias.mb on a PC, save to Dropbox MBraille folder and just load it on the phone for testing.
To clear an existing alias, just define it to be empty.
would remove the mailsig alias I created earlier.
To get rid of all aliases, you can save an empty alias.mb file and then to .alias load.
Alias expansion happens before any contracted braille expansion. If you include an alias in an alias definition, the alias included will not be expanded. In the alias.mb file, you don't need to prefix the lines with ".alias " command.
MBraille can also access the following third party applications using the dot commands. Use .help application name to get app specific help.
In alphabetical order
You can use MBraille to execute actions in BlindSquare. Start a line with a period followed by the bsq command, keyword and possible arguments. Swipe down to execute your command in BlindSquare.
Launches BlindSquare and performs a search for nearby places and addresses.
.bsq search [search term]
|.bsq search Starbucks||Searches for Starbucks|
|.bsq search Marple Street, Philadelphia||Searches for an address on Marple Street in Philadelphia|
Launches BlindSquare to check in with Foursquare to a nearby place. BlindSquare will list places around you and when you have selected the right one you can check in. If you write a comment for your check-in, it will be included.
.bsq checkin [comment]
|.bsq checkin Hello you!||BlindSquare will check you in to a place near you adding "Hello you! as a comment to your check-in|
|.bsq checkin I'm at home|
Launches BlindSquare to leave a tip to a nearby place. BlindSquare will list places around you and when you have selected the right one you can leave a tip.
.bsq tip comment
|.bsq tip Nice athmosphere!||BlindSquare will leave a tip to a place near you adding "Nice athmospehere!" as a tip|
Launches BlindSquare to like a nearby place. BlindSquare will list places around you and when you have selected the right one it is liked. If you write a comment, it will be included as a tip.
.bsq like [comment]
Launches BlindSquare to dislike a nearby place. BlindSquare will list places around you and when you have selected the right one it is disliked. If you write a comment, it will be included as a tip.
.bsq dislike [comment]
Lets you launch BlindSquare and add your current location to the My Places list. If required, you can provide a place name and an Alert Distance in meters or feet.
.bsq add [Name of the place] [Alert distance]
|.bsq add Home||Adds your current location to the My Places list naming it "Home"|
|.bsq add Work place 50||Adds your current location to the My Places list naming it "Work place". It will have an alert distance of 50 meters or feet, depending on your BlindSquare settings.|
Launches BlindSquare into Look Around mode.
Launches BlindSquare to announce your current address and other information about your location.
Launches BlindSquare to navigate to a place on your My Places list using a third-party navigation app installed on your device. This is equivalent to using the Plan a Route feature on a place screen from within BlindSquare.
.bsq navigate [search term for place on the My Places list]
|.bsq navigate Home||Starts navigation to the place called "Home" on your My Places list|
Launches BlindSquare so it announces tracking information for a place on your My Places list
.bsq track [search term for place in My Places list]
|.bsq track Home||Starts tracking the place called "Home" on your My Places list|
Launches BlindSquare and stops tracking for all currently tracked places
You can create a new note in Drafts with the .drafts command, or .da for short. For Drafts 4 use .draftsfour, or .daf for short.
If you are in Drafts and want to open up an existing note in MBraille, you can install the following URL action for MBraille.
After your edits, you can return to Drafts with the edited version as a new note with typing period da and swiping down.
To keep editing the same note in Drafts, you need to use clipboard to transfer your changes.
If you use InstaBrowser, you can open an arbitrary url in it with .ibr command.
You don't need to add the http:// in the beginning, but you can, for instance if you are pasting a link.
You can open NoteMaster with .notemaster command, or .nm for short.
If you provide a name, an existing note with the given name is opened. If the name contains spaces, you need to quote it. For example: .nm "Sofa Shopping"
Your text written in MBraille is in the clipboard, ready to be pasted to NoteMaster.
If you have Skype installed, you can call directly to a skype contact.
Opens Skype and calls the given skype id.
You can do a Spotify search with .spotify command, or .spfy for short.
Opens Spotify to the search results.
If you have Whatsapp installed, you can send a message to a Whatsapp contact.
Opens Whatsapp and automatically fills the receiver and message text from MBraille. .wup is a shortcut for .whatsapp.
If you want to select the contact in Whatsapp itself, but still pass the message text from MBraille, you can launch Whatsapp without the contact argument.
MBraille supports the following multi cell symbols. Note that the voice feedback is a little confusing, as separate cells are announced in braille ASCII until the word is complete.
|$||4-234||dollar(s) note that in contracted braille this needs to be terminated with dots 56 to distinguish from ble contraction|
With iOS 7 you can use the Braille keyboard without VoiceOver turned on. MBraille will detect that VoiceOver is not running and automatically use self voicing.
Self voicing brings additional features:
The Voice language is automatically changed following the .lang command.
You can also set the voice separately without changing the braille table with ".set voice" command.
.set voice [lang-code]
Where lang-code is the two letter language code, such as en,es,fr,de,pt,... etc.
To select a specific English accent, you can use the following voice names
.set voice daniel
.set voice allison
.set voice moira
.set voice tessa
.set voice karen
You can also specify the voice using the BCP 47 language tag, for example
.set voice fr-CA
would set the voice to Canadian French.
To specify the voice rate and volume, you can use the commands.
.set speed 1-10
to change the self voicing speed for the currently active language.
.set vol 0-10
to change self voicing volume for the currently active language.
Voice speed and volume are language and dialect specific. So if you are learning a foreign language, it is often easier to understand if the volume is a bit louder and the speed of speech is lower.
To post to MBraille mailing list, you can give the dot feedback command.
.feedback Thanks for a job well done!
Without any arguments .feedback uses the default Subject: "MBraille feedback."
If your phone language does not match the Braille table you would like to use, or if you know Braille in multiple languages, you can change the Braille table on the fly with .lang command.
.lang [language code] [save]
Would change the braille table to Danish for the current session.
.lang da save
Saves the language table used, so that MBraille remembers to start with Danish braille after restart.
You can quickly toggle between languages by holding dots 1,2,3 and swiping up.
You can controls some MBraille settings with .set command
.set [setting-name] [value]
Available settings in alphabetical order:
.set auto-caps [on|off]
If turned on, the next word after punctuation will be automatically capitalized.
.set clear-clipboard [on|off]
If turned on, putting MBraille to background will automatically clear the MBraille buffer, so that the entered text will only be available in the clipboard.
.set nlclick [on|off]
Turns the newline click sound on or off.
.set sensitivity [value]
Adjust swipe sensitivity, with values between 18 to 50. The smaller the value, the higher the sensitivity. Default value is 28. Warning, if you set it to 18 and your fingers are a bit jittery, you may have trouble changing the value.
.set shake-to-clear [on|off]
Allows you to clear the text by shaking the device. It is on by default.
Toggles the up and down swipe direction when screen is facing away.
Reports current values.
If you are running iOS 8.3 or higher, you can use MBraille as a third party keyboard. Configure it from devices Settings, General, Keyboard, Keyboards: Add New Keyboard. Once you see MBraille in list of keyboards, click on it to allow full access.
You type normally as you would with MBraille proper. To dismiss the keyboard, you can swipe left with 3 fingers. To advance to next keyboard swipe right with 3 fingers.
Normally MBraille keeps the text you type in its own memory and synchronizes it with the edit field when you dismiss the keyboard or advance to next keyboard. If MBraille can deduce that the keyboard should be dismissed on return swipe, it will do that.
Sometimes it is useful to have MBraille to update the edit field after each keystroke. To do that you can toggle the direct input mode by holding dot 6 and swiping right. Then each key you type is automatically echoed to the edit field. (Or each word if contractions is on).
On iPad the MBraille custom keyboard does not take up the full screen, but only covers the area occupied by the standard keyboard. This leaves rest of the screen visible to VoiceOver.
On iPhone, the piano layout covers only half the screen in landscape while in custom keyboard. This again leaves some of the screen visible to VoiceOver. Note however, that if the orientation is locked to portrait, the piano keyboard does cover the full screen, but is rotated to landscape. On iPhone you can briefly toggle the keyboard layout to/from piano by holding dot 6 and swiping left.
MBraille would not be there without the team of testers who provided invaluable feedback along the road. In alphabetical order:
Special mention goes to translators.
Copyright 2013-2015 MPaja.com
Hunspell http://hunspell.sourceforge.net/ Qt http://www.qt.io/