going to i18n

This commit is contained in:
p.kosyh 2009-11-20 06:22:50 +00:00
parent 85609cbb40
commit 383208328c
8 changed files with 24 additions and 6 deletions

View file

@ -536,7 +536,6 @@ int game_init(const char *name)
if (!opt_lang || !opt_lang[0])
opt_lang = game_locale();
if (menu_lang_select(opt_lang) && menu_lang_select(LANG_DEF)) {
fprintf(stderr, "Can not load default language.\n");
exit(1);

View file

@ -465,7 +465,7 @@ static char *theme_name(const char *path, const char *d_name)
char *p = getfilepath(path, THEME_FILE);
if (!p)
goto err;
l = lookup_tag(p, "$Name:", ";");
l = lookup_lang_tag(p, "Name", ";");
free(p);
if (l)
return l;

View file

@ -1,4 +1,5 @@
#include "externals.h"
#include "config.h"
#include "util.h"
char *getfilepath(const char *d, const char *n)
@ -258,6 +259,19 @@ char *lookup_tag(const char *fname, const char *tag, const char *comm)
return NULL;
}
char *lookup_lang_tag(const char *fname, const char *tag, const char *comm)
{
char lang_tag[1024];
char *l;
snprintf(lang_tag, sizeof(lang_tag), "$%s(%s):", tag, opt_lang);
l = lookup_tag(fname, lang_tag, comm);
if (!l) {
snprintf(lang_tag, sizeof(lang_tag), "$%s:", tag);
l = lookup_tag(fname, lang_tag, comm);
}
return l;
}
char *parse_tag(char *line, const char *tag, const char *comm, int *brk)
{
char *l = line;

View file

@ -16,6 +16,7 @@ extern char *strip(char *s);
char *getfilepath(const char *d, const char *n);
extern char *lookup_tag(const char *fname, const char *tag, const char *comm);
extern char *lookup_lang_tag(const char *fname, const char *tag, const char *comm);
extern int parse_esc_string(const char *v, void *data);
extern int parse_string(const char *v, void *data);
extern int parse_int(const char *v, void *data);

View file

@ -1,4 +1,5 @@
; $Name:Книга$
; $Name:Book$
; $Name(ru):Книга$
scr.w = 800
scr.h = 600
scr.gfx.bg = book.png

View file

@ -1,4 +1,5 @@
; $Name: Стандартная$
; $Name: Standart$
; $Name(ru): Стандартная$
scr.w = 800
scr.h = 600
scr.gfx.h = -1

View file

@ -1,4 +1,5 @@
;$Name:Фэнтези
;$Name:Fantasy
;$Name(ru):Фэнтези
scr.w = 800
scr.h = 600

View file

@ -1,4 +1,5 @@
; $Name:Старая
; $Name:Original
; $Name(ru):Старая
win.col.fg = black
win.col.link = blue
win.col.alink = red