sobolevn / ship-it-boardgame

Social and fun boardgame about IT. Best with 🍻
https://steamcommunity.com/sharedfiles/filedetails/?id=3172213526
Other
133 stars 10 forks source link

Easy mechanism translation proposal #12

Open thepabloaguilar opened 7 months ago

thepabloaguilar commented 7 months ago

Hi @sobolevn 👋🏽

I'd to like to start the translation to PT-BR of the game but I want to do in way it's easy for future maintenance and new languages, so I have a proposal.

First we define some variables in a YAML file like this which is basically a translation table:

general:
  first_player: Алисы
  second_player: Бориса
  hand: Рука
  table: Стол
  hidden_card: Закрытая карта
  reset: Сброс
  card:
    attack:
      name: Атака
      types:
        error: Ошибка
    component:
      name: Компонент
      types:
        internal_process: Бекенд

Then all the diagrams must use template tags to get the values (eg.: {{ general.first_player }}), we're going to render using Jinja and once we've done it we can render using Drawio API, finally we just save in the folder!

The render process can be done locally and we verify using the CI/CD if the process was executed or automate the repository to commit it self in the master branch after a merge.

WDYT?

sobolevn commented 7 months ago

I like the idea, but I haven't tried anything like it yet.

There are also .md files with rules and faq, plus there are .numbers files with cards. How do you think: it is possible to translate them?

thepabloaguilar commented 7 months ago

I haven't seen the .numbers files content yet but I think it's possible and the .md to get translated is more a manual thing as we really need to rewrite in a understandably way in each language! My suggestion to .md would be to put the last tag/commit it reflects, like, now the game is on version 0.0.6 so the .md of languages other than Russian will put it visible there so we'll now if it's updated or not Initially would be a good approach as the docs are not too much extensive