Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add: ru-translation procs from wiki #717

Closed
wants to merge 3 commits into from

Conversation

mattgroy
Copy link

Что этот PR делает

Добавляет процедуры-хелперы для перевода текста.

Сигнатуры процедур отличаются от описанных в wiki:

  • Гендеризация — genderize_ru -> genderize
    Склонение слова по грамматическому роду является особенностью многих языков и не привязана исключительно к русскому языку.
  • Плюрализация — pluralize_ru -> pluralize
    По той же причине, что и предыдущая процедура.
  • Склонение единиц измерения — declension_ru -> declension_number
    Склонение слова по грамматическому числу является особенностью многих языков.
  • Склонение по падежам — declent_ru -> declension_case
    Глагола declent не существует ("склонять слово" - это "to decline a word", однако название процедуры decline может в дальнейшем запутать). Падежи - общее лингвистическое понятие, и они существуют не только в русском языке.
  • ru_names -> name_cases

Почему это хорошо для игры

Позволяет делать правильный и красивый перевод.

Тестирование

Задал список name_cases у случайного объекта на карте и добавил все возможные вызовы процедур в коде /atom/proc/build_base_description(), выводящего текст при изучении объекта через Shift+Click

@ss220bot ss220bot added the 📜 CL невалиден Этот чейнджлог не пройдет валидацию перед публикацией. Исправить или удалить, если не требуется label Nov 16, 2023
@AyIong AyIong added 📜 CL не требуется Эти изменения не влияют на игровой процесс или игроки по какой-то причине не должны о них знать and removed 📜 CL невалиден Этот чейнджлог не пройдет валидацию перед публикацией. Исправить или удалить, если не требуется labels Nov 16, 2023
@AyIong AyIong requested a review from PhantornRU November 16, 2023 17:56
Copy link
Collaborator

@AyIong AyIong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Всё в модуль перенеси

@mattgroy
Copy link
Author

mattgroy commented Nov 18, 2023

Всё в модуль перенеси

Я перенёс дефайны в модуль, но при попытке их использования в оригинальном коде (т.к. строчки переводов в конце концов накладываются на оригинальный код), компилятор их не распознаёт:
image

Если использовать реальное значение дефайна, то всё работает. Ровно как и если вынести объявление дефайнов из модуля в оригинальный код.
image

Как поступать?

@mattgroy mattgroy marked this pull request as draft November 21, 2023 11:14
@mattgroy mattgroy marked this pull request as ready for review November 21, 2023 11:17
@mattgroy
Copy link
Author

Решение с модулем не особо удобное получается в итоге, т.к. заполнение списка name_cases нужно будет (по хорошему) заливать ПР-ом в master (с заполнением в модуле), а использование его значений в переводе - ПР-ом в translate.

Кроме того, решение то нихера не модульное, т.к. если отключить созданный модуль, то ссылающиеся на его методы строчки перевода перестанут работать.

@AyIong
Copy link
Collaborator

AyIong commented Nov 21, 2023

Решение с модулем не особо удобное получается в итоге, т.к. заполнение списка name_cases нужно будет (по хорошему) заливать ПР-ом в master (с заполнением в модуле), а использование его значений в переводе - ПР-ом в translate.

Кроме того, решение то нихера не модульное, т.к. если отключить созданный модуль, то ссылающиеся на его методы строчки перевода перестанут работать.

Модули отключаются только когда (и если) это появляется на оффах

@AyIong
Copy link
Collaborator

AyIong commented Nov 21, 2023

И то не всегда

@github-actions github-actions bot added the Merge Conflict Ну блять... label Nov 27, 2023
@PhantornRU
Copy link
Collaborator

Мерж конфликт :(

@github-actions github-actions bot removed the Merge Conflict Ну блять... label Nov 27, 2023
@mattgroy
Copy link
Author

Мерж конфликт :(

Resolved :)

@PhantornRU
Copy link
Collaborator

PhantornRU commented Dec 6, 2023

В принципе всё устраивает, кроме файла Translation и вынесение файла в общий .dme. Все же попробуй в дефайны модуля просто вписать свои элементы. (в папке модуляра наших дефайнов найди уже работающий файл)

@mattgroy
Copy link
Author

mattgroy commented Dec 6, 2023

В принципе всё устраивает, кроме файла Translation и вынесение файла в общий .dme. Все же попробуй в дефайны модуля просто вписать свои элементы. (в папке модуляра наших дефайнов найди уже работающий файл)

Ну ёшкин кот, я же писал, что если так сделать, то дефайны не будут работать, если обращаться к ним извне модуляра, тупо проект не скомпилируется.

Ради теста, попробуй сам объявить в модуляре какой-нибудь дефайн (или взять уже существующий), а потом обратиться к нему где-нибудь в core коде.

Повторюсь, что обращение к этим дефайнам будет происходить в первую очередь из кор кода, так как перевод осуществляется посредством редактирования оригинального кода, а не оверрайдом всех переводимых методов где-нибудь в модуляре.

Если файл Translation и эдит общего .dme так мозолит глаза, так может нахрен тогда убрать эти дефайны, и к падежам обращаться по цифрам 1-6? Я про это спрашивал вот здесь почти МЕСЯЦ назад -_-

@PhantornRU
Copy link
Collaborator

В разраб чате нас пингани, будем эту проблему решать, а то мы тебя найти не можем

@PhantornRU
Copy link
Collaborator

PhantornRU commented Dec 15, 2023

Всё еще жду общения в разрабчате

@PhantornRU PhantornRU added :finnadie: НЕ МОДУЛЬНО Ну это ваще пиздец. Либо засовывай в модуль, либо заливай на апстрим. 📝 Перевод Приятно когда всё на родном языке. :feelsgood: Частичная модульность Не всегда получается всё впихнуть в модуль, увы. and removed :finnadie: НЕ МОДУЛЬНО Ну это ваще пиздец. Либо засовывай в модуль, либо заливай на апстрим. labels Dec 15, 2023
@Legendaxe Legendaxe force-pushed the master branch 2 times, most recently from e6c58c1 to add632e Compare December 16, 2023 18:44
@AyIong
Copy link
Collaborator

AyIong commented Jan 5, 2024

Месяц стоим, откроешь как будут сподвижки х2
И отпиши в дискорде

@AyIong AyIong closed this Jan 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:feelsgood: Частичная модульность Не всегда получается всё впихнуть в модуль, увы. 📝 Перевод Приятно когда всё на родном языке. 📜 CL не требуется Эти изменения не влияют на игровой процесс или игроки по какой-то причине не должны о них знать
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants