Logo
Overview
The mystery of the frozen Vietnamese input on macOS

The mystery of the frozen Vietnamese input on macOS

December 14, 2024
3 min read

Hello everyone! 👋

If you’re a macOS user who writes in Vietnamese, you probably know the feeling. You’re in the middle of an email or a coding session, and suddenly - bam - your Vietnamese input just stops working. 🙃

In my case, I use EVKey and it’s usually rock-solid. But every now and then, it would just “freeze”. I’d try switching the input method back and forth, restarting EVKey, or even logging out and back in. Sometimes, nothing worked except a full system restart.

It felt like I was stuck in a manual trap every time I wanted to type a simple sentence. I wanted to understand the how and why behind this so I could fix it without losing my work.

The Culprit: Secure Input

After some digging, I discovered the root cause: a macOS security feature called Secure Input.

Think of Secure Input as a protective shield. When you click on a password field, macOS automatically turns this on to prevent 3rd-party apps (like EVKey) from seeing what you’re typing. This is great for security!

The problem? Sometimes, an app “forgets” to turn off the shield after you’re done typing your password. This leaves EVKey blocked, unable to see your keystrokes to turn them into Vietnamese characters.

How I “unfreeze” it manually

Before diving into the terminal, I usually try a “soft reset” first. Sometimes, just locking your screen (CMD + Ctrl + Q) and logging back in is enough to nudge macOS into releasing the Secure Input state.

If that doesn’t work, then it’s time to find the specific app that’s holding the shield.

Step 1: Find the “Shield” holder

Open your Terminal and run this command to see which process (PID) is currently using Secure Input:

Terminal window
ioreg -l -w 0 | grep SecureInput

If Secure Input is active, you’ll see something like this:

Terminal window
| "kCGSSessionSecureInputPID" = 1234

In this example, 1234 is the unique ID of the app that’s causing the trouble.

Step 2: Release the lock

Once you have that ID, you can tell macOS to force stop that specific process. It’s like telling the app, “Hey, let go of the keyboard!”

Terminal window
sudo kill 1234

(Just replace 1234 with the actual number you found in Step 1!)

If you don’t recognize the number, you can find the name of the app in Activity Monitor before killing it. Usually, it’s something like a browser or a terminal that just got stuck in a secure state.

The result

The difference is night and day. No more manual trap of restarting the whole system. Now, when my keyboard freezes, I just run that one line command and I’m back to typing in seconds yahooo 🚀

It’s a small fix, but it makes the whole macOS experience feel much smoother and more professional. No more fighting with the OS - just understanding how it works and finding a better way to handle its quirks.

Final thoughts

Sometimes, the “bugs” we encounter are actually security features working a bit too hard! By understanding the why behind the problem, we can find elegant solutions that save us time and frustration 🐳

Have you run into this “frozen keyboard” issue on your Mac? I’d love to hear if this fix works for you! 😉

Thanks for reading! 😘