Docs / Features / Languages

Languages

Ditto has two language settings — one for what you see, one for what you say. Here's how they relate.

Two settings, one app

There are two places “language” appears in Ditto:

These are independent. You can have Ditto’s UI in English and transcribe in Spanish, or UI in Japanese and transcribe in French. Pick whatever combination matches how you actually work.

App language

Settings → General → Interface language offers nine options:

Changes apply immediately, no restart needed. The pill, settings, tray menu, and welcome window all update on the spot.

Transcription language

Settings → Audio → Language controls what Whisper expects to hear. Same nine options as the UI: auto-detect or one of the eight languages.

For details on how this affects accuracy and latency, see the Audio input page. Quick summary:

Translate to English

There’s a third option that interacts with transcription language: Settings → Audio → Translate to English. When on, Whisper translates your speech into English regardless of which language you spoke.

This is independent of the UI language. You can have a Spanish UI and still get English text out of every transcription.

See the Audio input page for use cases and caveats.

Why two settings?

Practical reasons:

Adding more languages

The eight current languages are the ones Whisper handles best at all model sizes and the ones with translated UI. Adding more requires:

If you’d like to contribute a translation, the strings live as JSON files in the repo at src/shared/locales/. Open an issue or PR on GitHub — every language file is about 200 keys.