OS X

Removing the Caps Lock Delay on a Macbook

Update 9/23/2016: This solution is still going strong in El Capitan. I haven’t installed macOS Sierra yet, but it looks like the functions of Seil might be integrated in the new Karabiner-Elements. Karabiner is broken for now. When I update, I will edit this post with fixes for Sierra, if any.

I’m glad this post appears to have helped some people!

Original Post:
So, I recently ran across what Apple calls a feature, and what I call a pain in the butt. Namely, the caps lock button doesn’t always activate when you press it – you have to press it longer than usual to activate it. I’m a fairly fast typist, and I use a mechanical keyboard at work, so this drove me up the wall. This is supposedly to reduce accidentally activation of the caps lock key when you really meant to type the letter “A”, but that rarely, if ever, happens to me, so it just felt like punishment for typing quickly. I wouldn’t mind it if there was some easy way to turn it off and on, but I think we all realize by now that Apple doesn’t believe in turning off features they deem a part of their vision. (Like say, hiding the full url in the address bar.)

I found a workaround of a sorts, but it involves turning off and on the caps lock key in System Preferences > Keyboard > Modifier Keys, but there was a catch – sometimes it’ll forget your setting after rebooting or waking up, and you’ll have to do it again. Besides, it sounded like an hack-ish, unintended feature that Apple could take away at any moment. So I decided to go look for a slightly more permanent solution. Unfortunately, it does involve third party programs, but it definitely works (as of writing, on OS X Mavericks, 10.9.4)

This post and this documentation helped guide me to the right direction, though the names of the program have changed a bit. Here’s what you do:

  1. Install Seil and Karabiner.
  2. As per Seil’s documentation, go to System Preferences > Keyboard > Modifier Keys and change “Caps Lock” to “No Action.”

    OSX Caps Lock No Action

  3. Using Seil, check “Change Caps Lock Key” and change the key code to 110. (Application Key)
    Seil Change Caps Lock
  4. Go to Karabiner, and in the search box, enter “application key to capslock.” Under For PC Users > Change PC Application Key, check off “Application Key to CapsLock.”
    Karabiner Application Key to CapsLock
  5. Close the window. Done! Insanity averted, for now.

30 Comments

  • Mark

    Excellent, this caps lock issue has been driving me up the wall since I bought the mac. Just could not understand why they would configure the CL like that.

    Cheers

  • michelle

    when i open seil and expand the “caps lock” tree and check the “change caps lock” open, i can’t figure out how to then change the key code to 110… i see it in the list of key codes below, but i click it, double click, right click, etc. etc. and the key code still says 51! i follow all instructions exactly…. please help! this capslock thing is killing. me.

  • Eric

    Dumb question — when do you use caps lock? Is it just for those occasions when you need ALL CAPS?

    (Asking because I don’t think I ever use it — I held shift just there — and I’m wondering what I’m missing out on.)

    • Diana

      Super late reply, but I think it’s a quirk of how I (and perhaps some others) type. Basically, if I need to do more than 1-2 capitalized characters, like say, ‘FBI,’ I go to the caps lock key instead of holding the shift key. Just feels more efficient, I guess!

    • Erlend Palm

      It’s not just for typing. Caps Lock turns audio scrubbing on and off in Avid Media Composer and it’s annoying as hell when it doesn’t.

  • Chris

    This post helped me SO much with El Capitan. I can’t tell you how grateful I am to you for it!
    Now, unfortunately it no longer works with OS Sierra. Hopefully you can find another fix soon!
    Will be watching this post like a hawk for your update. :)
    Thank you.

  • Nathan Johnson

    After upgrading to Sierra and realizing that none of the previous workarounds help, and that also the caps lock delay now applies to non-apple branded keyboards, I came up with a keymap for the qmk firmware for my ergodox keyboard.

    This same basic technique could work for any keyboards that can use either QMK or TMK firmwares. That being said, I’m pretty sure that the number of people using TMK or QMK firmware that care about caps lock in the first place and have stumbled across this blog is probably exactly one person (me). But on the off chance that this might help someone else:

    http://qmk.fm/keyboards/ergodox/keymaps/osx_whiskey_tango_foxtrot_capslock/

  • Nathan Johnson

    So as a followup, it looks like now if you just install Karabiner Elements, disable caps lock in System Preferences -> Keyboard -> Modifier Keys as before, then with a blank mapping under “Simple Modifications” for Karabiner Elements it will actually enable caps lock with no delay.

    • Chris

      This looks hopeful, Nathan! Following your suggestion, I downloaded Karabiner Elements, disabled caps lock under Modifier Keys, then in Karabiner I went to “Simple Modifications” … but here, I’m kind of at a loss for what to do. How exactly do I “blank map” so that caps lock has no delay?
      Any wisdom would be appreciated!
      Cheers.

      • Diana

        Hey, Chris! If you hit “Add Item” but don’t actually select any From/To Keys via the dropdown, that should do the trick.

        However, you might want to check out the trick Michelle outlined below. I tried it and it seems to be working. I’ll update the main post soon!

  • michelle

    I FOUND A FIX FOR SIERRA!!!!!!

    System Preferences > Accessibility

    When the accessibility window is open — on the left part of the window – click keyboard

    Then there will be the 2 options — for sticky keys, and for slow keys — click the box next to slow keys to enable it — then click the “options” button – a new window will come up with a slider to change the acceptance delay — by default this is in the middle. slide the button all the way to the left, so that it is the shortest time possible.

    BOOM–FIXED! Have not experimented to see if the fix stays upon restart, but I’m hopeful that it will.

  • Rafa

    For those struggling with Sierra.

    Do all the steps until you reach the fourth. Until this date, the karabiner software isn’t available for Mac OSX Sierra, so download the Karabiner-elements instead. It does the same thing you are looking for – the link should be in the same page warning you about the incompatibility with your OS.

    Open the karabiner-elements and hit the “add item” button down below in “Simple modification”. Fill the “From key” space with “application” – it should be in the section written “Keys in pc keyboards” in grey. Next fill the “To key” space with the first option – on “modifier keys” – with caps_lock.

    Close the window and rush B to comemorate.

  • Chris

    The System Preferences > Accessibility fix in Sierra works great but has a horrible side effect of making cursor navigation horribly slow because now when you hold down a key it takes a looooonnnnnggggg time to do anything. I now feel like I’m back in the 1980s playing track and field.
    Why, oh why, oh why do Apple think this is a feature and why don’t they provide a way to turn the damned thing off ?

  • Onedrop'

    BUT THIS WORKS PERFECTLY:

    =>So as a followup, it looks like now if you just install Karabiner Elements, disable caps lock in System Preferences -> Keyboard -> Modifier Keys as before, then with a blank mapping under “Simple Modifications” for Karabiner Elements it will actually enable caps lock with no delay.
    => hit “Add Item” but don’t actually select any From/To Keys via the dropdown

    http://sleepycow.org/2014/07/removing-the-caps-lock-delay-on-a-macbook/comment-page-1/#comments

Leave a Reply

Your email address will not be published. Required fields are marked *