OberonCore https://forum.oberoncore.ru/ |
|
#030 Windows: вернуть язык по-умолчанию: "" https://forum.oberoncore.ru/viewtopic.php?f=134&t=6573 |
Страница 1 из 1 |
Автор: | Евгений Темиргалеев [ Воскресенье, 01 Март, 2020 01:58 ] |
Заголовок сообщения: | #030 Windows: вернуть язык по-умолчанию: "" |
Когда в Центре улучшали работу с языками, сломали эталонное поведение. Язык по-умолчанию вместо "" стал "en". А это некорректно, потому что "" # "en" (Rsrc/Strings и Rsrc/en/Strings -- это разные файлы, потому что не у всех язык по-умолчанию является английским). Код: MODULE HostDialog;
defaultLanguage = "en"; PROCEDURE InitLanguage; VAR loc: Files.Locator; li: Files.LocInfo; lang: Dialog.Language; n: INTEGER; BEGIN ... IF prefs.language.item = '' THEN prefs.language.item := defaultLanguage END; END InitLanguage; |
Автор: | Иван Денисов [ Воскресенье, 01 Март, 2020 15:18 ] |
Заголовок сообщения: | Re: Windows: вернуть язык по-умолчанию: "" |
Евгений, если также будет работать всё, то поддерживаю, надо внимательно только понять, а на что это повлияет, вот в этих файлах зашито "en" Std/Mod/Api.odc 2 Dev/Mod/Inspector.odc 1 Dev/Mod/Markers.odc 1 Dev/Mod/Search.odc 1 Ведь "" заменили на "en" не просто так, а потому что сделали диалог выбора языка. Его ведь раньше просто не было. Так что в диалоге выбора языка надо каким-то иным путем указать тогда какой язык есть. Это происходит в InitPrefDialog/InitLanguage. Но не вижу, где вызывается InitPrefDialog... Я тогда предлагаю сделать defaultLanguage не константой, а переменной, чтобы её можно было устанавливать из Config. |
Автор: | Евгений Темиргалеев [ Понедельник, 02 Март, 2020 04:55 ] |
Заголовок сообщения: | Re: Windows: вернуть язык по-умолчанию: "" |
А в диалоге выбора не может быть значения "", которое и означает defaultLanguage? |
Автор: | Иван Денисов [ Понедельник, 02 Март, 2020 06:42 ] |
Заголовок сообщения: | Re: Windows: вернуть язык по-умолчанию: "" |
Евгений Темиргалеев писал(а): А в диалоге выбора не может быть значения "", которое и означает defaultLanguage? Но ведь это не соответсвует факту, что существует язык по-умолчанию, и это не пустой язык. Надо, чтобы, если лежит папка "ru", то было два языка в меню, скажем сейчас это "en" и "ru". |
Автор: | Евгений Темиргалеев [ Понедельник, 02 Март, 2020 09:39 ] |
Заголовок сообщения: | Re: Windows: вернуть язык по-умолчанию: "" |
Почему не пустой? А что же это тогда? System/Rsrc/Strings По моему пониманию это и есть язык по-умолчанию. Вот как разработчик делал, что положил напрямую в ресурсы, такое и умолчание. А в языковых подкаталогах уже конкретные переводы. И соответствующая схема доступа к ресурсам: rsrc := ReadRsrc(lang); IF rsrc = NIL THEN rsrc := ReadRsrc("") END Не помню, по этому поводу в документации официальной есть что-то? |
Автор: | Иван Денисов [ Понедельник, 02 Март, 2020 09:43 ] |
Заголовок сообщения: | Re: Windows: вернуть язык по-умолчанию: "" |
С точки зрения пользователя язык по-умолчанию не пустой. Это какой-то язык с названием. Я думаю, что надо о пользователях прикладных проектов думать, а не о документации. Если скажем вы комплектуете свой проект каким-то другим языком, то правильное предложение избавиться везде от хардкодед "en". Полностью поддерживаю. Это недочёт. Надо устранить. Но в диалоге надо название показывать. |
Автор: | Евгений Темиргалеев [ Понедельник, 02 Март, 2020 10:02 ] |
Заголовок сообщения: | Re: Windows: вернуть язык по-умолчанию: "" |
Согласен, что показывать в диалоге вместо "" что-то более понятное лучше. Это же решаемо. |
Автор: | Иван Денисов [ Вторник, 03 Март, 2020 12:34 ] |
Заголовок сообщения: | Re: Windows: вернуть язык по-умолчанию: "" |
Евгений Темиргалеев писал(а): Согласен, что показывать в диалоге вместо "" что-то более понятное лучше. Это же решаемо. Да, надо как-то решить это, и исправим. Правильно было бы это указывать в файле Config. Это ведь настройка среды, какой комплект языка лежит по-умолчанию. |
Автор: | Trurl [ Вторник, 03 Март, 2020 13:17 ] |
Заголовок сообщения: | Re: #030 Windows: вернуть язык по-умолчанию: "" |
А для единообразия ресурсы для пустого языка помещать в язык system. |
Автор: | Info21 [ Вторник, 03 Март, 2020 13:53 ] |
Заголовок сообщения: | Re: Windows: вернуть язык по-умолчанию: "" |
Иван Денисов писал(а): надо о пользователях прикладных проектов думать Хорошо, что именно прикладник такую видную роль тут играет.
|
Автор: | Иван Денисов [ Понедельник, 05 Апрель, 2021 19:14 ] |
Заголовок сообщения: | Re: #030 Windows: вернуть язык по-умолчанию: "" |
Добавил переменную Dialog.defaultLanguage так что теперь возможно настроить, чтобы по умолчанию был любой язык основным для Блэкбокса, а остальные опциональными. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |