As a test, below is the full MBraille development version help as of Sep 26.

# Introducing the Braille keyboard

Before you can start typing, you have to first set the buttons for each braille dot.

You decide how to place the dots. You need to enter each dot position
in order from one to six.  MBraille remembers the position of each dot, but you can always
reprogram the dots if you have forgotten. Reinitialize the layout with a long swipe
with one finger.

Note that in the layout the dot positions are not entirely fixed but allow for
your hand positions to drift while still keeping the input accurate.


# Using the keyboard

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, 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 gestures

MBraille swipe gestures work best when they are short and fast.
Only the gesture requiring a long swipe is the one-finger swipe to
reinitialize the smart layout. If you are accidentally reinitializing
the smart layout or have trouble dismissing the keyboard, try using
shorter and faster swipes.

## Swipe directions

To refer to swipe direction confusion can arise depending on how you
hold your phone or tablet.

So the directions are taken from the Braille characters themselves
and the following convention is used:

Right: Direction from dot 1 to dot 4
Left:  Direction from dot 4 to dot 1
Down:  Directly to right from the line from dot 1 to dot 4
Up:    Directly to left from the line from dot 1 to dot 4


## One-finger swipes

Swipe right 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 to hear what you have written.

## Two-finger swipes

Two finger swipe left to delete last word.

Two finger swipe right for newline.  This is the same a swipe down in MBraille,
but provided for compatibility with iOS and Android braille input.

Two finger swipe down to read from cursor to end of text.

Two finger swipe up to hear number of characters and words in the text.


## Three-finger swipes

Three-Finger Swipe Left: Undo
Reverses recent actions, including text edits (cuts, deletions, clearing),
and closes read-only files.

Three-Finger Swipe Down: Erase/Close
Erases all current writing.
Alternatively, shake the device to erase.
For read-only files, this closes the file and restores the previous content.

Three-Finger Swipe Up: Command Mode
Opens the command interface for advanced actions, such as sending text messages,
and managing files (open, save). See "Commands" below for details.



## Clipboard

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. Then just 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 and invoke the app switcher.

# Editing text

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 into MBraille for editing.

All editing gestures work on the same principle: use one hand to press
and hold one or more braille dots to select the gesture, then swipe up,
down, left, or right with your 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.


## Previewing text and moving the insertion point

Hold down braille dot 3 with one finger. Use another finger to flick left or right to have
your text read word by word. Flick up or down to change the granularity of movement.
You can move in the text by character, by word, by sentence, by line or by paragraph.

To quickly read to the end of text from the cursor, flick right with two
fingers while holding dot 3. Flick left with two fingers to read from
beginning to cursor. The cursor position is not changed when you do this.

You can move to the beginning of text by holding dots 1 and 3 and flicking left.
You can move to the end of text by holding dots 1 and 3 and flicking right.

## Selecting, cutting, copying and pasting text

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, swipe up with dots 2 and 3 still held down.
To cut the selected text, swipe down.

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.

## Searching

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.


## Spelling

You can configure spelling aids in the MBraille settings.

You have 3 options for spelling in settings:

1. Check spelling after each word, beeps on misspelled word.
   This is the master switch, if it is not on, you will not get spelling.

2. Only check spelling during preview by word.
   This modifies the spelling behavior so that you will not be interrupted by
   beeps when writing.

3. Spell out the suggested word.  This affects how the proposed corrections
are announced.

So the first switch in settings is the master switch for enabling / disabling spelling.


### Correcting spelling mistakes

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.

"hello, h,e,l,l,o"

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


### User spelling dictionary

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.


# Commands from the keyboard

You can at any time execute commands from the braille keyboard.  Swipe up with 3 fingers to enter the command mode and type your command followed by possible arguments, followed by a newline to run the command.

In command mode you can type and edit your command as usual with braille, but the command buffer is kept completely separate from your regular text.  So if you go to beginning of text or end of text in command mode, you will get to beginning or end of your command.

Note that when in the command mode, you can use the preview gestures move by line to go back or forward through the command history.
A shortcut is holding dot 4 and swiping up to got to previous command in history, or swiping down to go forward.
Even if you are not in command mode, holding dot 4 and swiping up will directly get you to the last command you ran.

## Usage

Some commands target the text you have written.  For example, to send a text message, you first type your message. Then you can send it away using a command mail, sms. 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.

## Twitter

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.


## Sending mail

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.

Usage:

.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.

## SMS text messages

.sms

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

.sms Joh

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:

.sms m:john

## Dialing a number or contact

.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.

## Facetime calls

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.

## Adding Calendar entries

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.

Usage:

.cal title starts [ends] [alert [time]] [location: place]

Examples:

.cal "Pickup laundry" "2017-06-07 13:00" alert 30 min

Would add a calendar entry for June 7, 2017 at 1 PM, with title "Pickup laundry", and add an alert to the event 30 minutes before.

.cal Paris 2017-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" "2017-07-07 14:00" "2017-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 2017-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.

## Adding Reminders

You can create a new Reminder from MBraille with the dot rem command. The current text is added to the reminder entry as notes.

Usage:

.rem title [due-date]

You can add a an optional due-date.

Example:

.rem "Write Thank You Note" 2017-10-30



## Typing Speed Test

To practice your typing speed, you can use the .tst command.

Usage:

.tst seconds

or

.tst phrase

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.

Examples:

.tst 10

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.

.tst wr

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][1] for more information.

[1]: http://en.m.wikipedia.org/wiki/Text_messaging#Records_and_competition       "Records_and_competition"
 
## Using Web Search Engines

You can at any time do Google, DuckDuckGo or StartPage searches. The search will open your default browser to display the search results.

### Google

Usage:

.google word1 word2

You can abbreviate the command to .goo

Example:

.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.


### DuckDuckGo


Usage:

.ddgo word1 word2


Example:

.ddgo "Michael Jordan"

Note that you can quote search terms, as you can with a regular DuckDuckGo search. If you don't give any parameters, all of your current text is used as search keywords.

### StartPage

You can do a StartPage search at any time with dot spage.

Usage:

.spage word1 word2


Example:

.spage "Pablo Picasso"

Note that you can quote search terms, as you can with a regular StartPage search. If you don't give any parameters, all of your current text is used as search keywords.


## Opening the web browser

You can open an arbitrary url in Safari browser with .web command.

Usage:

.web url

Example:

.web dr-carter.com

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.

## Getting help

To consult help directly from the Braille keyboard, you can give the dot help command.

Usage:

.help [topic]

Examples:

.help

Without any arguments takes you to the top of full help.

.help sms

Will give you help for .sms command.

.help help

Will give you this section.

Common topics for .help command are: editing, tweet, mail, sms, dial, cal, google, web, help, feedback and applications.


## File Management & Dropbox support

.open filename

Opens filename.txt from MBraille folder.  If you use another suffix than .txt, you need to specify it.

.open

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.

.save

Saves the current buffer with the name it was opened with.
If a new buffer, the default name is notes.txt

.save filename

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.

.del filename

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.

### Dropbox

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.

Note: if Dropbox sync does not seem to work properly after MBraille is updated to a new version, the fix is to toggle Dropbox off and back on from MBraille settings, so that you are prompted to give MBraille access rights to Dropbox.


## Alias command to create text aliases

With alias you can create shorthand forms for arbitrary text.
The alias is expanded when you swipe for space or newline.

Examples:

.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,

Luke

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:

.alias myalias

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

That would enable you to just type .sh to send sms to harry.

You can also add unicode characters, such as emojis to aliases.
For example

.alias smi: U+1f600

Will add a grinning face smiley when you type smi and swipe for space.
See http://www.unicode.org/emoji/charts/emoji-list.html for a list of emojis.

Note: in English contracted braille dots 56-235 will give you the plus sign.


### Listing aliases

.alias

Will list you all the aliases you have defined.

### Saving and loading

.alias save

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.
During the editing of alias.mb, the aliases are disabled.

The file format is:

  myalias1: definition
  myalias2: another alias definition

Empty lines are ignored, as well as lines starting with #

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.)

.alias load

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.


### Notes

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.


## Working with third party applications

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

*    BlindSquare
*    Drafts
*    Fantastical
*    InstaBrowser
*    NoteMaster
*    Skype
*    Spotify
*    Whatsapp

### BlindSquare functions

[BLINDSQUARE]


### Drafts

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.

Usage:

.drafts

If you are in Drafts and want to open up an existing note in MBraille, you can install the following URL action for MBraille.

<pre>
mbraille://x-callback-url/edit?text=[[draft]]
</pre>

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.

### Fantastical

You can create calendar entries with Fantastical using natural language for dates. For Fantastical use .fantastical or .fan for short.

Usage:

.fantastical

Examples:

.fan

Without arguments tries to parse date from the text and adds calendar entry.

.fan date-time

With date-time adds text as notes for the given date-time entry.

.fan show date-time

Shows the calendar for a given date-time.

### InstaBrowser

If you use InstaBrowser, you can open an arbitrary url in it with .ibr command.

Usage:

.ibr url

Example:

.ibr mpaja.com

You don't need to add the http:// in the beginning, but you can, for instance if you are pasting a link.

### NoteMaster

You can open NoteMaster with .notemaster command, or .nm for short.

Usage:

.nm [name]

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.

### Skype call

If you have Skype installed, you can call directly to a skype contact.

Usage:

.skype skype-id

Opens Skype and calls the given skype id.

### Spotify search

You can do a Spotify search with .spotify command, or .spfy for short.

Usage:

.spotify search-term

Opens Spotify to the search results.

### Whatsapp message

If you have Whatsapp installed, you can send a message to a Whatsapp contact.

Usage:

.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.


# Odds and Ends

## Additional Symbols

MBraille supports the following multi cell symbols. If you are using the setting where all characters are announced, the voice feedback is a little confusing, as separate cells are announced in braille ASCII until the word is complete.

### UEB symbols supported by MBraille

| Symbol | Dots |
| ------ | ---- |
" | 6-2356
# | 456-1456
$ | 4-234
% | 46-356
& | 4-12346
( | 5-126
) | 5-345
* | 5-35
+ | 5-235
- | 5-36
... | 256-256-256
/ | 456-34
< | 4-126
= | 5-2356
> | 4-345
@ | 4-1
[ | 46-126
\ | 456-16
] | 46-345
^ | 4-26
_ | 46-36
{ | 456-126
} | 456-345
~ | 4-35
¢ | 4-14
£ | 4-123
¥ | 4-13456
§ | 45-234
© | 45-14
« | 456-236
® | 45-1235
° | 45-245
¶ | 45-1234
» | 456-356
× | 5-236
è | 46-16-15
é | 45-34-15
÷ | 5-34
α | 46-1
β | 46-12
γ | 46-1245
δ | 46-145
ε | 46-15
ζ | 46-1356
η | 46-156
θ | 46-1456
ι | 46-24
κ | 46-13
λ | 46-123
μ | 46-134
ν | 46-1345
ξ | 46-1346
ο | 46-135
π | 46-1234
ρ | 46-1235
σ | 46-234
τ | 46-2345
υ | 46-136
φ | 46-124
χ | 46-12346
ψ | 46-13456
ω | 46-2456
— | 6-36
—— | 5-6-36
‘ | 6-236
’ | 6-356
“ | 45-236
” | 45-356
† | 4-6-1456
‡ | 4-6-12456
• | 456-256
₣ | 4-124
₦ | 4-1345
€ | 4-15
™ | 45-2345
← | 1256-246
↑ | 1256-346
→ | 1256-135
↓ | 1256-146
♀ | 45-1346
♂ | 45-13456
♭ | 3456-126
♮ | 3456-16
♯ | 3456-146
〃 | 5-2

### For older English Braille MBraille supports

| Symbol | Dots |
| ------ | ---- |
     #   |456-1456
     %   |4-25-1234
     &   |4-12346
     '   |6-236
     '   |356-3
     *   |5-35
     *   |35-35
     +   |5-235
     -   |5-36
     .   |3-3-3
     /   |456-34
     :   |4-156
     =   |5-2356
     @   |4-1
     [   |6-2356
     ]   |2356-3
     ¢   |4-14
     £   |4-123
     $   |4-234
     ¥   |4-13456
     ©   |45-14
     ®   |45-1235
     ×   |5-236
     ÷   |5-34
     –   |36-36
     –   |36-36-36-36
     ″   |4-35
     €   |4-15
     ™   |45-2345


## Self Voicing

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:

*    You can choose the English voice used.
*    The dot lang command will automatically change the voice to the corresponding language.
*    Deletions are announced with a lower pitch.
*    Voice rate and volume can be modified separately from VoiceOver, and those are specific to the language or accent.

### Self voicing specific commands

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.

Usage:

.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 accent, you can use the following iOS voice names, for example

.set voice daniel

British English.

.set voice allison

US English

.set voice moira

Irish English.

.set voice tessa

South-African English

.set voice karen

Australian English


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.

## Giving feedback

To post to MBraille mailing list, you can give the dot feedback command.

Usage:

.feedback [subject]

Examples:

.feedback Thanks for a job well done!

Without any arguments .feedback uses the default Subject: "MBraille feedback."

## Change Braille table language

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.

Usage:

.lang [language code] [save]

Examples:

.lang da

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.


### Gesture to change language

You can quickly toggle between languages by holding dots 1,2,3 and swiping up.

If your phone language not English, by default the braille table, self voicing language and spelling language is changed to English.

If your phone language is English, the language changed to is determined by ".lang code save" command.  

Examples:

Your phone is in English, but you often write in French.   Do

.lang fr save

Then by holding dots 1,2,3 and swiping up you can toggle between English and French.

Note that this gesture works both in MBraille App and MBraille Keyboard, but the ".lang code save" command must be given first in the app.


## Change MBraille settings

You can controls some MBraille settings with .set command

Usage:

.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.

.set toggle-swipe-dir

Toggles the up and down swipe direction when screen is facing away.

.set

Reports current values.

# MBraille as a third party keyboard

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.

## Using the custom keyboard

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).  

## Custom keyboard layouts

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.

For iPhone, there is an option in MBraille settings to restrict the keyboard area to 2/3 of the screen height.  This way 1/3 of the screen is left visible for 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.


# Credits

## Testers

MBraille would not be there without the team of testers who provided invaluable feedback along the road. In alphabetical order:

*    Ikrami Ahmad
*    Manolo Alvarez
*    Michael Charlton
*    Caroline Congdon
*    Thomas Byskov Dalgaard
*    Angela Fisher
*    Suleyman Gokyigit
*    Christopher Hallsworth
*    Johanna Herranen
*    Rebecca Ilniski
*    Cliff Isaksen
*    Søren Jensen
*    Megan Kelly
*    Tangela Mahaffey
*    Joona Malinen
*    Paweł Masarczyk
*    Matthieu Méric
*    Eileen Misrahi
*    Gordan Radic
*    Bruce Toews
*    Richard Turner
*    Engin Yılmaz

## Translators

Special mention goes to translators.

*    Arabic, Ikrami Ahmad
*    Croatian, Gordan Radić & Danijela Marušić
*    Czech, Lukáš Hosnedl & Marek Salaba
*    Danish, Søren Jensen & Thomas Byskov Dalgaard
*    Finnish, Harri Pasanen & Virpi Jylhä
*    French, Harri & Jukka Pasanen
*    German, Miika Virtanen & Sandra Pilz & Alexandra Backof
*    Norwegian, Cliff Isaksen
*    Polish, Paweł Masarczyk
*    Spanish, Manolo Alvarez
*    Swedish, Eeva & Harri Pasanen
*    Turkish, Engin Yılmaz

## Design and coding

+    Harri Pasanen

Copyright 2013-2024 MPaja.com

## Software used

Hunspell https://hunspell.github.io/
Liblouis https://github.com/liblouis/liblouis
 





Best regards,
Harri