Open ViktorErmakov opened 1 year ago
Хотите переводить только пользовательскую часть или код тоже?
Дело не в переводе. Дело в адаптации для запуска всех инструментов на англоязычных метаданных. Язык я хочу оставить прежним и там и там.
Это не малая работа. Пока я успешно адаптировал выгрузку xml в идентичных базах
И получается, что нужно хранить две версии расширения
По идее разницы не должно быть от имени метаданных. 1С это на платформенном уровне решает Что может быть это надписи и имена полей, если основной язык не русский. Тогда оно выглядит как все без надписей и строки на разных языках отрабатывают неправильно.
Если говорить о переводе интерфейса и строк в коде, думал над двумя вариантами:
Использовать плагин ЕДТ со всеми его сценариями работы. Отдельными проектами под каждый язык и сборку соответственно под каждый язык адаптировать. Но код все равно пишется весь на русском языке, а с помощью плагина только переводится. В этом случае в репе будут несколько автообновляемых проектов, свой под каждый язык.
Использовать методологию аналогичную ИРке https://github.com/cpr1c/tools_ui_1c/issues/496#issuecomment-1627391705 . Чтобы при сборке собирались сборки аналогичные русскому языку без перевода, но работающие на других основных языках.
На выходе будет получаться несклько расширений под каждый язык. Если получится, хочется количество выходных файлов оставить тем же. Если из расширения язык удалить оно применяется без проблем и для работы берет основной язык конфигурации. Не уверен что такое сработает, т.к. 1С без доп. манипуляций такое не разрешает создать руками и сколько это проработает непонятно.
По структуре репы думал про такую
src/translate/
Доработку сборщика беру на себя.
В сборщике нужно будет во всех элементах формы/синонимах и т.п. прописать для всех поддерживаемых языков синоним равный русскому, если его нет в переводе
Я не силен еще в этой теме но столкнулся вот с чем. Заимствованные методы на русском, платформа не знает, нужно менять все директивы. А так же где сравнения идут " Если = "" Справочники"" Тогда... " Тут все падает. Еще обращеня к тз или структурам через точку тоже все ломается. В общем платформа я не знаю что решает...
Об этом я и не подумал. Видимо идет из параметра язык встроенного языка. Тут все равно лучше сливать в основную репу. Делать доп условия. Все-таки хочется иметь минимум выходных файлов и одну кодовую базу для всех вариантов сборки
Ну код какой то да можно сделать в основной репе, не понятно что делать с заимствованными методами
Вот на картинке директива видите на английском
С этим делать нечего придется отдельные сборки под англоязычную БСП делать. Но я бы сделал это на этапе сборки. Просто заменять имена импортированных модулей и методов на англоязычные. Их там 2 модуля и 3 метода. Но это будет работать, если остальной код интеграции сработает. Тут подскажите
Если не выйдет тогда сделать отдельное расширение, которое содержит поддержку англоязычной БСП. И его уже на этапе сборки заменять модулями из этого расширения модули основного расширения
Ага хорошо. Как мне тогда поместить наработки свои в ветку? Я же затру эти модули?
Приложи сюда доработанное. Сделаю еще проект. и туда будем добавлять методы интеграции с англоязычной БСП. Постараюсь сегодня завтра
А дальше уже стандартными пулреквестами будем идти
Сегодня не обещаю, на днях выложу точно. Спасибо
Есть проект где переведен весь код универсальных инструментов. Может поможет, чтобы быстрее позаимствовать.
Спасибо за ссылку. Возможно пригодится. Но пока хочется что бы русская версия запускалась на драйве.
необходимо использовать в работе инструментарий на драйве
Адаптацию делаю я по мере поступления задач
Необходимо решить как будем хранить версии tu и en Давайте согласуем структуру проекта?