PDA

Просмотр полной версии : FLEI - MTK LangPack Editor/Importer/Exporter


FuntUA
10.01.2011, 17:16
Представляю вашему вниманию бесплатный редактор языков для MTK6225-6235.
Позволяет редактировать ленгпак и/или переносить ленгпак из одной прошивки (из нескольких прошивок) в другую выбирая перевод в зависимости от контекста (близлежащих фраз ленгпака), что позволяет качественно перевести грамотный перевод из одно прошивки в другую (например учитывать, что фраза Off переводиться в разных местах как Выключить, Выключено, Выкл. и переводить такие фразы в новой прошивке правильно).

Более подробное описание и инструкция здесь (http://flei.ho.ua).
http://flei.ho.ua/images/edit_win_small.jpg (http://flei.ho.ua/images/edit_win.jpg)http://flei.ho.ua/images/import_win_small.jpg (http://flei.ho.ua/images/import_win.jpg)
http://flei.ho.ua/images/Editor_small.jpg (http://flei.ho.ua/images/Editor.jpg)http://flei.ho.ua/images/import_small.jpg (http://flei.ho.ua/images/import.jpg)

Текущая версия 1.05.
Windows x86 версия. (http://flei.ho.ua/FLEI.zip)
Windows x86_64 версия. (http://flei.ho.ua/FLEI_64.zip)
Linux версия. (http://flei.ho.ua/FLEI_Linux.ZIP)
Поблагодарить (http://flei.ho.ua/donate.html)

Просьба отписываться об ошибках и замечаниях.

papsi
10.01.2011, 18:07
Вы что автор этой проги или так....

FuntUA
10.01.2011, 18:21
Вы что автор этой проги или так....
автор проги

papsi
10.01.2011, 18:53
автор проги

Мне кажется (да простит автор) алгоритм работы немного сложноват..BIN1, BIN2 понятно что это для экспорта- импорта. но не совсем понятно ИМЕННО как. С ручным поиском Лэнгпака тоже не АЙС- 4байта, смещение тут отнять там прибавить.. Я думаю люди далёкие от WinHex не поймут как это применить. Слава богу есть автопоиск языков. Сохранение лэнгпака отдельно в двух файлах???? хотя понятно зачем.
Сорри отвлёкся. При первом знакомстве с программой не совсем понятно что и куда сохраняется. Хорошо что есть WRITE to BIN можно сразу сохранить изменения. Но с экспортом -импортом пока не разобрался.
И что нового по сравнению с версией 1.4

А вообще радует то , что есть такие люди готовые поделиться плодом своего труда с другими пользователями. Ваша прога по-моему единственная возможность отредактировать тот телефон, которым пользуешься (не имею ввиду коммерческие масштабы). По-этому РЕСПЕКТ и УВАЖУХА. Спасибо.
Будут мысли обязательно поделюсь
И что нового по сравнению с версией 1.04

FuntUA
10.01.2011, 20:59
Мне кажется (да простит автор) алгоритм работы немного сложноват..BIN1, BIN2 понятно что это для экспорта- импорта. но не совсем понятно ИМЕННО как.
Ну, в общем-то согласен, но раз разобраться и дальше можно нормально работать. Разбираться там не так и много, просто наверное много лишнего в интерфейсе...
Импорт делается очень просто. Импорт происходит всегда из BIN1 в BIN2.
Как только выбран и прочитан язык, который импортируется и язык вместо которого нужно вставить новый импорт закончен.
Т.е. выбираем языки для BIN1 жмем Read, выбираем языки для BIN2, жмем Read, появляется новая таблица с языками - это результат импортаю
Теперь, если остались непереведенные фразы открываем новый BIN1, выбираем язык, жмем Read и непереведенные фразы опять импортируются из нового BIN1 в BIN2.
Это сделано для того, чтобы можно было портировать хороший перевод из одной прошивки в другую.
Незнаю реализован ли такой принцип в платных программках, которые используют словарь, но в FLEI при наличии нескольких вариантов перевода, по умолчанию выбирается тот, который наиболее подходит именно для конкретной фразы.
Т.е., в зависимости от места в прошивке одна и та же фраза переводилась по разному, так как она должна переводится именно в конкретном месте, а не во всех одинаково.
С ручным поиском Лэнгпака тоже не АЙС- 4байта, смещение тут отнять там прибавить.. Я думаю люди далёкие от WinHex не поймут как это применить. Слава богу есть автопоиск языков.
В ручную нужно было вводить смещения, пока не был реализован автопоиск.
Сейчас эта функция осталась, но нужды в ней нет, если автопоиск нашел языки.
Но автопоиск не идеальный, он не читает данные о языках из прошивки, а просто ищет языки по формату ленгпака в MTK.
Именно по этому до сих пор нужно выбирать scat оффсет, если с текущим язык не найден, так как пока программа тоже не читает эту инфу из прошивки.
Сохранение лэнгпака отдельно в двух файлах???? хотя понятно зачем.
Это тоже было нужно, пока не была реализована запись результата в прошивку. Тогда эти данные можно было всунуть в прошивку в ручную в WinHex, сейчас, опять же, в 99% скорее всего эти файлы никому не нужны. Но лично мне иногда они нужны, поэтому функцию записи в файл оставил.
И что нового по сравнению с версией 1.04
В каждой версии исправление мелких багов, по сравнению с 1.04 исправлен серьезный баг с редактированием, когда нарушался порядок фраз. В предыдущих версиях добавлялся автопоиск, запись в прошивки и всего по чуть-чуть.
На новую версию пока косметические изменения, исправления бага при вылете программы, если начать искать фразу без выделения какой-то фразы в таблице...

А так хотелось бы реализовать работу с MTK6253, но пока что-то остыл, незнаю возьмусь ли.
А вообще радует то , что есть такие люди готовые поделиться плодом своего труда с другими пользователями. Ваша прога по-моему единственная возможность отредактировать тот телефон, которым пользуешься (не имею ввиду коммерческие масштабы). По-этому РЕСПЕКТ и УВАЖУХА. Спасибо.
Будут мысли обязательно поделюсь
Спасибо. Программа и задумывалась как программа для пользователей, которые хотят подправить язык своего телефона под себя, но не готовы платить деньги за серьезный продукт по работе с китайскими телефонами.
Ну и возможно я ошибаюсь, поскольку не имел дела с коммерческими программками такого типа, но мне кажется они не подходят для "требовательных" пользователей и "эстетов" :), поскольку при переводе по словарю всегда получим посредственный перевод.
Поправьте, если я таки ошибаюсь и контекстный перевод прошивок в коммерческих программах реализован.

wn1
11.01.2011, 17:58
Ну и возможно я ошибаюсь, поскольку не имел дела с коммерческими программками такого типа, но мне кажется они не подходят для "требовательных" пользователей и "эстетов" :), поскольку при переводе по словарю всегда получим посредственный перевод.
Поправьте, если я таки ошибаюсь и контекстный перевод прошивок в коммерческих программах реализован.
Позволю себе здесь отписаться. Думаю, что Вы заблуждаетесь. Любой из коммерческих продуктов хоть и базируется на принципах перевода по словарю, но позволяет и переводить фразы вручную, а так же изменять и пополнять словарь при ручном переводе. Конкретно в нашем продукте, например, реализована поддержка нескольких вариантов перевода в словаре для одной фразы с выбором из списка предложенных вариантов. Так же возможно и разделение тех самых "склееных" строк - это когда фраза записана 1 раз, а указатели на фразу расположены в нескольких индексах, т.е. фактически одна фраза используется в нескольких местах. То есть требовательные пользователи могут в том числе и сделать разное написание всех вариантов строки. То есть у "эстетов" всегда остается возможность для "манёвра", а автоперевод - только первый шаг к созданию действительно качественного перевода.

WolfsHunter
13.01.2011, 17:37
Кстати идея с экспортом - импортом весьма неплоха. Для экспорта можно брать прошивки флаев, будет в самый раз

papsi
13.01.2011, 20:26
Уважаемый FuntUA , если вдруг решите продолжить работу над программой, было бы неплохо добавить такую функцию - как удаление не нужных Лэнгпаков. Со всеми вытекающими последствиями, т.е. преобразовывая освободившееся место в 0xFF, или 0x00, 0x11. Я думаю Вам виднее... Конечно всё это можно сделать в Hex, но было бы проще при помощи Вашей проги... Я не беру во внимание платный софт, который всё это делает( ChinaResMan например). В общем было бы здорово....

Да и поиск по фразам иногда отказывается работать

Георrий
15.01.2011, 21:07
...неплохо добавить такую функцию - как удаление не нужных Лэнгпаков. ...

А я не вижу смысла в удалении лишних ленгпаков. Если бы при этом перераспределялась память, увеличивалась для хранения фото, видео и т.д., тогда был бы смысл. А так какая разница там 0xFF, 0x00, или мусор. Может в платном софте так и есть, не знаю, он мне недосягаем и за такие деньги не нужен для моих двух "китов". Напрягает лишь одно - при редактировании телефонной книжки перебирать 22 языка чтобы вернуться к предыдущему. А может эта фигня присутствует только в SciPhonах? это, как я понимаю, управляется программной логикой которую изменять доступно только разработчику. Хорошо если это всего лишь счётчик количества языков в котором заменил 22 на 2-3 и - "ву а ля" - 2-3 языка и больше ни один не мешается.
А вообще программа FuntUA гора с плеч таким вот дятлам как я, который Hex редактором и Notepadом ковырял ленгпак стараясь, по возможности, втиснуть свою фразу в имеющуюся. Ещё и без возможности записи в прошивку она уже была бесценной поскольку давала возможность редактировать и сохранять результат в двух файлах которые вставлялись в прошивку Нех редактором, даже несмотря на баги в первых версиях. А сейчас вообще красота - берёшь перевод из одной прошивки и импортируешь в другую. Все дльнейшие доработки это уже как тюнинг. Молодец FuntUA!

papsi
15.01.2011, 22:38
А я не вижу смысла в удалении лишних ленгпаков. Если бы при этом перераспределялась память, увеличивалась для хранения фото, видео и т.д., тогда был бы смысл. А так какая разница там 0xFF, 0x00, или мусор. Молодец FuntUA!
Категорически с Вами согласен что FuntUA просто THE BEST .
Но удаление ненужных языков по моему просто необходимость, потому как это освобождает так необходимое место в прошивке. Даже при редактировании языка и замене фразы на более длинную, эту фразу нужно куда-то вписать. платный софт разбивает фразу на части и ищет место в прошивке, куда её можно записать. Прога от FuntUA действует по этому же принципу. А если вдруг Вы захотите добавить пару виртуальных клавиатур? Или можно использовать свободное место под МР3...
А для хранения аудио и видео есть карта памяти. у меня на 8Гб, вполне достаточно.
Моё мнение не претендует на истину....:icq23:

FuntUA
16.01.2011, 14:18
Любой из коммерческих продуктов хоть и базируется на принципах перевода по словарю, но позволяет и переводить фразы вручную, а так же изменять и пополнять словарь при ручном переводе.
Я имел в виду реализацию идеи поиска наилучшего перевода для данной строки в зависимости от соседних строк "хорошего" ленгпака. Т.е. при импорте ленгпака смотреть на то, в каком окружении находится текущая переводимая строка. Это позволяет перенести правильный, уже хорошо вылизанный перевод из одной прошивки в другую.
------------------------------------------------
Добавлено позже:
А я не вижу смысла в удалении лишних ленгпаков. Если бы при этом перераспределялась память, увеличивалась для хранения фото, видео и т.д., тогда был бы смысл. А так какая разница там 0xFF, 0x00, или мусор.
В принципе смысл есть, заполнение свободного места с 0xFF, 0x00 нужно только для идентификации свободного места. А дальше его можно использовать для каких-угодно целей. Например для замены вшитых midi на mp3, которые значительно больше по размеру midi, вот их можно прописать на освободившееся место, а в таблице ресурсов просто исправить ссылку с midi на mp3 прописанном в новом месте.

По поводу удаления языков. В принципе это можно сделать. Но тогда возникает проблема с виртуальными клавиатурами, которые могут сбиться, а я пока незнаю формат клавиатур и как уменьшить их число. Поэтому пока не буду браться за языки.
Сегодня хочу выложить очередную версию, где испрвлены ошибки с поиском и добавлена возможностьредактирования имени языка и кода языка, но только для прошивок в формате master full, ну и муторно пока, нужно вручную скат оффсет водить, неудобно, но будет пока так.

FuntUA
16.01.2011, 21:19
Обновил версию до 1.06.
Изменения:
- исправил ошибку при поиске в случае, если ни одна строка таблицы фраз не выделена
- добавил возможность нечувствительного поиска
- убрал кнопку перестановки местами настроек BIN1 и BIN2
- добавил возможность изменения имени и кодов языка (имя которое отображается в меню, код для выбора языка), пока работает только если смещения найдены автопоиском языков.

wn1
16.01.2011, 23:37
Я имел в виду реализацию идеи поиска наилучшего перевода для данной строки в зависимости от соседних строк "хорошего" ленгпака. Т.е. при импорте ленгпака смотреть на то, в каком окружении находится текущая переводимая строка. Это позволяет перенести правильный, уже хорошо вылизанный перевод из одной прошивки в другую.
Чем больше различие ленгпаков в фулах тем меньше преимущества метода по сравнению со словарным. А в случае больших различий и большого потока это и вовсе становится неудобным. У всего есть свои плюсы и минусы.
Я лишь оспорил Ваше заявление о том что коммерческие проекты "не подходят для "требовательных" пользователей и "эстетов". Это прямое заблуждение. Возможно Вы и имели ввиду довольно интересную идею по анализу рядом стоящих строк, но одного только этого недостаточно чтобы перечеркнуть все преимущества других проектов, причём коммерческих.

FuntUA
17.01.2011, 10:51
Чем больше различие ленгпаков в фулах тем меньше преимущества метода по сравнению со словарным. А в случае больших различий и большого потока это и вовсе становится неудобным. У всего есть свои плюсы и минусы.
Я лишь оспорил Ваше заявление о том что коммерческие проекты "не подходят для "требовательных" пользователей и "эстетов". Это прямое заблуждение. Возможно Вы и имели ввиду довольно интересную идею по анализу рядом стоящих строк, но одного только этого недостаточно чтобы перечеркнуть все преимущества других проектов, причём коммерческих.
Я совсем не заявлял, что коммерческий софт не подходит для требовательных. Поскольку с коммерческим софтом дела не имел, то я просто спрашивал о его возможностях и не больше.
И совсем не перечеркивал преимущества других проектов, более того, я уверен, что работа, за которую платят, делается лучше. Конечно коммерческие проекты в этой области намного мощнее, это в основном мультикомбайны, которые позволяют делать все, что нужно. Я же делал программку с набором функций, которые нужны были лично мне в определенный момент времени.