[kde-russian] Конвертация Java .properties и .po, туда-сюда
Alexey Morozov
morozov_ml на ngs.ru
Пт Ноя 13 14:13:21 MSK 2015
13.11.2015 17:03, Juliette Tux пишет:
> Угу, вылезают сто тысяч ошибок вида
> "...this is the location of the first definition
> duplicate message definition..."
Естественно. Потому что msgcat действует тупо: берет исходную строку на
английском, считает её за название проперти и, естественно, при таком
подходе
образуются дублирующие проперти, что, очевидно, является ошибкой (формат
предельно простой, "ключ=значение").
То есть, надо придумывать способ сделать ключи уникальными. Например,
туда можно вписывать контекст
<текст на английском>.<контекст>=<текст на русском>
Получится корявенько, но сработать должно. Или просто вместо <текст на
английском> вписывать translation_string_<N>.
Для этого можно проехаться awk'ом по исходной po'шке и поменять все
строки на английском на translation_string_<N>.
>
> и операция прерывается потому что много ошибок. Первый раз с явой имею
> дело, требуется конвертировать очень много пошек в дальнейшем,
> мне сразу застрелиться..?
"Лучше бы помучиться"
>
>
>
> 2015-11-13 13:55 GMT+03:00 Alexey Morozov <morozov_ml на ngs.ru
> <mailto:morozov_ml на ngs.ru>>:
>
> В целом, насколько я понимаю, никак. Джавные проперти не
> поддерживают контекст, а контекст нужен для того,
> чтобы разводить одинаковые (в английском), но разные по смыслу и
> переводам строки.
>
> Соответственно, если проблема эта возникает разово, то можно
> попробовать сделать так, как советует Шафоростов.
> Если контекст всё-таки требуется, то придется в название проперти
> вставлять ещё и контекст., и тогда уже лучше
> не sed, а хотя бы awk :)
>
> 13.11.2015 16:44, Juliette Tux пишет:
>> Добрый день!
>> Иммется файл .po, созданный из .properties не мной. У меня
>> возникает ошибка при попытке сделать из него снова .properties,
>> использую 'msgcat --properties-output', как сказано в доке на
>> gnu.org <http://gnu.org> (
>> https://www.gnu.org/software/gettext/manual/html_node/Java.html
>> ), вылезает ошибка gettext:
>> LocalizedEnums.po:20: message catalog has context dependent
>> translations, but the output format does not support them.
>>
>> В другой пошке жалуется на другую строку, с той же ошибкой.
>>
>> Как победить?
>> --
>> С уважением, Дронова Юлия
>>
>>
>> _______________________________________________
>> kde-russian mailing list
>> kde-russian на lists.kde.ru <mailto:kde-russian на lists.kde.ru>
>> https://lists.kde.ru/mailman/listinfo/kde-russian
>
>
> _______________________________________________
> kde-russian mailing list
> kde-russian на lists.kde.ru <mailto:kde-russian на lists.kde.ru>
> https://lists.kde.ru/mailman/listinfo/kde-russian
>
>
>
>
> --
> С уважением, Дронова Юлия
>
>
> _______________________________________________
> kde-russian mailing list
> kde-russian на lists.kde.ru
> https://lists.kde.ru/mailman/listinfo/kde-russian
----------- следующая часть -----------
Вложение в формате HTML было удалено...
URL: <http://lists.kde.ru/pipermail/kde-russian/attachments/20151113/93306a80/attachment.html>
Подробная информация о списке рассылки kde-russian