On a Windows machine, pressing and holding a keyboard key results in the character being repeated. For example, if I press and hold q for a few seconds, I end up with the following:


Similarly, I can press and hold the Backspace key to delete multiple characters.

On a Mac pressing and holding a key for several seconds results in the character being typed only once. To type it repeatedly, it is necessary to physically press it multiple times.

I'm unclear about whether that is a bug or a supposed-feature, but I am interested in replicating this functionality on a Mac.

Any ideas?

A couple of notes and additional ideas to supplement the selected answer:

The speed of repetition of characters (how many characters are added per second when a key is held down) can be controlled by adjusting the "Key Repeat" option under System Preferences => Keyboard (Keyboard tab). However, if the fastest speed is not fast enough (it wasn't for me), you can further adjust this setting by opening Terminal and typing:

defaults write NSGlobalDomain KeyRepeat -int 0

Where 0 indicates the minimum speed (smaller is faster). The fastest that can be set by the system preferences is 2, so the other two remaning, faster options are 1 (fast) and 0 (fastest).

The amount of time it takes for key repetition to begin can also be set by adjusting the "Delay Until Repeat" option under System Preferences => Keyboard (Keyboard tab). Again, if this is still too slow for you (as it was for me), you can set an even faster speed by opening Terminal and typing:

defaults write NSGlobalDomain InitialKeyRepeat -int 4

Where 4, again, can be adjusted (smaller is faster). I'd highly recommend you do not set this option under 4, though, because that would just be impossibly fast (touching a key for a mere split second would type about 10 repeating characters). I ended up setting mine to 7, which might still be too fast for me.

Use at your own risk! :)

Source for information: MacWorld

  • 1
    Actually anything lower than defaults write -g KeyRepeat -int 1 is treated as the same speed as 1. I'd like the setting to be somewhere between 2 (30 ms) and 1 (15 ms), but floats seem to be just rounded down to the nearest integer. – Lri Dec 1 '11 at 22:05
  • what are the default values in case I want to revet ? – f0nz Nov 21 '13 at 15:05

Run this in Terminal:

defaults write -g ApplePressAndHoldEnabled -bool false
  • Thank you thank you thank you, that's perfect! As a note, I'll add you must restart the computer for this to take effect :) – Yuval Dec 1 '11 at 7:05
  • @Yuval Reopening applications or logging out and back in works as well – Lri Dec 1 '11 at 8:28
  • Aha! You're absolutely right. – Yuval Dec 1 '11 at 18:13
  • 3
    Even though this is over a year ago, I would stop and remind people that this has the negative side effect of removing the "press-and-hold-choose-international-or-unicode-character" that Apple touts. – Jann Jan 22 '13 at 16:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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