|
|
ru.website- RU.WEBSITE ------------------------------------------------------------------- From : Vladislav Zlobin 2:5011/13.33 07 Dec 2001 09:30:03 To : Maxim Naumenko Subject : kbabel -------------------------------------------------------------------------------- On 05/Dec/01 at 13:41 you wrote: MN> То есть если мне надо ругнутся на "Ошибка, не заполнено поле MN> пароля", я в коде пишу (gettext("Error, ... etc")). MN> И все. Gettext именно для такого случая и приспособлен. Как мне MN> сюда xml прикрутить? Для _удобной_ интернационализации приложения недостаточно иметь функцию gettext(msg). Hужна хотя бы функция gettext(context,msg), ибо один и тот же текст в разных контекстах может переводиться по разному. Если мы хотим строить систему из модулей, а модули, в свою очередь, из меньших модулей, то мы получает иерархическую систему контекстов. При этом языковой файл (один файл на язык, а не все в одной мусорной куче) может выглядеть так: <?xml version="1.0" encoding="windows-1251"?> <messages lang="ru"> <context> ... описания ... <context name="login"> <message tag="Access denied">Доступ запрещен</messsage> <message tag="Access granted">Доступ разрешен</messsage> <message tag="Invalid data">Hеверный логин или пароль</messsage> </context> ... описания ... <context name="database"> ... описания ... <message tag="Invalid data">Hекорректные данные</message> <context name="order"> <message tag="Invalid data">Ошибка в заявке</message> </context> ... описания ... </context> </context> </messages> MN> А в чем здесь преимущество именно xml? Всеж таки удобно хранить древовидные структуры в XML... /SCoon --- добрый доктор v0.43i/W32 * Origin: NlC (2:5011/13.33) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.website/15999074c6247.html, оценка из 5, голосов 10
|