Skip to Content
BlogKeep code snippets in the IDE

The code abbreviation fired in WeChat. Lock the app

log expanding into a logging template in VS Code is the point.

The same four letters in WeChat drop a block of Python into a group chat. The abbreviation is fine. The trigger key is still on. You never told the expander to fire only in these apps.

Names, prefixes, and word boundaries are hygiene. That article is Abbreviation hygiene. Carets, extra files, and scripts live in Developer boilerplate. This one is only where. CodeExpander calls the gate ExpandIn. It is a Pro control.

ExpandIn · Only these apps
Only these applicationsPro
Search apps…
CancelSave

File/group ExpandIn: all apps, except, only these apps (Pro), disable. Search window and inline search stay unrestricted.

Lock the group first, then one file if you must

Open the group or a single snippet and find Only expand in these apps. For a code group, keep VS Code, JetBrains, the terminal. Leave chat and the browser unchecked. After you save, a foreground app that is not on the list leaves log as four letters.

An empty list means every app. That is the default. That is also why WeChat exploded.

A file-level list overrides the group. If the same abbreviation should become a shell command in the terminal and a paragraph in a doc, make two snippets and pin each to its apps. Do not hope one body will guess. If a window is not recognized, turn the limit off on that snippet instead of disabling the whole group.

The steps are in ExpandIn.

  1. Open the group you want locked, or the one file that already misfired.
  2. Search and check only the apps that should expand.
  3. Return to WeChat, type the same abbreviation, press the trigger. If nothing replaces it, the gate is on.

A support group can keep the browser and mail. A prompt meant for a web chat can keep the desktop browser you actually type in. Code stays in the IDE. Do not force the whole library through one allow-list.

Expand When decides what sits in front of the abbreviation: a word boundary, whitespace, a non-letter. ExpandIn decides which app is in front. Stack them if you need both. Tightening when and leaving where open is how WeChat still explodes.

It does not close the search window

ExpandIn only gates “type the abbreviation in the focused field, then press the trigger.” The hotkey search window and // inline search still insert. You picked a row. The keyboard did not rewrite you in the background.

Use ExpandIn for daily misfires. Use search when you forgot the name. Do not weld those into one switch.

Pause from the tray is still the master switch for a demo, a password field, or a game that needs raw keystrokes. ExpandIn is not that switch. See Pause expansion.

Free tier has no ExpandIn

Free includes 50 snippets and 5 groups, plus plain expand, FillIn, and capture. The full ExpandIn picker is on Personal, Lifetime, and Team. Amounts live in Pricing.

Until you upgrade, stop treating code abbreviations like English. Replace log, err, and fn with something you will not type by accident, add a group prefix, keep “require a trigger key.” That is hygiene, not a per-app lock.

Do not

  • Do not rely on being careful. Chat and the IDE share one keyboard.
  • Do not treat ExpandIn as a machine-wide pause. Screen-share coding still needs the tray.
  • Free tier has no ExpandIn. Rename first, or pause first.

Related: Abbreviation hygiene, Developer boilerplate, Expand.

Last updated