|
|
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
LSVЕсли динамичные названия берутся из ресурсов или констант, то достаточно перевести их ....и окажется, что там параметры фразы идут в другом порядке в другом языке. LSVн-р парсить пары Hello/Привет Привет Windows 10, в которой "новый" перевели как "создать", потому что и то и другое маппилось ан слово New Короче, да, "Проблема решаема", но она совсем не так проста, как ты написал. И в итоге учитывая все эти по мере разработки всплывающие новые и новые сложности - ты придешь к сложному велосипеду собственной выделки, аналогичному чужим велосипедам. LSVКод "локализатора" полностью под контролем разработчика. То же самое с опенсорсным или купленным с исходниками локализатором. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 12:12:33 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
YuRockВставил в гугл (или другой какой машинный переводчик, это не принципиально как раз, дело вкуса) Приципиально. Потому что ГУгл - статистический переводчик, и например в любом политизированном тексте он многое переведет буквально наоборот. Потому что на разных языках, условно говоря, козлами разных людей называют. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 12:13:47 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
AriochYuRockВставил в гугл (или другой какой машинный переводчик, это не принципиально как раз, дело вкуса) Приципиально. Потому что ГУгл - статистический переводчик, и например в любом политизированном тексте он многое переведет буквально наоборот. Потому что на разных языках, условно говоря, козлами разных людей называют. Так я не понял, это хорошо или плохо? Мне лично иногда (речь об английском) приходилось использовать multitran для выбора наиболее подходящего перевода в контексте. А иногда и консультироваться с профессиональным переводчиком-человеком. А иногда - и с людьми-"носителями" языка. Так что, статистический или нет, всё равно любой перевод руками/глазами проверять/править обязательно. Но для "шаблона" чаще всего и машинный сгодится. Что майкрософтовский, что гугловский, что ещё чей-то, что онлайн, что оффлайн, всё равно перевод будет требовать проверки/правки в обязательном порядке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 12:46:06 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
schiУже надоели нечитаемые инструкции, техническая литература и кривая локализация программ. Ну так это проблемы имиджа разработчиков этих нечитаемых инструкций и программ. Сайт майкрософт, например, (в частности MSDN) частично переведен на русский. А страницы, которые (еще) не переведены - переводятся машинным переводом и добавляется предупреждение об этом . В этом польза тоже есть. И не хочешь - не читай - нажми на кнопку "Открыть на языке оригинала". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 12:49:30 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
AriochТо же самое с опенсорсным или купленным с исходниками локализатором. Чушь. Там кода в 50 раз больше. И он может быть вообще на другом языке и меть возможностей в разы меньше, чем указанный простой метод. Коллега, хочу услышать Ваш вариант решения сабжа. С простым добавлением языка за 2 минуты. Без перекомпиляций, с динамической сменой языка. С возможностью легкого встраивания в готовый проект. Сразу скажу, что когда-то попробовал неск. "готовых" решений. Все до одного - полнейшее, в реале непригодное УГ. Н-р одно из них предлагало на каждый язык делать отдельную папку с копией всего проекта. 5 языков= 5 копий всего проекта ! Пять, Карл ! С крайне неудобным добавлением нового языка. Без малейших удобств для перевода. Перевод = просто по всей ветке проекта меняешь тексты. Ручкаме ! Без возможности переключения языка на лету. Просто получаешь ЕХЕ/ДЛЛ на нужном языке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 13:02:46 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
LSV Коллега, хочу услышать Ваш вариант решения сабжа. а как проблему решают разработчики Лазаря или та же Эмбаркадера? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 13:16:04 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
YuRockschiУже надоели нечитаемые инструкции, техническая литература и кривая локализация программ. Ну так это проблемы имиджа разработчиков этих нечитаемых инструкций и программ. Ну да, я могу повторить, что они должны сдохнуть, потому что с таким имиджем жить невыносимо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 13:19:45 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
UnHolyDayГоспода, добрый день! Имею вопрос: каким макаром можно локализовать дллку с формами? Пробовал TM, Sisulizer - эффекта ноль. В идеале возможность рантайм переключение между языками. Delphi XE.В Demo проектах есть (раньше был) проект RichEdit, где язык переключается на лету, используются средства ITE. Там в коде, в модуле Reinit.pas есть место, где определяется имя файла, откуда грузить ресурсы, вот есть функция Код: pascal 1. Видимо при инициализации форм происходит что-то подобное, а в вашем случае библиотеки Дельфи "не знают", что нужно имя заменить. М.б. если написать что-то подобное, как в модуле Reinit.pas, указать имя нужного файла ресурсов, можно решить проблему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 13:20:00 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
ДокLSV Коллега, хочу услышать Ваш вариант решения сабжа. а как проблему решают разработчики Лазаря или та же Эмбаркадера?А хз. :) Наверно модули с ресурсами. В некот. проектах есть тхт-файл локализации, а сам проект сделан на переменных, которые зачитываются из этого файла. На самом деле вариантов немного. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 13:22:03 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
LSVБез возможности переключения языка на лету а нет простых решений у сложных проблем вот например с "на лету" - выводим мы на окно, в какой-нибудь statictext внизу довольно большой и сложный текст с десятком параметров. Этакий анализ ситуации и рекомендации. и тут пользователь переключил язык. получается, что все функции, которые собирали этот текст и выводили на экран - нужно перезапустить. никакой компонент этого не сделает, ни самописный, ни купленный все равно придётся в своем коде на это закладываться, если реально нужно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 15:14:38 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
Ariochи тут пользователь переключил язык.И ничего смертельного не произойдет. В следующую отрисовку контрола попадет уже новый язык. Или пусть жмёт F5 :) 95% случаев можно "покрыть" совсем простыми решениями. А ваш вариант решения так и не прозвучал. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 15:47:25 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
Ariochа нет простых решений у сложных проблем Условно: 1. Добавляем в setup.ini в секцию [langs] новую строку 1=eng 2=rus 3=ukr #это новая 2. Переименовываем eng.ini в ukr.ini 3. Переводим содержимое ukr.ini с [controls] BUTTON_YES=Yes BUTTON_NO=No в [controls] BUTTON_YES=Так BUTTON_NO=Нi 4. Перезапускаем программу (или как-то перечитываем список поддерживаемых языков из setup.ini) - всё, программа поддерживает новый язык. Не так уж и сложно. Естественно, контролы должны читать свои текстовые данные из языковых констант текущего выбранного в настройках файла. Ariochвсе равно придётся в своем коде на это закладываться, если реально нужно Ну понятно что в своем коде. И у всех контролов должно быть получение нотификации (в каком-то виде) о смене языка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 15:58:31 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
YuRock, Именно так. После смены языка просто переоткрываю новый ини. У меня это Lang1/2/3... На гл. форме перечитывается гл. меню. Процедура и не знает, какой именно файл открыт. Просто читает из него при открытии формы. Можно предусмотреть перечитку текстов всех открытых форм. Не суть. Главное, что это всего одна простая процедура на весь проект. А ее гибкость довольно высокая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 16:29:57 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
LSV Коллега, хочу услышать Ваш вариант решения сабжа. С простым добавлением языка за 2 минуты. Без перекомпиляций, с динамической сменой языка. С возможностью легкого встраивания в готовый проект. Лично я скажу, что без моих layout-ов либо аналогичных средств эта задача заведомо обречена на провал. То есть, для перевода с русского на украинский, возможно, "варианты решения" ещё и годятся, а для перевода с русского, например, на иврит - подсказать, в каком направлении следуют? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 16:49:12 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
softwarer, Ну вообще-то тут речь идет о реализации самого механизма переключения между языками. Не о трудностях и правильности перевода - это дело для переводчиков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 17:01:38 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
softwarerLSV Коллега, хочу услышать Ваш вариант решения сабжа. С простым добавлением языка за 2 минуты. Без перекомпиляций, с динамической сменой языка. С возможностью легкого встраивания в готовый проект. Лично я скажу, что без моих layout-ов либо аналогичных средств эта задача заведомо обречена на провал. То есть, для перевода с русского на украинский, возможно, "варианты решения" ещё и годятся, а для перевода с русского, например, на иврит - подсказать, в каком направлении следуют?Речь про смену направления чтения и расположений контролов ?? :) Да. В случае иврита или арабской вязи это гораздо более сложная локализация во всех аспектах. зы: (осмотр у врача) - Ой, как хорошо ! ...Ой, как хорошо ! - Доктор, что именно хорошо ????? - Хорошо, что этого у меня нет. (с) анек ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 17:06:44 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
LSVРечь про смену направления чтения и расположений контролов ?? :) Как вишенка на торте. А более обще - про резкое изменение длин надписей, вызывающее необходимость переверстки. Ну и ещё моменты типа шрифтов и размеров. Скажем, русский мы читаем свободно, а вот надпись עולם הדוגמניות того же размера выглядит не лучшим образом, детали мелковаты, особенно если с огласовками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 17:15:35 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
LSVА хз. :) Наверно модули с ресурсами. Вопрос был риторическим :) На Лазаре теоретически интернационализировать приложение можно, например, так . Кстати, самому интересно стало. Надо будет попробовать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.08.2017, 18:46:32 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
ДокНадо будет попробовать действительно, оказалось, в Лазаре это нетрудно . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2017, 21:58:14 |
|
||
|
Локализация DLL
|
|||
|---|---|---|---|
|
#18+
softwarerLSVРечь про смену направления чтения и расположений контролов ?? :) Как вишенка на торте. А более обще - про резкое изменение длин надписей, вызывающее необходимость переверстки. Ну и ещё моменты типа шрифтов и размеров. Скажем, русский мы читаем свободно, а вот надпись עולם הדוגמניות того же размера выглядит не лучшим образом, детали мелковаты, особенно если с огласовками.Думаю такие сложные случаи вообще стандартными инструментами не решаются. Сам проект быть остро заточен под подобные локализации с подменой шаблонов, форм, шрифтов, всех системных сообщений, ошибок и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2017, 09:27:08 |
|
||
|
|

start [/forum/topic.php?fid=58&gotonew=1&tid=2041920]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
208ms |
get topic data: |
9ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 221ms |
| total: | 520ms |

| 0 / 0 |
