Tried that but the following was sent to the server despite using &uselang=de in the address bar:
page Help:Nominate for deletion/gt/msg/welcome/description
Without the user's language choice is submitted as well to the API, the message is returned in English. This is not really an option as Commons offers its contents to anonymous users in their chosen language by using the uselang parameter.
commons:Help:Nominate for deletion/gt/msg/welcome/description, Special:Permalink/106939382.
I guess you look for the response of the function passed to
onShow and evaluate if it is a Promise, and if it is the tour waits for the operation to succeed? Could I use this for completely custom i18n logic or do you intend making changes to that code part?
Image annotator, for example has put all its translation into a template. This would be the easiest option for translators currently (and it would not require admin actions for each changed translation). I am also using this for the watchlist notice and this also gives me a nice overview over translation work that was already done. I'll care for escaping and everything like that.
Thank you for the comprehensive reply.