Apple - How do I type a ² or a ³ on an Apple keyboard (International English layout)?

There are some important gotchas with the other solutions posted here.

For one, symbol and text substitution entries only work in Cocoa apps. If you want a truly system-wide solution that works in all applications, this is not an option.

Also, apps like KeyRemap4MacBook are great, but relying on them means you have to keep the app running in the background all the time, which may not be what you want.

Custom keyboard layouts to the rescue

Luckily, remapping keys can be done in a way that will work for any type of application, and without any additional software!

Mac OS X has supported .keylayout files since version 10.2 (Jaguar). You can create your own keyboard layout, or rather, tweak the default one you’re using right now. Simply remap a keyboard combination you never use (for me, there are plenty of those) to the ² and ³ symbols, and that’s it.

In my custom QWERTY keyboard layout, I can simply press + + 2 to enter ², and + + 3 to enter ³. (My custom AZERTY layout has these mappings, too.)

How to create a custom keyboard layout

To create new keyboard layouts or modify existing ones, I’d recommend Ukelele.app. It has an option to create a new keyboard layout based on the one that’s currently in use.

After you’ve created your custom layout, there’s no need for the application anymore — you certainly don’t need to keep it running in the background.

How to install a custom keyboard layout

  1. Copy the .keylayout file to the Keyboard Layouts folder within ~/Library (if you want to install it only for the current user) or /Library (if you want to install the layout system-wide).
  2. Reboot (if you installed the layout system-wide), or log out and log in again (if you installed it for the current user only).
  3. Enable the new keyboard layout via System PreferencesLanguage & TextInput Sources.

How to make a custom keyboard layout the system default

Optionally, you could make the custom keyboard layout the system default by running the Setup Assistant with root privileges. This way, it will be used for the login screen, and any new user accounts you create will default to this layout as well. Note that this can only be done for keyboard layouts in /Library/Keyboard Layouts (i.e., layouts that have been installed system-wide).

sudo rm /var/db/.AppleSetupDone; sudo "/System/Library/CoreServices/Setup Assistant.app/Contents/MacOS/Setup Assistant"

You will have to create a new user account in order to complete the Setup Assistant — but don’t worry, you can delete the new account afterwards.

Adding a custom icon to the keyboard layout

OS X will use the following default icon for your custom keyboard layout:

Screenshot

This icon will show up in the preference pane, and in the “Input menu” in the menu bar.

To replace this with your own icon, create a 16×16px image, and save it in .icns format in the same directory as the keyboard layout itself, using the same file name (only the extension differs). For example, my custom QWERTY layout is named qwerty.keylayout, so if I wanted to use a custom icon, it’d have to be named qwerty.icns.


If you can enter the ² and ³ once, you can put it in as a substitution in System Preferences, Language & Text -> Text.

Put something unique on the left side, like ^^2, then paste your symbol in on the right.

You'll may have to quit & restart each application for it to work, and some applications it may not work correctly in. Any that use a web view (including Mail, which was what you specifically asked about, and Safari) will need you to specifically enable Text Substitution from the Edit menu. Individually. Or you can run this command once in Terminal, and it will change the default for every web view:

defaults write -g WebAutomaticTextReplacementEnabled -bool true

This is from Macworld, but the Macworld article assumes Lion would make this step unnecessary. It didn't. Maybe Mountain Lion will.

As for entering the ² and ³ into System Preferences: You can use the character palette or paste to enter the symbol into the right side. It sounds like you already have this part figured out, though.

Language & Text


(None of the other answers explain how to type a superscript besides copy/pasting.)

To type a superscript character in an application that doesn't support superscript, you can use Character Viewer:

  1. Edit > Emoji & Symbols Space
  2. You'll find these under the Symbols > ① Digits list

Here they are for copy pasting:

  • Superscript: ⁰¹²³⁴⁵⁶⁷⁸⁹
  • Subscript: ₀₁₂₃₄₅₆₇₈₉