Blog16 September 20263 min read

Dictating in Hinglish on a Mac

Every dictation tool I have used starts by asking which language I am about to speak. I do not know. I am going to speak both, and the switch is going to happen in the middle of a noun.

A speech bubble in Hinglish, “Yeh button dabao toh state reset ho jaata hai…”, turning into an English brief with a cropped screenshot of the button, and a language picker crossed out.

The sentence that breaks everything

Here is a thing I would actually say to a colleague, pointing at a screen:

"Yeh button dabao toh state reset ho jaata hai, but sirf tab jab modal already open ho."

Two languages, one clause. The technical nouns stay English because they are the names of things in the code. The grammar around them is Hindi because that is how the sentence assembled itself. Nobody who talks like this is doing it for effect — it is just faster.

Set your dictation to Hindi and button, state and modal come out as approximate Devanagari of the English sounds. Set it to English and the Hindi becomes confident nonsense. Both settings are wrong for the same sentence, and you get to pick which half to lose.

Why the tools ask

Because for most of their history they had to. On-device recognisers — including Apple's, which is genuinely good — load a language model per language. The model is the thing that decides whether a sound is a word, so the language is not a preference, it is a prerequisite. Ask it for English and it will find English in anything, including in Hindi.

Cloud models built on Whisper do not have this constraint in the same way. They were trained on a lot of languages at once and will detect what they are hearing, and — more useful here — they can be asked to translate rather than transcribe. Point a mixed-language sentence at a translation endpoint and what comes back is one coherent English sentence, not two half-broken ones.

What that gets you

The Hinglish sentence above comes back as something close to:

"If you press this button the state resets, but only when the modal is already open."

Which is what you meant, in the language your codebase and your coding agent are both already in. You did not translate it. You said the fast thing and the accurate thing arrived.

This is worth being precise about, because it is a trade and not a free win: you get English out, always. If you wanted the Hindi preserved verbatim — a quote, a message to someone who speaks it, a transcript for a person rather than a machine — this is the wrong tool and you want a straight transcription in Hindi instead.

Options on a Mac today

How Deiko handles it

There is no language setting, because there is no question to answer. You hold the hotkey, point at the thing, and talk however the sentence comes out. The audio goes to whisper-large-v3's translation endpoint and comes back as English, which then goes into the brief alongside the screenshot of whatever your cursor was on.

Screenshots and the brief itself never reach Deiko's servers. The audio travels to be transcribed, and it is deleted as soon as the text exists. To file each brief in the right task, Deiko sends what you said, a one-line summary of it, your window titles (with anything that looks like a key stripped) and a few lines about your earlier tasks through its relay to a sorting model. Deiko keeps none of it. If you would rather your audio skipped our servers, bring your own API key — or keep it on the Mac with Apple's on-device recogniser and accept the single-language limit above.

Install Deiko · More writing