How to Disable Autocorrect in Specific Apps on Mac
macOS does not have a built-in per-app autocorrect toggle. The system setting is all-or-nothing: either autocorrect is on for every native app, or off for all of them. The fastest workaround is Charm, which lets you enable or disable autocorrect app by app. You can also disable it globally and rely on Charm only where you want it, or use app-specific settings where available.
Can you disable autocorrect for just one app on Mac?
Not using macOS settings alone. Apple's autocorrect system operates at the OS level through the NSTextView framework. When you turn it on or off in System Settings, that change applies to every native app on your Mac simultaneously. There is no checkbox for "disable autocorrect in Mail but keep it in Notes."
This is a real frustration for anyone who types in a mix of contexts throughout the day. You might want autocorrect active when writing emails but turned off in your code editor, markdown files, spreadsheet formulas, or casual chat windows where informal shorthand is intentional. The binary system-level toggle makes none of that possible natively.
There are three practical routes around this limitation:
- Use Charm - the most flexible option, with a per-app toggle for any application
- Use app-specific settings - some apps (VS Code, Slack) have their own spell-check controls
- Turn off macOS autocorrect globally and manage corrections manually or through Charm
Developers spend an average of 8 minutes per day correcting autocorrect-introduced errors in code. Per-app control eliminates that category of interruption entirely.
How to disable autocorrect in a specific app using Charm
Charm is a native macOS writing assistant that runs in your menu bar. Unlike the system autocorrect toggle, Charm tracks which app is in focus and applies your correction preferences per application. You can set it to correct aggressively in your email client, lightly in a note-taking app, and not at all in your code editor - and those settings persist automatically.
To disable autocorrect for a specific app using Charm:
- Open the app where you want to disable autocorrect, so it is the active window in focus.
- Click the Charm icon in your Mac menu bar while that app is in focus.
- Toggle off autocorrect for that specific app in Charm's settings panel. Charm reads the active app and applies the change to that context only.
From that point forward, Charm stays silent in that app while continuing to correct text everywhere else. The preference is saved automatically - you do not need to repeat the process each session.
This approach is particularly useful for apps that do not have their own spell-check controls. Notion, Obsidian, Bear, linear project boards, and most Electron-based tools fall into this category. Charm gives you per-app control even where the app itself offers none.
How to disable autocorrect in specific app types
Some app categories have their own built-in controls worth knowing about.
VS Code
VS Code is an Electron app, which means it renders inside a Chromium shell rather than using macOS's native NSTextView framework. As a result, macOS system autocorrect does not apply to VS Code at all - it bypasses the OS correction layer entirely.
If you are seeing unwanted corrections in VS Code, they are coming from a VS Code extension (such as a spellchecker plugin) rather than macOS. You can disable those inside VS Code's settings panel, or search for "spell" in the Extensions tab to find and disable any active spellchecking extensions.
If you are using Charm and want to exclude VS Code specifically, use Charm's per-app toggle while VS Code is in focus.
Terminal
Terminal.app and iTerm2 do not use NSTextView for input, so macOS autocorrect never applies to terminal sessions. You will not see spelling corrections, autocomplete suggestions from the OS, or any autocorrect behaviour in a terminal window. This is by design - shell commands and scripts would break immediately if autocorrect were active.
If you are using a different terminal emulator that does show corrections, check its own preferences for a spellcheck or autocorrect toggle.
Slack
The Slack desktop app on Mac is also Electron-based, which means macOS system autocorrect does not reach it either. Slack has its own built-in spellcheck engine. To disable it: open Slack, go to Slack in the menu bar, then Preferences, then Advanced, and uncheck "Check spelling as you type."
Other code editors and markdown tools
Most modern code editors (JetBrains IDEs, Sublime Text, Nova, Zed) handle their own text input without routing through NSTextView, so macOS autocorrect typically does not apply. Native Mac writing apps like iA Writer, Ulysses, or Byword do use NSTextView and will follow the system autocorrect setting - making Charm's per-app toggle the right solution for these.
The nuclear option: turning off macOS autocorrect system-wide
If you find yourself fighting autocorrect more than it helps, disabling it globally is a valid choice. The path in macOS Sonoma and later is:
- Open System Settings
- Go to Keyboard
- Under Text Input, click Edit next to your input source
- Uncheck "Correct spelling automatically"
This removes autocorrect from all native Mac apps in one step. It is the right choice if autocorrect causes more friction than it resolves - common for developers, technical writers, and anyone who frequently types jargon, code snippets, proper nouns, or abbreviations that the system consistently mangles.
After turning off system autocorrect, you can use Charm as a targeted replacement. Charm gives you corrections that are smarter and more configurable than the built-in system, and you can tune them app by app rather than living with the same blunt system-wide behaviour.
Frequently asked questions
Can I disable macOS autocorrect for just one app?
Not natively. macOS autocorrect is a system-wide toggle with no built-in per-app control. The best workaround is Charm, which lets you disable autocorrect for any specific app while keeping it active everywhere else.
How do I stop autocorrect changing code in VS Code?
VS Code is an Electron app, so macOS autocorrect does not apply to it by default. If you are seeing corrections inside VS Code, they are coming from a spellchecking extension. Disable it from the Extensions panel. You can also use Charm's per-app toggle to exclude VS Code from any active correction rules.
Does Terminal have autocorrect on Mac?
No. macOS Terminal does not use NSTextView, so the system autocorrect engine does not apply. You will not see spelling corrections or autocorrect behaviour in Terminal.app or iTerm2 by default.
How do I turn off autocorrect for all apps on Mac?
Go to System Settings, then Keyboard, then Text Input, then click Edit next to your input source. Uncheck "Correct spelling automatically". This disables macOS autocorrect globally across all native apps.
Autocorrect on your terms.
Enable or disable correction per app, per context. Charm gives you control that macOS doesn't. $9.99, yours forever.