Ну… из пары вопросов в чате (какие только смог спросить оО ).
[spoiler] Guys, may I ask some questions ? 
aiwant2tc: ask away
Basically, I want to know why multilanguage support is not impleneted yet oO
I mean, what obstacles should be eliminated oO
aiwant2tc: beacuse i18n and l10n is hard.
And because there are more pressing concerns.
But if we assume, that someone else will be occupied with the l10n
and i18n
So… The game should be rewritten in ncursesw or what oO
It’s a matter of implementing gettext.
And trawling through all of the source files and pulling all the literals out.
And replacing them with gettext calls.
And there are a lot of literals.
It’s just a lot of work, but probably not particularly difficult.
“loterals”
… Then
Looks like we are on the right route oO
It’s likely not something that’s going to happen for the kickstarter version, probably after that.
Oh, hell, I know what I did wrong. I made a package called “site”, which was hiding the real site package.
yeah, the Kickstarter is also important : )
So… If we assume that we have all plain-text translated. I mean, all the text is translated. The next step would be implementing the gettext functions ?
aiwant2tc: implementing gettext comes first, I think.
But like I said, there’s also an issue with how to do l10n on item descriptions and other stuff from raws.
Multiple raws won’t work ?
Or…
- aiwant2tc thinks of smth
You wouldn’t want multiple raws – you might want raws not to contain displayable literals, but gettext keys.
narc: well, in that case you could just make gettext keys from the item names.
wito: Sounds about right.
- aiwant2tc listens
Probably item_name + “_name” and item_name + “_desc”, or something remotely similar.
Also… casual system oO
or case oO *
Don’t remember the name oO
narc: Well, it might be useful to be able to specify a name directly in the raws as well, telling the text system to not go looking for a translation.
A Glock 19 is the same in every language.
Right. Try gettext first, then fall back to the values we already have in the raws.
This sounds reasonable.
narc: nah, other way around.
try the raws first.
If it has a name in the raws, don’t gettext.
Um?! I was thinking it more as a fallback for partial translations.
The value in the raws would give some kind of value until one was added to the gettext data file.
Besides, a Glock 19 is not the same in every language. aiwant2tc: Would you print “glock 19” transliterated to russian for us?
For you ? o_O Transliterated it’d be: Глок 19
Translated it’s like Glock-19
Nah
So, if it has a name in the raws, and that overrides gettext, it’s a fail.
Глок-19
With a minus
Close enough.
Also, translit.ru is pretty awesome.[/spoiler]
Парни, можно задать пару вопросов ? 
aiwant2tc: Валяй
В общем, я хочу узнать, почему поддержка многих языков ещё не была введена.
Я имею в виду, какие препятствия нужно устранить oO
aiwant2tc: Потому что i18n и l10n это сложно. //Интернационализация и локализация
И потому что есть более важные вещи
А если допустим, что кто-то другой будет заниматься l10n-ией
и i18n-ей
Тогда… Игра должна быть переписана на ncursesw или как оО
Это дело введения gettext
И перелопачивание всех исходников, вытаскиванием оттуда всех литералов
И заменой их на вызовы gettext
И там очень много литералов
Просто это ОЧЕНЬ много работы, но, в основном не сложной.
“лотералов” // лот = lot = много
… Тогда
Похоже , что мы на правильном пути //В этот момент я не знал, что такое gettext 
Это не что-то такое, что появится в месте с Kickstarter версией, может быть, после того.
да, Kickstarter тоже важен 
Так… Если мы будет считать, что мы перевели весь “голый” текст. Следующим шагом будет введение gettext функций ? //теперь узнал оО.
aiwant2tc: введение gettext-ов должно быть первым шагом, я думаю.
Но как я уже сказал, ещё нужно разобраться, что делать с локализацией описаний предметов и других вещей из raws // json из data/raws он имел в виду оО
Много raws не сработают ?
Или…
- aiwant2tc о чём-то думает
Ты бы не хотел иметь много raw файлов, но мог бы захотеть, чтоб raws содержали не отображаемые литералы, а ключи gettext
narc: Ну, в этом случае можно просто сделать gettext ключи из имён предметов.
wito: Звучит правдоподобно
- aiwant2tc слушает
Может быть item_name + “_name” and item_name + “_desc”, или что-то отдалённо похожее.
narc: Ну, может быть полезной возможность задавать имена прямо в raws, говоря текстовой системе не искать перевод.
Glock 19 одинаков во всех языках.
Правильно. Попробуй сначала gettext, потому вернись к значениям, что уже есть в raws.
Звучит приемлимо.
narc: не, другой способ.
сначала попробовать raws.
Если есть имя в raws, не вызывать gettext.
Кхм?! Я думал об этом, как о запасном варианте для частичных переводов.
Значение из raws будет давать какие-то значения, до тех пор, пока другое не было добавлено в gettext дата-файл.
Кстати, Glock 19 НЕ одинаков на всех языка. aiwant2tc , не напишешь русскую транслитерацию Glock 19 для нас ?
Для вас ? о_О Транслитерация будет: Глок 19 // я отходил, потому не сразу понял, о чём они.
Переведённый вариант будет Glock-19
Не
То есть, если есть имя в raws, и оно перехватывает значение gettext, это провал.
Глок-19
C дефисом.
Достаточно близко.
Кстати, translit.ru довольно крут.