Qt Reference Documentation

# Internationalization Example

Files:

- declarative/i18n/i18n.svg
- declarative/i18n/qml/i18n/i18n.qml
- declarative/i18n/main.cpp
- declarative/i18n/i18n.pro
- declarative/i18n/i18n.qmlproject

This example shows how to enable text translation in QML.

## Introduction

The QML runtime automatically loads a translation from the i18n subdirectory of the root QML file, based on the system language. The translations are held in QM files that must be generated from TS files.

## Updating Translations

The `.ts` files are created and updated by running:

     lupdate i18n.qml -ts i18n/base.ts

If no translation file exists, one will be created. If a file already exists, it will be updated to contain the latest strings from the QML file.

Translations for new languages are created by copying `i18n/base.ts` to `i18n/qml_<lang>.ts` The TS files can then be edited with Qt Linguist:

     linguist i18n/qml_fr.ts

The run-time translation files are then generated by running:

     lrelease i18n/*.ts