This directory contains the i18n files, which consists of lines : where is the number of the translated string and is the translation in the language the filename specifies. is written as a four digit number. These files are sorted by number, although the micq binary can handle any order, but the i18n-* scripts can't. i18n-extract will extract i18n() calls from the source files given (or all src/*.c) and output it to build.i18n. Backup is build.i18n~. i18n-number will number new i18n() calls in the source files given (or all src/*.c) and will replace the source files. Backup is *.c~, and it refuses to operate on files where the backup still exists. i18n-template will copy new translations to the other *.i18n files. Not existing strings will be added as "#:", changed strings will also be added this way, but the old will be retained as "#-#:". Comments not starting with "#:" or "#-#." will be retained. Note: this script uses cvs to figure out which strings changed since the last update to the translation. So change the version number only after you updated the translation! i18n-format will check file $1.i18n whether it has strings whose format differ from those in build.i18n. mICQ will most likely crash if such a bogus string is encountered. Note: you have to do "i18n-format build" first. In src/, type "make lang" to call all the above scripts, removing backups before. To add a new string to be translated, add i18n (###, "new string") in your new code. Please do use tabs ("\t"), newlines ("\n"), color codes (COLNONE, COL) and trailing white space only if you *absolutely* need them. Never add an untranslated string. It is okay for patches to contain unnumbered new strings. It is not okay to have numbers that do not have the same english string.