avatar_Teodorrrro

MindGenius

Автор Teodorrrro, 05 июля 2015, 17:39:00

« Перевод интерфейса IDA PRO | Join Multiple SWF Files Into One Software »

TeodorrrroАвтор темы

Всем привет!
При переводе MindGenius (программа для создания ментальных карт) столкнулся со следующими проблемами.

Не могу найти названия стилей для перевода.



Не могу найти названия категорий для шаблонов на панели выбора шаблонов справа (см. скриншот). В ресурсах названия присутствуют, но игнорируются как в файле русского языка (*.rus), так и при изменении этих строк в оригинальном файле.


Не знаю, как извлечь и изменить значки команд ленты. В ресурсах окон RCData они обозначаются как свойства Glyph.Data = {бинарные данные, то есть сам значок}. например, мне хочется русифицировать значок сортировки и кнопки стилей текста (ЖКЧ).


Программа написана на одной из последних версий Delphi. Корректно с ней работать позволяет только Passolo 2015 (поддерживает Embarcadero® Delphi XE).

Программа и неоконченный перевод:
Показать / Скрыть текст
Пароль архива стандартный.
Если уже была запущена английская версия программы, то перед копированием русскоязычных файлов необходимо удалить файл Toolbars.ini в папке C:Users<имя пользователя>AppDataRoamingMindGeniusV6

Leserg

Не удалось мне запустить программу с твоими локализованными файлами. Не находит файл Welcome.mgtx, хотя в указанном каталоге он есть. Программа показывает пустое окно и аварийно завершает свою работу.



Где-то переведено что-то лишнее. Объем локализации большой, тяжело сказать где и что. Это я пока добавил в каталог только один локализованный файл MindGenius.rus и нема дела. Да, и формат файла MindGenius.rus странный - это исполняемый файл с расширением .rus. Локализованная библиотека ресурсов должна быть на порядок меньше. Проверь настройки проекта.

Названия стилей и категории шаблонов прописаны в файлах с расширением *.mgmt (папка "Templates"). Файлы представляют собой архив ZIP, который содержит бинарные данные с массивами изображений и текста. Необходимо разбираться с внутренним форматом файла - это долгая песня.

Так как я не смог увидеть локализованную версию в работе, то мне не совсем понятен вопрос:
Цитата: teodorrrroНе знаю, как извлечь и изменить значки команд ленты.

Зачем извлекать значки, если на них нет текста? Или имеются в виду всплывающие подсказки:



Если так, то они находятся в главном исполняемом файле.
Кто ищет, тот всегда найдет!

TeodorrrroАвтор темы

Leserg, см. выше текст, выделенный жирным.

TeodorrrroАвтор темы

Я хочу перерисовать некоторые значки.

TeodorrrroАвтор темы

И это не ZIP архив, а Compound-файл ("составной" файл): Войдите на сайт для перехода по ссылке

Leserg

Цитироватьсм. выше текст, выделенный жирным.
Не помогает! Локализованная версия не запускается.

Открой у себя файл Toolbars.ini в текстовом редакторе, просмотри его на предмет наличия текста на русском. Если найдешь такие строки, то отмени их перевод в проекте и создай локализованные файлы заново. Дай эти файлы в студию.

ЦитироватьИ это не ZIP архив, а Compound-файл
Вполне возможно. Я сужу по заголовку файла "РП", глядя на него в НЕХ-редакторе. :wink:  

ЦитироватьЯ хочу перерисовать некоторые значки.
Я бы сначала завершил отладку локализации, а потом брался бы за графическую часть. Хозяин - барин.
Кто ищет, тот всегда найдет!

TeodorrrroАвтор темы

05 июля 2015, 23:15:01 #6 Последнее редактирование: 05 июля 2015, 23:27:38 от Teodorrrro
Только что установил заново и проверил на виртуальной машине - всё работает! :cry:  Может, стоит попробовать удалить раздел реестра HKEY_CURRENT_USER\Software\MindGenius? Почему у меня работает на трёх, считай, компьютерах, ума не приложу. Файл Toolbars.ini создаётся после запуска программы. И если перед копированием русскоязычных файлов этот файл удалить, то при следующем запуске в этом файле уже будут русские надписи, и удалять его уже в следующий раз не понадобится, разве что если какая-нибудь русская надпись будет изменена в локализованных файлах, то тогда нужно удалить этот файл снова. То есть программа не запускается только при несовпадении надписей в локализованном файле приложения и в этом непонятном файле ini.

dinis124

05 июля 2015, 23:40:08 #7 Последнее редактирование: 05 июля 2015, 23:45:59 от dinis124
После установки скопировал все файлы rus в каталог программы. Все работает нормально.
После того как залез в ехе файл, модифицировал его и снова запустил то увидел то же самое что у Leserg. После этого и оригинальный не работает и ошибка такая же и баг репорт. склонен что замешан реестр.

p.s
Извините, я с телефона пишу о том что делал час назад. Нет, я не пробовал удалять файл указанный вами. Но если настройки в этом ini файле то видимо да. Прогу не удалял с утра проверю.

TeodorrrroАвтор темы

dinis124, даже после удаления Toolbars.ini?

Leserg

В исполняемом файле переведены лишние строки, которые идут в реестр и файл Toolbars.ini. В реестре вообще получается тихий ужас:



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

TeodorrrroАвтор темы

Может, дело в Windows XP?

 Надеюсь, при отмене части перевода в самом интерфейсе не останутся непереведённые куски!
У меня в реестре кодировки не изменены, а в тех разделах следующее:


Нашёл предполагаемое место со строками, которые переносятся в реестр. Проверяю...
Да, переведенные строки из реестра исчезли. Однако, в окне экспорта HTML теперь некоторые пункты на английском.


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

TeodorrrroАвтор темы

Установил на Windows XP - всё работает, даже с русскими названиями в реестре, которые, кстати, в нормальной кодировке.

Показать / Скрыть текст

[свернуть]

Leserg, осмелюсь предположить, что проблема на вашей стороне. :sad:

mishem

ЦитироватьLeserg, осмелюсь предположить, что проблема на вашей стороне.

Думаю дело в этом

ЦитироватьЭто я пока добавил в каталог только один локализованный файл MindGenius.rus и нема дела.

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

При переводе нужно четко понимать что именно переводится. Иногда опасно даже списки (выпадающие списки), чекбоксы и даже кнопки переводить, если автор программы сделал "проверку" по тексту. Ну и т.д.

TeodorrrroАвтор темы

06 июля 2015, 14:32:52 #13 Последнее редактирование: 06 июля 2015, 14:33:15 от Teodorrrro
mishem, дело в том, что некоторые одни и те же значения используются несколько раз. Но даже в таком случае не возникало никаких сбоев, и программа работает нормально.

mishem

Цитата: teodorrrroдело в том, что некоторые одни и те же значения используются несколько раз

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

Показать / Скрыть текст
[свернуть]

На первый взгляд кажется что можно перевести много строк. Но переводу подлежит только Miscellaneous Expression, и то я точно не уверен, но по идее это всплывающая подсказка.
Можно сделать перевод слов Maximum, Minimum, misc, и т.д. Но их переводить нельзя. Может быть программа и будет работать, да и даже скорей всего будет (не охота проверять), но их переводить нельзя! Это может быть название объекта, константа, значение и т.д. к которым по этому слову будет где то, когда то обращаться какая нибудь команда. Вполне возможно что пользователь даже не увидит ошибки, отображение ошибок может быть просто отключено, программа обработает событие по какому нибудь условию, типа если произошла ошибка, выполнится совсем другое действие. Пользователь даже не поймет, но команда выполнится не верно!

Я не говорю что у тебя именно в переводе что то не правильно, не смотрел. Но если хотя бы у одного пользователя из тысячи перевод работает не верно, а оригинал верно, то это вина не на стороне пользователя, а переводчика. Повторюсь, не имею ввиду именно твой перевод, просто обобщаю. Бывают ситуации, в ресурсах грубо говоря может быть 100 одинаковых слов, но перевести можно только одно. Кто то ищет это одно слово, а кто то переводит все сто.

* Ваши права на сайте

    Light Portal

  • Вы можете просматривать элементы портала
  • Вы не можете управлять блоками
  • Вы не можете управлять своими страницами
  • Вы не можете размещать свои страницы без модерации

    Simple Machines

  • Вы не можете удалять темы.
  • Вы не можете создавать темы.
  • Вы не можете отвечать на сообщения.
  • Вы не можете прикреплять файлы.
  • Вы не можете изменять свои сообщения.
  • Вы не можете удалять свои сообщения.

Яндекс.Метрика Каталог@MAIL.RU - каталог ресурсов интернет