Skip to content

Similar tools English

mangokingTW edited this page Aug 15, 2026 · 3 revisions

Similar tools

繁體中文 · English · 简体中文 · 日本語 · 한국어

Others have built for this need — but every option hits a wall somewhere. This page is organised as problem → where the alternatives stall → how this utility gets past it, so you can see how its strengths answer the others' pain points.

Problem 1: they switch the input method/language, not the conversion mode

The alternatives (Windows' built-in "different input method per app window", most indicator tools) only remember which input method each window used. But the real irritation is the native/alphanumeric conversion mode within a Chinese IME — Windows treats it as per-thread, so switching windows snaps it back to the default. Across the English, Japanese and Chinese communities the stock advice for "switching windows flips my language" is to toggle that built-in setting — a partial fix, because it governs a different layer.

How this utility gets past it: it tracks and carries the conversion mode itself (via WM_IME_CONTROL IMC_GET/SETCONVERSIONMODE) to the next window — not just the input method.

Problem 2: AutoHotkey tools get blocked by anti-cheat

The closest peer, KBLAutoSwitch and similar, are built on AutoHotkey. For general automation AHK typically installs a low-level global keyboard hook and synthesises input with SendInput — exactly the macro signature anti-cheat (EAC / BattlEye / Vanguard) watches for, so it's often blocked or gets you flagged; game handling is left unaddressed.

How this utility gets past it: native C++ with no keyboard hook and no synthesised keystrokes at all (only a passive foreground WinEvent). It doesn't look like a macro tool, so it works inside anti-cheat games. (Verifiable: the whole src/ has no SetWindowsHookEx, SendInput, or keybd_event.)

Problem 3: they can't reach raw-input fullscreen games

The built-in setting and message tricks do nothing for a fullscreen game that reads the keyboard directly (e.g. Helldivers 2) — it doesn't participate in IME state management, and its executable path can't even be read.

How this utility gets past it: it uses TSF to set the input language at the framework level and identifies such games by window class, pinning them to English (see the Helldivers 2 guide).

Problem 4: indicator tools only display, they don't act

LangIndicator, ImTip and IMEIndicator only show the current state at the cursor or in the tray — no persistence, no app binding.

How this utility gets past it: persistence plus app binding plus a cursor indicator in one; the indicator is just one optional add-on, not the whole tool.

Problem 5: script building-blocks you have to assemble

AHK's IME libraries (s-show/IME.ahk, eamat's, etc.) are just blocks that read/set IME state; per-window persistence is left for you to write and maintain.

How this utility gets past it: a ready-to-run tray utility — install it and it works, no script to write or keep alive.

In one line

For everyday Chinese/English switching plus an indicator, tools like KBLAutoSwitch are already mature; but the moment you care about conversion-mode persistence across windows, using it inside an anti-cheat game, or not depending on AutoHotkey, this utility is the one built to clear those three walls.

Links

Clone this wiki locally