Multilingual Text Expander — Works in Every Language & Keyboard

Lightning Assist expands snippets in any app, in your language. This page explains exactly how expansion behaves on each keyboard and script, so you can pick the right mode and get started without guessing.

Try Lightning Assist Free — 14-Day Trial

Works across your apps, any language • No credit card required

Download Free Trial

Two Ways to Expand

Inline (as-you-type): you type your abbreviation and it expands instantly — no hotkey needed. The app reads your OS keyboard layout, so it sees the actual characters you type regardless of which script you use.

Hotkey mode: you press a configurable key combination to expand the snippet you just typed or selected. This method works regardless of language or input method, making it the safest choice whenever the inline path is unreliable (such as with IME-based input for CJK languages).

Inline Expansion by Script

Inline expansion works differently depending on the script you are typing in. Here is what to expect for each category:

Latin scripts

English, German, French, Italian, Spanish, Romanian, Portuguese, and any other Latin-based writing system work natively with inline expansion — nothing to configure. Lightning Assist reads your OS keyboard layout and matches the correct characters automatically. Your trigger is simply whatever text you type when you create the snippet — a plain word, or one with a leading character like ;sig or /addr to keep it distinct from words you type normally. It works on any Latin layout (QWERTY, QWERTZ, AZERTY): if you can type it, it fires. Your snippet's expansion text always supports full Unicode (é, ñ, ç, ă, ü, and any script).

Hebrew, Cyrillic, and other alphabetic scripts

Hebrew works with inline expansion — create your trigger in Hebrew and type it on your native keyboard layout. Cyrillic (Russian, Ukrainian, Bulgarian) keyboards use Hotkey mode: type your Cyrillic trigger (for example привет), then press your configured shortcut, and it expands instantly. Greek, Devanagari and other complex-layout scripts also use Hotkey mode. The trigger and your typing must be in the same script for the matcher to recognise them.

Japanese, Korean, Chinese (CJK)

Inline expansion cannot reliably work in IME composition mode. An IME (Input Method Editor) assembles characters internally before sending them to the app, which means Lightning Assist cannot read your keystrokes mid-composition. This is a system-level limitation that affects every text expander on every platform, not just Lightning Assist. Use Hotkey mode instead (see the section below), or use a short ASCII trigger typed in your IME's direct alphanumeric input mode.

At a glance: every language works

Snippet content can be in any language — full Unicode, including right-to-left and emoji. For triggering an expansion, inline works as-you-type on most keyboards, and the global hotkey works on every keyboard and input method — so no language is left out.

Language / keyboardInline (as-you-type)Hotkey (always works)
Latin (English, French, German, Spanish, Romanian…)YesYes
Arabic (right-to-left)YesYes
Hebrew (right-to-left)YesYes
Cyrillic (Russian, Ukrainian, Bulgarian…)Via HotkeyYes
Greek (Ελληνικά)Via HotkeyYes
Hindi / Tamil / Devanagari & IndicVia HotkeyYes
Thai (ไทย)Via HotkeyYes
Vietnamese (Telex / VNI)Via HotkeyYes
Chinese / Japanese / KoreanVia HotkeyYes

Many text expanders skip input typed through an IME (Chinese, Japanese, Korean, Hindi) by default — and none automatically detect your keyboard layout and switch expansion modes the way Lightning Assist does. Lightning Assist is built for every language: inline where your keyboard types a base punctuation key directly (Latin, Hebrew, Arabic), and via a global hotkey everywhere else (Cyrillic, CJK, Greek, Thai, Indic and more). Either way you create the trigger in your own script and type it exactly as you set it. And unlike Mac-only or Windows-only expanders, it runs natively on Windows, macOS and Linux.

Deep dives per script: the non-Latin text expander guide, Arabic text expander guide, Russian & Cyrillic keyboard guide, Chinese, Japanese & Korean (CJK) guide.

Japanese, Korean & Chinese — How to Expand

CJK users have two reliable options for triggering snippets. Both work consistently in any application.

You are never stuck as a CJK user — the Hotkey path is seamless once you assign a comfortable key combination in Lightning Assist settings.

Option 1 — Hotkey mode (recommended)

Assign a hotkey in Lightning Assist settings (for example, Ctrl+Space or a function key). Type or select your trigger abbreviation as usual, then press the hotkey. Lightning Assist expands the matched snippet immediately, without needing to intercept IME keystrokes. This works across apps and IME configurations.

Option 2 — ASCII trigger in direct input

Switch your IME to direct/alphanumeric input mode (the mode that types plain Latin characters without composition), type a short Latin abbreviation such as /jp1 or greet, and Lightning Assist will expand it inline. Switch back to your IME composition mode for the rest of your text. This option suits users who prefer not to use a hotkey.

Both options give CJK users the same snippet speed as any other keyboard. The only thing that differs is how the expansion is triggered.

How It Works Under the Hood

When you type, Lightning Assist asks your operating system which keyboard layout is currently active. It then decodes each keystroke using that layout, which is why the matcher sees the real characters you type — Hebrew, Arabic, or any other alphabet whose keyboard types a base punctuation key directly — rather than raw key codes. Cyrillic (Russian, Ukrainian, Bulgarian), complex-layout scripts (Devanagari and other Indic scripts, Greek, Thai) and IME languages (Chinese, Japanese, Korean) use Hotkey mode instead.

This OS-level layout decoding is what makes non-Latin alphabets work as long as your trigger is created in the same script. It also means switching between languages mid-session is handled correctly: if you switch your OS input to Russian, Lightning Assist switches with it automatically.

Start Using Lightning Assist in Your Language

14-day free trial, all features included. Windows, Mac & Linux.

Frequently Asked Questions

Does Lightning Assist work in Russian?

Yes. Russian (Cyrillic) works via Hotkey mode. Create your trigger abbreviation in Cyrillic — for example, прив — type it on your Russian keyboard layout, then press your configured shortcut, and Lightning Assist expands the snippet instantly. Just set a hotkey once in the app's settings.

Can I use Lightning Assist in Japanese?

Yes, using Hotkey mode. Inline expansion is not reliable in IME composition mode because the IME assembles characters before the app can read them — this is a universal limit across all text expanders, not specific to Lightning Assist. Assign a hotkey in settings, type your trigger, and press the hotkey to expand. You can also use a short Latin abbreviation in your IME's direct alphanumeric mode for inline expansion.

Do I need to change any setting for my language?

No. Lightning Assist reads your OS keyboard layout automatically, so alphabetic scripts like Latin, Hebrew, and Arabic work inline without any configuration. Cyrillic (Russian, Ukrainian, Bulgarian), Indic scripts (Hindi/Devanagari, Tamil), Greek, Thai, and CJK use Hotkey mode — set a hotkey once and every script works. Just create your trigger in the same script you type in.

What if my keyboard is not Latin?

If you type in a directly-keyed alphabet (Hebrew, Arabic), inline expansion works — create your trigger in that same script and type it on your native layout. For Cyrillic (Russian, Ukrainian, Bulgarian), Devanagari/Indic, Greek, Thai, and CJK (Japanese, Korean, Chinese with an IME), use Hotkey mode or an ASCII trigger in direct input mode. Both paths give you the same snippet speed.

Does it work with Vietnamese (Telex / VNI / Unikey)?

Yes — use Hotkey mode for triggers that contain Vietnamese diacritics. Telex/VNI/Unikey compose accents like an IME, so a diacritic trigger typed as-you-type is not reliably detected inline; the global hotkey reads the finished text and expands it every time, making it the safest and recommended way to trigger snippets in Vietnamese.

Related Pages and Snippets

Explore related guides, templates, and comparisons for your workflow.