This question already has an answer here:
I've installed macOS Sierra and I got an annoying behavior, which I'm trying to solve:
Prior to Sierra (and in Windows, too): I have two languages - English and Hebrew. I'm switching between them using cmd+space. When in English, I'm using the caps lock to write uppercase letters. That's the exactly same behavior as any other English keyboard user. However, when using Hebrew as the input source, I'm using caps lock to write in english (small letters only). In this way, I can use some english terms in my hebrew sentences (which is quietly common, to be honest). This is the behavior in Windows too.
Since Sierra: Apple disabled this function, so when I'm using Englis I can use caps lock to move between uppercase and lowercase as excepted. However, when in Hebrew - the caps lock does not work (the green light automatically turns off).
I'll note that when Googling this issue, I saw that Apple added the ability to switch languages using the caps lock. That solution does allows me to switch between Hebrew and English, but it rises another problem - In English, I can't switch between uppercase and lowercase letters (since the caps lock already mapped to switch between input sources). The only way to get into uppercase letters, is to hold the caps lock for 3 seconds, and that makes it very hard to type.
Anyone knows how to restore the functionality of the caps lock to the old, good, way?