How to type Morse code into any app on a Mac
macOS has no built-in way to type with Morse code, so keying Morse into your email, your notes or a chat needs a program that listens for a Morse key and types each character into the app in front. Dot & Dash does this with Type Anywhere: switch it on from its menu bar item, allow Accessibility once, then key on Right Option in any app. Each character is typed as you finish it, and a word gap types a space.
What macOS can do on its own
None of the keyboard layouts or input sources in System Settings, Keyboard reads Morse. What every Mac can do is type Morse as text. Any app accepts periods and hyphens, so you can write a message as dots and dashes, one space between letters and a slash between words:
.... .. / - .... . .-. .
That reads HI THERE, and anyone who knows the code can decode it. It is Morse written down, though, not keyed: you type a character for every dit and dah, and the letters never appear as letters. How to write Morse code in text covers the conventions.
To press a key in rhythm and see words appear, a program has to do two things macOS keeps locked by default: hear your key while another app is in front, and type into that app. Typing into other apps needs Accessibility permission, which you give in System Settings, Privacy & Security, Accessibility. Why a Morse keyer app asks for Accessibility on a Mac explains what that permission allows.
Setting up Type Anywhere
- Switch it on from Dot & Dash’s item in the menu bar.
- Allow Accessibility. macOS asks for it the first time, and only then; Dot & Dash shows you where to give it in System Settings.
- Try it. The app then says: “Try it here: hold Right Option and key HI.” HI is
.... .., di-di-di-dit, then a letter gap, then di-dit. - Key anywhere. Click into any app where you can type, and key on Right Option: a short press is a dit, a longer one a dah. A pill under the menu bar prints the tape as you go.
Right Option is the default because it types nothing by itself. You can choose Right Command, Right Control, Left Option, Left Command or Left Control instead, never Shift, Fn, Caps Lock, Space or a key that types; if Right Option types accents on your keyboard, choose Right Command or Right Control. With paddles, Type Anywhere uses two of those keys, Left Option for dits and Right Option for dahs by default. Its sound is off by default, and after the free 24 hours it needs a license.
How your Morse becomes text
Morse has no capital letters, so whatever turns it into text has to decide the case. Type Anywhere does it the way a sentence would:
- Letters are lower case, except the first letter of a run and the first after a period, question mark or exclamation mark followed by a space. Keying HELLO WORLD. HI types “Hello world. Hi”.
- Figures and punctuation type themselves.
- AR, BT and SK type nothing, so ending a message with AR out of habit leaves no stray characters.
- A run ends when you type or click yourself, or switch apps. The next letter you key starts a new run, with a capital.
Here are the marks you will want most often in everyday writing:
| To type | Code | Rhythm |
|---|---|---|
| Period | .-.-.- |
di-dah-di-dah-di-dah |
| Comma | --..-- |
dah-dah-di-di-dah-dah |
| Question mark | ..--.. |
di-di-dah-dah-di-dit |
| Apostrophe | .----. |
di-dah-dah-dah-dah-dit |
| Exclamation mark | -.-.-- |
dah-di-dah-di-dah-dah |
| Slash | -..-. |
dah-di-di-dah-dit |
| At sign | .--.-. |
di-dah-dah-di-dah-dit |
The exclamation mark is not in the ITU standard, but it is commonly used. To end a sentence and start the next one with a capital, key the period, then a word gap (which types the space), then the next word.
Keying so the words come out right
A program typing your Morse only knows what your timing tells it, so the gaps matter as much as the dits and dahs. The standard spacing is 1 unit between the elements of a letter, 3 units between letters and 7 units between words, where a unit is the length of one dit.
- Squeeze a letter gap and two letters become one. A
.-followed too closely by N-.arrives as.--., which is P. If the wrong letters keep appearing, open your letter gaps up first. - Stretch a gap inside a letter and one letter becomes two. L is
.-..; pause after its dah and you get A and I. - Every word gap types a space. Stop to think in the middle of a word and the pause may be read as a word gap, splitting the word in two. Decide the word, then key it.
- Keep one speed. Gaps are judged against your dits. Rushing some letters and dragging others leaves no steady rhythm to read them against.
Start with short words, HI, OK, YES, then a short sentence. Why your Morse letters run together has drills for the spacing faults that show up first.
Fixing a word you got wrong
The error signal is eight dits, ........, sent as one run with no letter gaps. In Type Anywhere it deletes the last word it typed, never your own text. Send it, then key the word again.
You can also fix things by hand with Delete and carry on keying; the next letter you key starts a new run, with a capital.
Passwords, privacy, and when nothing types
Type Anywhere pauses while a password field is active. It listens for your Morse key, and for when you type or click yourself, so it never deletes your own words. It never records, keeps or sends what you type.
If you key and nothing appears:
- Check the permission. Open System Settings, Privacy & Security, Accessibility, and make sure Dot & Dash is switched on. Look in Input Monitoring only if Dot & Dash tells you to.
- Check the key. Space keys Morse only in Dot & Dash’s own window, and so does a USB Morse key that types Space or a letter. Use one of the Option, Command or Control keys.
- Check the field. If the cursor is in a password field, Type Anywhere is paused on purpose.
Questions
Does macOS have a Morse code keyboard?
No. None of its keyboard layouts or input sources reads Morse. You can write Morse as text with periods, hyphens, spaces and slashes in any app, but keying Morse and having letters appear needs a separate program with Accessibility permission.
Can I key Morse into other apps with Space?
No. In every other app Space types a space, so Type Anywhere uses a key that types nothing by itself: Right Option by default, or another Option, Command or Control key.
How do you correct a mistake in Morse?
Send the error signal, eight dits with no gaps, then send the word again. In Type Anywhere the error signal also deletes the last word it typed and leaves anything you typed yourself alone.
Can I send someone Morse as text?
Yes. Morse written with periods and hyphens, one space between letters and a slash between words, is plain text, so any app takes it, and anyone who knows the code can read it.