Локализация приложений
Модератор: Модераторы
-
divinusproject
- новенький
- Сообщения: 49
- Зарегистрирован: 16.05.2006 08:25:02
- Откуда: Барнаул
- Контактная информация:
Локализация приложений
Какие средства есть в Lazarus'е для локализации интерфейса приложений?
- Sergei I. Gorelkin
- энтузиаст
- Сообщения: 1409
- Зарегистрирован: 24.07.2005 14:40:41
- Откуда: Зеленоград
Тот же вопрос я задавал на мастерах делфи.
После обсуждений пришел к выводу - лучше сделать самому и ни от кого не зависеть.
Реализация у меня:
Массив strings, который подымается из файла.
В свойствах Captions пишу номер строки из массива.
При создании форм вызывается процедурина, которая перебирает все контролы формы и меняет номера на строки из массива.
Все это пишется за пол дня.
После обсуждений пришел к выводу - лучше сделать самому и ни от кого не зависеть.
Реализация у меня:
Массив strings, который подымается из файла.
В свойствах Captions пишу номер строки из массива.
При создании форм вызывается процедурина, которая перебирает все контролы формы и меняет номера на строки из массива.
Все это пишется за пол дня.
-
Replicator
- постоялец
- Сообщения: 154
- Зарегистрирован: 30.04.2006 17:14:45
- Откуда: Outer Heaven
- Контактная информация:
- Sergei I. Gorelkin
- энтузиаст
- Сообщения: 1409
- Зарегистрирован: 24.07.2005 14:40:41
- Откуда: Зеленоград
Философский вопрос: Если мы зависим от пары десятков мегабайт кода LCL, что изменится с появлением зависимости еще от сотни килобайт модуля gnugettext?
Если нумеровать строки - после того, как их количество в программе превысит некоторый порог, все просто расползется по швам... А что делать с сообщениями RTL, FCL и LCL?
Если нумеровать строки - после того, как их количество в программе превысит некоторый порог, все просто расползется по швам... А что делать с сообщениями RTL, FCL и LCL?
-
Replicator
- постоялец
- Сообщения: 154
- Зарегистрирован: 30.04.2006 17:14:45
- Откуда: Outer Heaven
- Контактная информация:
-
ViruZ
- постоялец
- Сообщения: 175
- Зарегистрирован: 30.05.2005 17:41:12
- Откуда: Украина
- Контактная информация:
А как заставить работать dxgettext с Лазарем? У меня при попытке скомпилировать проект вылетает ошибка компиляции:
Код: Выделить всё
gnugettext.pas(939,39) Error: Identifier not found "ResourceStringTableCount"
- Sergei I. Gorelkin
- энтузиаст
- Сообщения: 1409
- Зарегистрирован: 24.07.2005 14:40:41
- Откуда: Зеленоград
Есть опасение, что только путем доработки напильником, ибо написано оно под какую-то из первых версий FPC и с тех пор не менялось. (См. исходники packages/fcl-base/src/gettext.pp и rtl/objpas/objpas.pp на предмет того, что там теперь вместо ResourceStringTableCount).
Я сам это место вообще закомментировал, а resourcestrings 'перевожу' вызовом TranslateResourceStrings из "родного" gettext. Оно, конечно, коряво, и идея все это хозяйство доработать уже давно обитает в моей голове...
Я сам это место вообще закомментировал, а resourcestrings 'перевожу' вызовом TranslateResourceStrings из "родного" gettext. Оно, конечно, коряво, и идея все это хозяйство доработать уже давно обитает в моей голове...
- Alexx2000
- постоялец
- Сообщения: 491
- Зарегистрирован: 25.10.2006 00:22:07
- Откуда: Мытищи
- Контактная информация:
Сейчас же в Лазарусе можно включить поддержку i18n в настройках проекта. При этом по указанному пути будет автоматически генерироваться *.po файл, содержащий все resourcestring'и и строки всех форм.
А дальше работать с юнитами Translations, DefaultTranslator, GetText.
Я все это дело в Double Commander настроил, теперь все формы автоматом переводятся. Удобно
А дальше работать с юнитами Translations, DefaultTranslator, GetText.
Я все это дело в Double Commander настроил, теперь все формы автоматом переводятся. Удобно
Alexx2000 писал(а):Сейчас же в Лазарусе можно включить поддержку i18n в настройках проекта. При этом по указанному пути будет автоматически генерироваться *.po файл, содержащий все resourcestring'и и строки всех форм.
А дальше работать с юнитами Translations, DefaultTranslator, GetText.
Я все это дело в Double Commander настроил, теперь все формы автоматом переводятся. Удобно
Где это включается?
-
Padre_Mortius
- энтузиаст
- Сообщения: 1265
- Зарегистрирован: 29.05.2007 17:38:07
- Откуда: Спб
