Nikolai
Как gettext() в джанге
Anonymous
и обучи на нем сеть
Что теперь делать с .traindata?
Oleg
в i18next формате, например
Nikolai
Ну надо генерить отдельные translation-файлы для js'а
Это не проблема. Проблема как с ними взаимодействовать
Nikolai
Не нагуглил ничего
Nikolai
Oleg
ну из js'а загружаешь json-файл с переводами
Oleg
и взаимодействуешь
Nikolai
Я б хотел чтоб клиентский js тоже мог в .mo
Nikolai
В этом то и вопрос
Oleg
Json он же не pluralize
ну ладно, рассказывай мне тут: https://www.i18next.com/translation-function/plurals
Nikolai
О
Nikolai
Погляжу в этом направлении
Nikolai
Но в любом случае json интернационализация не антипаттерн? Он не умеет в .mo?
Nikolai
Не обязательно, но хотелось бы единообразия
Nikolai
Но в любом случае json интернационализация не антипаттерн? Он не умеет в .mo?
Не так написал. Это тоже формат, свой, но вроде медленнее
A
все привет!
Oleg
ну реализации поддержки mo на js'е вроде есть
Oleg
но с чего ты решил что json будет медленнее?
Oleg
он же в твоем случае будет целиком в памяти
A
нужно в web реализовать консоль (терминал), хочу подключаться по ssh к хостам и чтоб прям на странице эоткрывался терминал. Подскажите примеры...
Nikolai
но с чего ты решил что json будет медленнее?
Мне всегда казалось, что неспроста есть .mo файлы, типа быстрее, оптимизированнее, все дела
A
Тебе в js сторону копать
их дохрена, какой самый продвинуты? отстал я малость :( давно кодить не приходилось...
A
помню ajenti вроде pyte использовал для этих целей но там локалхост открывался
A
Спроси лучше в жс группе
а что реализации на питоне зангулись?
Nikolai
а что реализации на питоне зангулись?
Ты хочешь в веба реализовать консоль
Nikolai
Как ты фронт консоли сделаешь?
Nikolai
Бек то на питоне пищи скок хочешь
Oleg
Мне всегда казалось, что неспроста есть .mo файлы, типа быстрее, оптимизированнее, все дела
На сколько я знаю, они оптимизированы для быстрого чтения нужного перевода без чтения всего файла
A
но я пока не догоняю как это все должно работать
Oleg
Ну, хорошая ведь оптимизация)
ставлю на то, что nodejs с загруженным в память json'ом будет быстрее чем python c чтением из mo
Oleg
Ну, хорошая ведь оптимизация)
хорошая, только для браузера не нужная. У него все и так в памяти
Nikolai
Ладно, а как тогда лучше поступать с темплейтами? Ту же json юзать получается?
Nikolai
зачем? В темплейтах используй привычный тебе mo
А зачем разбивать тогда на несколько файлов?
Oleg
А зачем разбивать тогда на несколько файлов?
ну у тебя же изначально разные po-файлы будут?
Oleg
зачем тебе смешивать po-файлы для js'а и для html-темплейтов?
Oleg
Могут и не быть
ну я понимаю, что можно все в один файл собрать, но зачем?
Nikolai
зачем тебе смешивать po-файлы для js'а и для html-темплейтов?
Нуч я к тому, что всё в жс запихнуть и в темплейтах их же юзать, не?
Nikolai
В разных файлах будет удобнее?
Oleg
Нуч я к тому, что всё в жс запихнуть и в темплейтах их же юзать, не?
а зачем тебе в браузер грузить переводы, которые используются только в темлейтах, которые рендерятся на сервере?
Nikolai
а зачем тебе в браузер грузить переводы, которые используются только в темлейтах, которые рендерятся на сервере?
Имеешь ввиду, что этот json файл будет в памяти сервера на каждого юзера свой экземпляр и это не есть хорошо?
Oleg
тебе же json-файл нужен только для js'а, который выполняется в браузере
Nikolai
да зачем сервера
Ну, ткмплейт же рендерится на сервере...
Nikolai
А в нём мб тоже будет нужен, не буду ж весь перевод генерить в js файлах
Oleg
да все просто: строки из темплейтов собираешь в один po-файл, а строки из js'а собираешь в другой po-файл
Oleg
из первого po-файла генерешь mo, а из второго i18next
Nikolai
Ну, тогда вопрос закрыт
Oleg
А, этот жсон тоже из .po генерится?
да: https://github.com/i18next/i18next-gettext-converter
Nikolai
да: https://github.com/i18next/i18next-gettext-converter
Уу, это ноду ещё тащить
Nikolai
А есть такое без ноды то?
Oleg
можно поискать реализацию на питоне
Oleg
А есть такое без ноды то?
а переводчики у тебя будут прям c po-файлами работать и с git-репозиторием, или у них какой-то UI будет?
Nikolai
Или и это можно автоматизировать?
Nikolai
Если есть варианты, подкинь парочку
Oleg
Зачем? Ручками пишешь .po и конвертишь в .mo
я спрашивал про то как собственно переводы будут делаться
Nikolai
я спрашивал про то как собственно переводы будут делаться
Ну, понимаю что нужно перевести. Делаю в .py _('word'), потом в .po шаблон перевода, потом - перекомпиляции в .mo С js - похоже, но в json, если найду как
Nikolai
Есть другие варианты?
Oleg
Ну, понимаю что нужно перевести. Делаю в .py _('word'), потом в .po шаблон перевода, потом - перекомпиляции в .mo С js - похоже, но в json, если найду как
ну да, тебе понадобилось сделать перевод с русского на китайский, например. Ты нашел переводчика и будешь его учить тому как устроен po-файл и как работать с git'ом?
Oleg
для этого есть UI'и который прям из git'а загружают po-файлы, переводчик в веб-интерфейсе делает переводы, UI потом выгружает эти переводы обратно в git
Oleg
посмотри, weblate, например
Oleg
он может импортить/экспортить в кучу форматов
Oleg
можно импортнуть в него po-файлы, а экспортнуть в i18next, например
Pavel
а геттекст запретили уже?
Oleg
а геттекст запретили уже?
а po-файлы это не геттекст?