Перевод сообщений Qt
Материал из Wiki.crossplatform.ru
(Различия между версиями)
ViGOur (Обсуждение | вклад) (Подправил ссылочку) |
Lit-uriy (Обсуждение | вклад) (→Установка перевода: уточнил :)) |
||
(6 промежуточных версий не показаны.) | |||
Строка 3: | Строка 3: | ||
== Исходные файлы перевода == | == Исходные файлы перевода == | ||
- | Команда [[ | + | В данный момент переводом ts-файлов занимется команда [http://www.prog.org.ru/topic_9713_0.html qt-l10n-ru]. |
- | * [http:// | + | |
+ | Команда [[Qt RTT]] внесла вклад в перевод этого файла для '''Qt 4.3.2'''. Перевод файла этой версии можно взять здесь: | ||
+ | * [http://trac.crossplatform.ru/qtrtt/browser/branch/qt4.3.2-ru/ts/qt_ru.ts?format=raw qt_ru.ts] | ||
== Установка перевода == | == Установка перевода == | ||
Строка 12: | Строка 14: | ||
#* В командной строке, в каталоге '''%QTDIR%\translations''', скомандуйте <code>lrelease ''qt_ru.ts''</code> | #* В командной строке, в каталоге '''%QTDIR%\translations''', скомандуйте <code>lrelease ''qt_ru.ts''</code> | ||
# Скопируйте файл %QTDIR%\translations\qt_ru.qm в каталог с исполняемым файлом вашей программы. | # Скопируйте файл %QTDIR%\translations\qt_ru.qm в каталог с исполняемым файлом вашей программы. | ||
- | # Добавте в функцию main() следующие строчки: | + | # Добавте в функцию main() вашей программы следующие строчки: |
{{code|qt | {{code|qt | ||
|code=// загрузка перевода | |code=// загрузка перевода | ||
Строка 19: | Строка 21: | ||
translator->load(QString("qt_") + locale); // загрузка файла qt_*.qm* | translator->load(QString("qt_") + locale); // загрузка файла qt_*.qm* | ||
app.installTranslator(translator); // устанока переводчика}} | app.installTranslator(translator); // устанока переводчика}} | ||
- | + | '''''Замечание:''''' В некоторых системах имя локали может включать не только язык, но и страну. Например, '''ru_RU''', поэтому лучше держать две копии qm-файла: | |
- | + | * qt_ru.qm | |
- | + | * qt_ru_RU.qm | |
- | + | т.к. зарание вы можете не знать точное имя локали пользователя. | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
== Актуализация перевода == | == Актуализация перевода == |
Текущая версия на 21:07, 18 сентября 2009
Для перевода сообщений, встроеных в библиотеку Qt, на русский язык необходим исходный файл перевода для русского языка (qt_ru.ts). Этот файл обычно расположен в каталоге %QTDIR%\translations.
Содержание |
[править] Исходные файлы перевода
В данный момент переводом ts-файлов занимется команда qt-l10n-ru.
Команда Qt RTT внесла вклад в перевод этого файла для Qt 4.3.2. Перевод файла этой версии можно взять здесь:
[править] Установка перевода
- Поместите файл qt_ru.ts в каталог %QTDIR%\translations
- Создайте скомпилированый файл перевода (qt_ru.qm), одним из следующих способов :
- Откройте файл qt_ru.ts спомощью QT Linguist, в меню "Файл" выберите "Релиз";
- В командной строке, в каталоге %QTDIR%\translations, скомандуйте
lrelease qt_ru.ts
- Скопируйте файл %QTDIR%\translations\qt_ru.qm в каталог с исполняемым файлом вашей программы.
- Добавте в функцию main() вашей программы следующие строчки:
// загрузка перевода QString locale = QLocale::system().name(); // запрос языка (например: "ru") QTranslator* translator = new QTranslator; // создаем переводчик translator->load(QString("qt_") + locale); // загрузка файла qt_*.qm* app.installTranslator(translator); // устанока переводчика
Замечание: В некоторых системах имя локали может включать не только язык, но и страну. Например, ru_RU, поэтому лучше держать две копии qm-файла:
- qt_ru.qm
- qt_ru_RU.qm
т.к. зарание вы можете не знать точное имя локали пользователя.
[править] Актуализация перевода
(предстоит написать)