So pressing alt+[any key] gives you a special character. I am wondering if there is a way to change what special character is outputted for every alt+[key] keystroke. For example, I would like to map alt+t to the theta symbol, map alt+d to the degree symbol, and map alt+s to the square root symbol.

1 Answer 1


The simplest way to do what you need is probably to just set up text replacements in: System Preferences > Keyboard > Text > Replace With

If you really want to change key mappings, you can use Ukelele, or possibly Karabiner.

  • The 1st method will force you to put a space before the strings to be replaced, and this is not always convenient.
    – dan
    Oct 28, 2017 at 14:48
  • @daniel Azuelos, Using the first method, I did not have to, nor was I forced to "put a space before the strings to be replaced". What version of OS X/macOS are you running? The first method is certainly easier then using Ukelele, however if one wants a permanent method (until the layout is changed again) that just types the designated character presenting no other choice, then Ukelele is the way to go. Oct 28, 2017 at 16:00
  • The text replacement is not universal. only works with apps made by Apple (ex: Safari). It won't work for MS Word.
    – btrballin
    Oct 28, 2017 at 19:35
  • @btrballin Word has its own text replacement settings Oct 28, 2017 at 20:08
  • Thanks. Ukelele is great and now I am able to use a custom keyboard that prints different special characters for certain alt+key keystrokes
    – btrballin
    Oct 28, 2017 at 22:57

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .