[РЕШЕНО] Translations, gettext, без LCL

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

[РЕШЕНО] Translations, gettext, без LCL

Сообщение Brainenjii » 10.07.2012 09:27:13

Не могу найти какого-нибудь минимального примера - как можно перевести ResourceString секцию без LCL? И менять тексты ресурсов без перекомпиляции? Спасибо.
Последний раз редактировалось Brainenjii 10.07.2012 13:15:55, всего редактировалось 1 раз.
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Re: Translations, gettext, без LCL

Сообщение Mr.Smart » 10.07.2012 10:04:43

Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Translations, gettext, без LCL

Сообщение Brainenjii » 10.07.2012 10:12:23

Это я видел ^_^ Но как пользоваться - не понял :oops:

Добавлено спустя 6 минут 21 секунду:
я хочу нечто такого:
Код: Выделить всё
Program SimpleTranslation;
Uses
  MagicTranslatorUnit; // что здесь должно быть?
ResourceString
  rsText  = 'Text';
Begin
  MagicTranslate('/path/to/ru.po');
  WriteLn(rsText); // Текст
  MagicTranslate('/path/to/fr.po');
  WriteLn(rsText); // Texte
End.

разумеется, что в ru.po и fr.po все необходимые переводы есть
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Re: Translations, gettext, без LCL

Сообщение Mr.Smart » 10.07.2012 10:24:21

Линука под рукой к сожалению нет, но подозреваю, что функция итератор будет выглядеть как то так:
Код: Выделить всё
function Translate(Name,Value : AnsiString; Hash : Longint; arg:pointer) : AnsiString;
begin
  Result:=gettext(Value+CRLF);
end;
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Translations, gettext, без LCL

Сообщение Brainenjii » 10.07.2012 11:21:56

Если найдёте время - буду просто счастлив полноценному минимальному примеру для консольной программы ^_^
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46

Re: Translations, gettext, без LCL

Сообщение Sergei I. Gorelkin » 10.07.2012 12:19:38

Код: Выделить всё
uses gettext;

begin
  translateresourcestrings('path/to/ru.po');  // все resourcestring переведены.
end;
Аватара пользователя
Sergei I. Gorelkin
энтузиаст
 
Сообщения: 1407
Зарегистрирован: 24.07.2005 14:40:41
Откуда: Зеленоград

Re: Translations, gettext, без LCL

Сообщение Mr.Smart » 10.07.2012 12:29:03

Sergei I. Gorelkin интересно. Что-то раньше не замечал. Вот только он использует не .po, а .mo.
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Translations, gettext, без LCL

Сообщение Brainenjii » 10.07.2012 12:30:12

КРУТО!!! Спасибо!!!
Аватара пользователя
Brainenjii
энтузиаст
 
Сообщения: 1351
Зарегистрирован: 10.05.2007 00:04:46


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

Рейтинг@Mail.ru