Ask Different is a question and answer site for power users of Apple hardware and software. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am a programmer and I use symbols more often than the number keys. I'd like to change the priority of the top row keys so that hitting "1" gives me "!", and holding shift and pressing "1" gives me "1".

I'd prefer a built-in solution even if it requires more effort.

share|improve this question
What version of the operating system do you use? What do you mean by a built-in solution? – Daniel Nov 7 '11 at 14:12
I've created a layout for programmers: it's in Italian, but you could easily do the same thing for any other layout. – o0'. Mar 16 '14 at 17:58
up vote 3 down vote accepted

To make the keyboard behave differently, you need a different keyboard layout.

You could create one by editing an XLM file manually, or you could use a third-party tool to create the keyboard layout (you don't need to be running a third-party program indefinitely once they layout is created and installed).

Ukelele is known for making it fairly easy to create new keyboard layouts for the Mac.

In any event, you want to switch the number keys (0-9) and the symbols attached to them. Save your new keyboard in ~/Library/Keyboard Layouts, and then select it as your keyboard.

share|improve this answer

I have not tried this, but I think DoubleCommand might let you do this. And I'm pretty sure you could implement this with TextExpander. I don't think you would necessarily need to create a different keyboard layout as Daniel suggests.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.