On macOS, holding down an alphanumeric keyboard key (such as e, a, or u) does not repeatedly print the character across your screen. Instead, Apple displays an iOS-inspired pop-up accent menu featuring diacritical alternatives (such as é, è, ê, ë). While this behavioural design is convenient for multi-lingual writers typing occasional accent marks, it introduces massive friction for software engineers, command-line terminal navigators, Vim/Emacs users, and gamers who rely on holding down keys to navigate text lines, repeat backspaces, or control movement in desktop software.
Why Does macOS Suppress Key Repeat by Default?
Apple introduced the “Press and Hold” accent pop-up to standardise keyboard input behaviours between iOS touch screens and desktop Mac computers. By intercepting sustained key presses, macOS halts the traditional hardware repeat mechanism to present the numbering options palette. For programmers navigating code inside terminal emulators, code editors like VS Code, or command-line text editors, this pop-up interrupts cursor flow and prevents rapid character repetition.
How to Disable the Accent Menu and Enable True Key Repeat
Because Apple does not provide a graphical toggle switch for the Press and Hold feature within standard System Settings, you can configure macOS via the Terminal using the native defaults command:
- Open the Terminal application on your Mac (press Command + Space, type
Terminal, and press Enter). - To disable the accent pop-up globally across your entire user account, type or paste the following command into the terminal prompt:
defaults write -g ApplePressAndHoldEnabled -bool false - Press Enter to execute the command.
- For the configuration to take effect across all running software, either restart your Mac or log out and log back into your macOS user account. (Alternatively, quitting and relaunching individual applications will apply the change immediately to those specific apps).
Once active, pressing and holding any letter key will rapidly repeat that letter continuously until you release the key, restoring traditional typewriter and computing behaviour.
How to Configure Key Repeat Rate and Delay Until Repeat
Now that true key repetition is unlocked, you can fine-tune the speed and responsiveness of repeated keys using macOS System Settings:
- Click the Apple menu in the top-left corner of your display and choose System Settings….
- Scroll down through the sidebar navigation and select Keyboard.
- Locate the two horizontal sliders:
- Key repeat rate: Move the slider towards Fast to increase the speed at which characters stream across the screen when a key is held down.
- Delay until repeat: Move the slider towards Short to minimise the pause between your initial physical key strike and the onset of repeated characters.
- Click inside any text field to test your preferred typing feel.
Targeting Specific Applications Only (e.g. VS Code or Terminal)
If you prefer retaining the accent menu in consumer applications like Apple Mail or Safari, but require key repeat inside your development environment, you can apply the override specifically to individual application bundle identifiers:
For Visual Studio Code:
defaults write com.microsoft.VSCode ApplePressAndHoldEnabled -bool false
For Cursor Editor:
defaults write com.todesktop.230313mzl4w4u92 ApplePressAndHoldEnabled -bool false
How to Restore the Default Apple Accent Menu
If you ever decide to revert back to Apple’s original pop-up accent character behaviour, simply reopen Terminal and run:
defaults write -g ApplePressAndHoldEnabled -bool true
Log out and back in to restore the native Press and Hold menu across your Mac.
Typing Accents When Press and Hold is Disabled
Disabling the accent menu does not mean you lose the ability to type accented characters. You can still produce all accented letters using standard macOS Option key dead-key shortcuts:
- Acute accent (é): Press Option + e, then release and press the letter (e.g. e).
- Grave accent (è): Press Option + `, then press the letter.
- Umlaut / Diaeresis (ë): Press Option + u, then press the letter.
- Circumflex (ê): Press Option + i, then press the letter.
- Tilde (ñ): Press Option + n, then press the letter.