macOS keyboard input sources
Set a different keyboard input source for each app on Mac
When your work moves between an English-first editor and a chat app in another language, a single global keyboard setting creates avoidable mistakes. The practical goal is simple: decide which macOS input source each app should start with, then keep that choice consistent.
First, add the input sources in macOS
Open System Settings → Keyboard → Text Input → Edit, then add the keyboard layouts or input methods you use. Apple calls these input sources; you can select them from the Input menu or switch them with a keyboard shortcut. Apple’s step-by-step guide is here.
Why the built-in behavior may not be enough
macOS can remember an input source for a document or let you switch manually, but a multilingual workflow often needs a fixed rule: for example, ABC in Terminal and VS Code, then a Chinese, Japanese, Korean, or other input source in Messages. That is an app-level preference, not just a shortcut for changing the current source.
Use a per-app rule
- Open InputAnchor from the menu bar.
- Add the app you want to configure.
- Select the macOS input source that app should use.
- Repeat for the few contexts that matter most, such as an editor, terminal, chat app, and browser.
When you switch to a configured app, InputAnchor restores its selected system input source. It can also keep a global default for apps without a dedicated rule.
A note about third-party IMEs
InputAnchor can control input sources that macOS exposes. Some third-party IMEs keep a Chinese/English sub-mode as their own private state rather than as a separate macOS input source. An app cannot inspect or lock that private mode; in that case, configure the system-visible input source and use the IME’s own control for its internal mode.
Try the workflow before buying
InputAnchor includes a 14-day free trial, so you can test your actual apps and installed input sources before purchasing. It requires macOS 14 or later.