MSI Lab - Форум по русификации

Программы для локализации => Редакторы ресурсов => Тема начата: FPhoenix от 09 Февраля 2013, 12:28:42

Название: Вынос ресурсов для версирования
Отправлено: FPhoenix от 09 Февраля 2013, 12:28:42
Привет, переводчики.
Я бы Beyond Compare (http://www.scootersoftware.com/) занялся - уж не знаю, как там доделаю или не доделаю, но что-то да наворочу. Обычно я ресурсы переводил с помощью PE Explorer (http://www.heaventools.ru/), а он хоть и позволяет извлекать ресурсы, но назад их пихать не хочет. А в проге довольно приличное количество дельфи-форм (.dfm), и порой она таки обновляется, так что хотелось бы это дело на Git (http://ru.wikipedia.org/wiki/Git) посадить. Не подскажите хорошую софтинку, которой можно было через гуй или скриптом извлекать всю эту шнягу, а потом запихивать обратно? Только желательно не на бейсике - ненавижу его, из-за чего, наверное, в первую очередь Resource Tuner Console долго смотреть и не стал даже... Хотя они там на WSH ссылаются, так что может и можно как-то JS прилепить?
Название: Вынос ресурсов для версирования
Отправлено: Solenij от 09 Февраля 2013, 22:36:19
А про шаблонные переводчики слышали? Например, Passolo, Radialix Localizer, Multilizer, Sisulizer и т.д. - они позволяют переводить интерфейс программ на Delphi, C++ и .Net в визуальном режиме.
Или я вопроса не понял?
Название: Вынос ресурсов для версирования
Отправлено: FPhoenix от 10 Февраля 2013, 01:50:02
Пассоло и тому подобные когда-то давно вертел - не понравились. Они же вроде сверху на прогу какую-то хрень вешают, а я хочу "нативно". Радиаликс с виду довольно мощный, но на моей машинке глючит. В любом случае у всех прог, которые заточены изменять только строки, есть один большой недостаток: если разработчик не рассчитывал на локализацию, то и интерфейс он дизайнил соответственно, и для хорошего перевода надо еще и размер да расположение контролов изменять: русские слова-то по длине отличаются от английских. Короче, ну их. Просто хочу извлекать ресурсы в файлы (целиком, чисто для ведения истории в VCS (http://ru.wikipedia.org/wiki/%D1%E8%F1%F2%E5%EC%E0_%F3%EF%F0%E0%E2%EB%E5%ED%E8%FF_%E2%E5%F0%F1%E8%FF%EC%E8)), а после перевода запихивать их обратно. Специальный редактор для дельфи-форм где-то валялся, хотя и не шибко нужен: скорее всего, как обычно, основным инструментом будет блокнот

(http://i.imgur.com/w3PRhJM.png) (http://i.imgur.com/qspBz7p.png)
Название: Вынос ресурсов для версирования
Отправлено: shkiper от 10 Февраля 2013, 08:57:34
FPhoenix, ну да, в Блокноте-то сразу видно, влезет фраза в оригинальный размер или нет. Радиаликс в этом плане, конечно, менее удобен. В нем все визуально отображается, можно менять размера мышкой, его разве это идет в сравнение!?

Куда интереснее про исходному коду диалогов с помощью фантазии восстанавливать внешний вид форм, в голове рассчитывать их  местоположения. Если контролов десятки, то вообще не проблема держать в голове все их координаты, и быть уверенным, что один на другой нигде не накладывается и т.п.

Я правильно понял ход мысли?
Название: Вынос ресурсов для версирования
Отправлено: FPhoenix от 10 Февраля 2013, 10:17:34
Я обычно и так смотрю на окно программы, которое перевожу, плюс есть такая штука, как виртуальные линейки. А в дизайнере форм, конечно, их менять удобнее, но мне как-то в данном случае не критично. Да и блокнотик у меня разными полезностями оборудован. К тому же если код формы изменится, то при налии его в полной мере на системе контроля версий, его несложно смержить, да потом еще и в любой момент открыть журнал да проверить, что конкретно там было изменено. А что в таких случаях делает Радиаликс? Плюс, повторюсь, он у меня глючит, да и не шибко я ему доверяю.

Кстати, у то же PE Explorer вполне удобный дизайнер, но не для дельфей.
Название: Вынос ресурсов для версирования
Отправлено: shkiper от 10 Февраля 2013, 13:12:19
FPhoenix, при обновлении ресурсов Радиаликс переводит все неизменные части точно так, как они были в прошлой версии, и нужно будет лишь доперевести новое.
Название: Вынос ресурсов для версирования
Отправлено: Solenij от 10 Февраля 2013, 22:08:45
FPhoenix, не сочтите за подкол, но так, как русифицируете программы вы, я делал в последний раз году так в 2006, т.е. 7 лет назад. Поверьте, прогресс за это время шагнул очень далеко.  
Цитировать
Они же вроде сверху на прогу какую-то хрень вешают, а я хочу "нативно".
Где вы прочитали такую ерунду? Шаблонные редакторы делают абсолютно всё тоже, что и редакторы ресурсов типа PE Explorer или Restorator, только еще показывают это всё визуально. А, например, в Radialix Localizer с помощью специального плагина можно еще полноценно работать со строками вне ресурсов, или как их сейчас называют с жестко-закодированными строками. Т.е. и редактор ресурсов+HEX-редактор+Отладчик в одном флаконе.
Я вас переубеждать конечно не буду, но попробуйте всё таки использовать шаблонники и все проблемы отпадут сами собой (не без исключений).
Цитата: FPhoenix
А что в таких случаях делает Радиаликс?
Хотите заниматься локализацией приложений - учите матчасть. Это единственное, что я могу посоветовать (не в обиду).
Название: Вынос ресурсов для версирования
Отправлено: NedMaker от 10 Февраля 2013, 22:40:51
Цитата: FPhoenix
Пассоло и тому подобные когда-то давно вертел - не понравились. Они же вроде сверху на прогу какую-то хрень вешают, а я хочу "нативно".
Насколько я знаю "какую-то хрень" вешает Ресторатор, метит измененные ресурсы, Пассоло и остальные не оставляют свои метки.
Название: Вынос ресурсов для версирования
Отправлено: Nexus от 11 Февраля 2013, 00:37:56
От себя добавлю, что OgreGUI тоже метит файлы - в начале PE секций прописывает свои инициаллы.
Название: Вынос ресурсов для версирования
Отправлено: Solenij от 11 Февраля 2013, 01:07:10
Цитата: NedMaker
Насколько я знаю "какую-то хрень" вешает Ресторатор, метит измененные ресурсы
А точнее добавляет некоторые байты для идентификации измененных ресурсов. И то, это отключается в настройках Restorator'а. Но никак не навешивает "какую-то хрень". Какую-то хрень навешивают протекторы, типа Themida или Armadillo, но это уже из другой оперы.
Название: Вынос ресурсов для версирования
Отправлено: FPhoenix от 11 Февраля 2013, 03:50:14
Под хренью я в первую очередь имел в виду доп. файлы типа blablabla.rus вместо изменения строк в оригинальных бинарниках. Какие-то хуки или что это?

Ну поставил я очередной раз радиаликсы проверить - и 2ю, и 3ю версии. Тяжелые и грузятся довольно долго, особенно 3я - у меня IDE раз 30 за это время успеет загрузиться и выгрузиться, а неплохие мысли по переводу порой приходят во время самой работы с прогой, и опробовать их хочется "здесь и сейчас". Гуй у ралиаликсов пригламуренный и тормознутый - работать неудобно. Файлы проекта - ну, хотя бы XML, а не бинарники - уже хорошо, хотя вручную править оригинальные ресурсы явно проще, чем эту егойную XML-ку. К себе привязывает. От дизайнера такого (http://i.imgur.com/ZiyIvwz.png) толку немного; во внересурсных же строках они мне выдали целую коллекцию названий классов, членов, и прочих объектов, а нужного ничего вроде бы и нету. Не исключено, что в данном случае разрабы нарочно все запихнули в ресурсы - они вона и неофициальные переведенные сборки у себя на сайте выкладывают (см. Download (http://www.scootersoftware.com/download.php) → Windows → User Contributed Translations). А если что и найдется, в PE Explorer есть вполне сносный дизассемблер; и хоть асму я понимаю довольно фигово, уж поинтеры строк (или как они там называются) подправить - небольшая проблемма.

Перевожу как умею, а "мат часть" учу по мере надобности. Прогресс ушел вперед? Ну буду аборигеном, тем более что я совсем не в восторге от направления, в котором он сейчас движется, да и вообще мне с "аборигенством" не привыкать. В последнее время правда больше работал со встроенными системами локализации типа Gettext (http://ru.wikipedia.org/wiki/Gettext) или на XML-основе, но и там решил отказаться от специальных гуевых редакторов в пользу блокнота да самописного инструментария: мне так проще + явно больше возможностей. В Gettext, например, сортирую строки как мне удобней + еще немного расширил базовый синтаксис тегами фолдинга.

Кстати, на тему аборигенства. Вон уже и .NET 4.5 вышел, и студия 2012, а я свои программки пишу под 3.5 (это студия 2008), а компилю так вообще в 2.0 (это 2005я): второй .NET ставится даже на Win98, а в новых я ничего особо ценного и не увидел (последний так у меня и вообще не встанет, ибо продолжаю юзать WinXP, и пофиг мне на эти ваши семерки-восьмерки). При этом основным инструментом у меня остается SharpDevelop (http://www.icsharpcode.net/opensource/sd/) третьей версии, хотя они на нее давно болт положили и разрабатывают четвертую: просто ненавижу WPF (http://ru.wikipedia.org/wiki/Windows_Presentation_Foundation). Ну и для работы с чужими проектами также стоит 2008 студия. Вон TortoiseGit (http://code.google.com/p/tortoisegit/) (там штатный перевод дрянной - от него сразу отказался, да потихоньку свой делаю) сейчас перешли на 2012ю - ну, немного поковырялся да настрочил себе конвертер проектов в 2008, который мне заодно и решение генерит чисто из языковых DLL-шек.
Название: Вынос ресурсов для версирования
Отправлено: ZeroChaos от 11 Февраля 2013, 09:27:48
Цитата: FPhoenix
Под хренью я в первую очередь имел в виду доп. файлы типа blablabla.rus вместо изменения строк в оригинальных бинарниках. Какие-то хуки или что это?
Это языковая библиотека, поддерживается программами, скомпилированными в среде ex-Borland (CodeGear, Embarcadero Technologies). Подгружает измененную секцию ресурсов из этой самой библиотеки, если ее положить рядом с оригинальным файлом, тем самым, нет необходимости в его модификации. Создавать языковую библиотеку, или же заменять оригинальные ресурсы в бинарном файле - настраивается в программе, посмотрите внимательнее.
Название: Вынос ресурсов для версирования
Отправлено: FPhoenix от 11 Февраля 2013, 11:14:07
Ясно. Ну в радиаликсе-то я нашел уже, да.
Название: Вынос ресурсов для версирования
Отправлено: Solenij от 12 Февраля 2013, 01:05:40
FPhoenix, хотел бы добавить к ответу ZeroChaos. В языковой библиотеке можно локализовать только секцию ресурсов, строки вне ресурсов надо будет изменять в исполняемом файле.
Цитата: FPhoenix
Ну поставил я очередной раз радиаликсы проверить - и 2ю, и 3ю версии. Тяжелые и грузятся довольно долго, особенно 3я
На самом деле, это очень странно, так как программа для своего потенциала очень шустрая. У меня работает быстро, хотя комп 2006 года. Да и не слышал я ни разу про Radialix, что он тормозит - как раз наоборот, только положительные отзывы.
Цитата: FPhoenix
во внересурсных же строках они мне выдали целую коллекцию названий классов, членов, и прочих объектов, а нужного ничего вроде бы и нету.
Всё должно быть, если всё правильно сделали. Radialix ищет все строки, а уж какие трогать, а какие нет, это зависит только от опыта переводчика. В любом случае, это лучше, чем поиск через HEX-редактор, если разговор идет о большом количестве внересурсных строк.
Цитата: FPhoenix
Перевожу как умею, а "мат часть" учу по мере надобности. Прогресс ушел вперед? Ну буду аборигеном, тем более что я совсем не в восторге от направления, в котором он сейчас движется, да и вообще мне с "аборигенством" не привыкать. В последнее время правда больше работал со встроенными системами локализации типа Gettext (http://ru.wikipedia.org/wiki/Gettext) или на XML-основе, но и там решил отказаться от специальных гуевых редакторов в пользу блокнота да самописного инструментария: мне так проще + явно больше возможностей. В Gettext, например, сортирую строки как мне удобней + еще немного расширил базовый синтаксис тегами фолдинга.
С этим не спорю - каждому своё. Я просто дал вам практический совет, без всяких намёков на что либо. Если вам удобнее так, то это ваше личное дело. Всё таки, это всего лишь наше хобби и не более.
Название: Вынос ресурсов для версирования
Отправлено: Nexus от 12 Февраля 2013, 13:10:12
Да ну это обычный выпендреж, типа "Вот, смотрите, какой я нагибатор, мне ваши цацки-Радиаликсы ненужны, я могу и каменным молотком русик вытесать!". Ну и что? Я тоже не пользуюсь шаблонниками, потому как мануал на 300 страниц читать лень  Хотя понимаю, что нужно переходить на более высокий уровень. И не кричу на каждом углу, что пользуюсь легкими прогами. А насчет торможения на компе, так это вообще пургу несешь! У меня тут рядом валяется ноут 2001 года - 256 мб ОЗУ, 16 мб видео, 900 Мгц и тянет Радиаликс 2 - нефиг делать!


_____________________________________________
Пожалуйста, будьте повежливее. Не в обиду. // VIPer
Название: Вынос ресурсов для версирования
Отправлено: FPhoenix от 12 Февраля 2013, 15:06:03
Nexus, да шел бы ты. Напишут прогу более высокого уровня, которая мне понравится - буду юзать. А так никаких "надо" не понимаю и понимать не хочу. Пох и на радиаликсы, и на "нагибаторов"; и рад за твой ноут.

-----------------------------------
Отвечая, тоже будьте сдержаннее. Продолжите - обоим сделаю "атата".