Crossfire Server, Trunk
R21670
|
Go to the source code of this file.
Data Structures | |
struct | i18n_file |
struct | i18n_message |
Typedefs | |
typedef struct i18n_file | i18n_file |
typedef struct i18n_message | i18n_message |
Functions | |
static void | convert_newline (char *line) |
int | get_language (object *op) |
const char * | i18n (const object *who, const char *code) |
int | i18n_find_language_by_code (const char *code) |
void | i18n_free (void) |
int | i18n_get_language_by_code (const char *code) |
sstring | i18n_get_language_code (int language) |
void | i18n_init (void) |
void | i18n_list_languages (object *who) |
static int | i18n_message_compare_code (const i18n_message *a, const i18n_message *b) |
Variables | |
static int | i18n_count = 0 |
static int | i18n_default = -1 |
static struct i18n_file * | i18n_files = NULL |
typedef struct i18n_message i18n_message |
One message.
|
static |
Replaces '
' by a newline char.
Since we are replacing 2 chars by 1, no overflow should happen.
line | text to replace into. |
Definition at line 151 of file languages.c.
References MAX_BUF, and snprintf.
Referenced by i18n_init().
int get_language | ( | object * | op | ) |
Returns the i18n language index associated with the given object. This only has a meaning for players.
op | The player object to get the language of |
Definition at line 55 of file languages.c.
References obj::contr, i18n_count, and pl::language.
const char* i18n | ( | const object * | who, |
const char * | code | ||
) |
Translate a message in the appropriate language.
who | who to translate for. |
code | string to translate, usually the English version. |
Definition at line 69 of file languages.c.
References add_string(), i18n_message::code, obj::contr, i18n_file::count, free_string(), i18n_count, i18n_message_compare_code(), pl::language, i18n_message::message, and i18n_file::messages.
Referenced by command_afk(), command_applymode(), command_body(), command_bowmode(), command_brace(), command_debug(), command_delete(), command_help(), command_kill_pets(), command_language(), command_listen(), command_passwd(), command_peaceful(), command_petmode(), command_players(), command_quit(), command_resistances(), command_save(), command_settings(), command_showpets(), command_sound(), command_statistics(), command_title(), command_usekeys(), command_whereabouts(), command_wimpy(), command_wizcast(), command_wizpass(), current_map_info(), current_region_info(), help_topics(), list_players(), login_check_shutdown(), malloc_info(), map_info(), receive_player_password(), and show_commands().
int i18n_find_language_by_code | ( | const char * | code | ) |
Attempt to find the identifier of a language from its code.
code | language code. |
Definition at line 95 of file languages.c.
References i18n_count.
Referenced by command_language(), and i18n_get_language_by_code().
void i18n_free | ( | void | ) |
Clears all i18n-related data.
Definition at line 252 of file languages.c.
References i18n_message::code, i18n_file::count, free_string(), i18n_count, and i18n_message::message.
Referenced by cleanup().
int i18n_get_language_by_code | ( | const char * | code | ) |
Find the identifier of a language from its code.
code | language's code. |
Definition at line 110 of file languages.c.
References i18n_default, and i18n_find_language_by_code().
Referenced by check_login().
sstring i18n_get_language_code | ( | int | language | ) |
Return the code of a specified language.
language | identifier of the language. |
Definition at line 122 of file languages.c.
References i18n_file::code, i18n_count, and i18n_default.
Referenced by command_help(), help_topics(), and save_player().
void i18n_init | ( | void | ) |
Initializes the i18n subsystem. Will load all found strings. If there is an error, calls fatal().
Definition at line 168 of file languages.c.
References add_refcount(), add_string(), closedir(), i18n_message::code, i18n_file::code, convert_newline(), i18n_file::count, dirent::d_name, Settings::datadir, fatal(), free_string(), HUGE_BUF, i18n_count, i18n_default, i18n_message_compare_code(), llevDebug, llevError, LOG(), MAX_BUF, i18n_message::message, i18n_file::messages, i18n_file::name, opendir(), readdir(), SEE_LAST_ERROR, settings, and snprintf.
Referenced by init_library().
void i18n_list_languages | ( | object * | who | ) |
List all languages for who.
who | who to display languages for. |
Definition at line 132 of file languages.c.
References i18n_message::code, draw_ext_info_format(), i18n_count, MSG_SUBTYPE_NONE, MSG_TYPE_COMMAND, i18n_file::name, and NDI_UNIQUE.
Referenced by command_language().
|
static |
Definition at line 45 of file languages.c.
References i18n_message::code.
Referenced by i18n(), and i18n_init().
|
static |
Number of defined languages.
Definition at line 39 of file languages.c.
Referenced by get_language(), i18n(), i18n_find_language_by_code(), i18n_free(), i18n_get_language_code(), i18n_init(), and i18n_list_languages().
|
static |
Index of "English" in the i18nfiles array.
Definition at line 43 of file languages.c.
Referenced by i18n_get_language_by_code(), i18n_get_language_code(), and i18n_init().
|
static |
Defined languages.
Definition at line 41 of file languages.c.