Найти - Пользователи
Полная версия: интернационализация программы
Начало » Python для экспертов » интернационализация программы
1 2
bialix
Use source Luke.
Открываешь в любимом редакторе файл gettext.py из стандартной либы питона. Параллельно открываешь стандартную доку на этот модуль: http://docs.python.org/lib/module-gettext.html

Читаешь.

Можешь глянуть пример от umup, который прикреплен к его посту выше. Если заменить XML на DB, то будет почти то, что нужно.

Пример на псевдокоде:

_transdict = {}

def read_translations_from_db():
for eng, rus in db:
_transdict[eng] = rus

def gettext(msg):
"""Перевод фразы с английского на русский или какой-нить другой.
Если перевода нету, то возвращается английский оригинал.
"""
return _transdict.get(msg, msg)
Инсталляцию функции gettext в глобальное пространство имен интерпретатора (если нужно) лучче выдрать из стандартного gettext.py
pythonwin
bialix, спасибо

PS пример не скачивается :(
bialix
только что скачивал в firefox: правая кнопка - сохранить как. сохраняется файл с именем attachment.php почему-то, но после переименования в zip он таки становится zip-архивом.
umup
небольшие изменения и дополнения
Nbush
umup
небольшие изменения и дополнения
Удобно ли пользователю редактировать XML? может сохранять как ini файл?
umup
мне - удобно. редактирую в Notepad++ - есть подсветка синтаксиса и поддержка UTF-8.
кроме того, все остальные настройки тоже в XML. зачем что-то изобретать ?
хотя если нужно можно легко добавить запись/чтение в другом формате.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB