psilogic: (Default)
[personal profile] psilogic
Мой локализатор стал еще более монстроидальным :)

"Родил" новую версию 2.0.

В ней нового:
- поддержка проектов Visual Studio 2003-2010
- поддержка сложных сборок с исходниками, разбросанными по разным папкам, не обязательно сборка "студией"
- поддержка Unicode-локализаций
- поддержка Qt-локализаций
- поддержка загрузки локализации из ресурсов
- папка с готовыми примерами
- перевод хэлпов на английский

Итого теперь есть 4 варианта локализации: ANSI (UTF8), Unicode, Qt, .rc/.rh файлы. В исходниках локализованные строки выглядят как переменные типа extern const char*, extern const wchar_t*, extern QString.

Date: 2010-08-16 05:46 pm (UTC)
From: [identity profile] thedeemon.livejournal.com
Клево! Особенно за подробную документацию респект.

>Пометьте этим префиксом все строки, подлежащие локализации

Вот это, как и в случае с gettext'ом, самый задалбыващий пункт, если уже существующий проект интернационализировать. Я как раз для этого себе трансформер с++ исходников на окамле сделал, который понимал всякие "строка", T("еще"), _T("еще"), L"и еще" и все, кроме последнего, заменял на ТТ("строка") - мой макрос, а L"строки" оставлял, ибо там только сильно служебные вещи были. При этом еще отчет генерил, где все уникальные строки обоих типов приводил, дабы можно было переводить. Правда, после такой автоматической конвертации пришлось около половины строк менять на L"..." как не подлежащие переводу.

Date: 2010-08-16 06:22 pm (UTC)
From: [identity profile] psilogic.livejournal.com
Да, когда проект еще не локализован, это еще та бодяга. Поэтому первая функция, которую я сделал для localizer-а - это как раз автоматическая расстановка префиксов:

localizer -mark <префикс> +мояпроекта.vcproj

Ну а потом об этом голова уже не болела, префиксы ставил и шел дальше, зная, что можно не торопиться с локализацией, но ничего и не забудется.

Date: 2010-08-17 05:45 am (UTC)
From: [identity profile] thedeemon.livejournal.com
-mark _T("aa") превратил в _T( LS"aa"), а L"string" в L LS"lstring". Нехорошо.

Date: 2010-08-17 08:39 am (UTC)
From: [identity profile] psilogic.livejournal.com
Нормально, с этими строками все равно надо что-то делать, но что именно - неочевидно. Пометки по крайней мере привлекут к ним внимание.
Page generated Aug. 21st, 2025 08:30 am
Powered by Dreamwidth Studios