If you have gettext support in PHP, translations will work only if you have the appropriate system locale. You should also restart your web server after installing new locale packs.
This is the way gettext translations work. If a translated string is not available, the English version of the string is used.
Possible causes are:
"xxx character set is not supported" errors may appear when you switch to some translations. This usually means that your IMAP server does not support the charset that is used by that translation.
This error can be disabled by setting following SquirrelMail options to false:
There is one exception: if you are using the Turkish translation, you can get similar errors even when your IMAP server supports the ISO-8859-9 charset. This happens due to different small letter to capital letter conversion rules in Turkish. See SM bug No.690625, http://www.topolis.lt/php/, http://www.topolis.lt/php/patched-utf8.txt and http://www.topolis.lt/php/turkish.phps for more details.
If you are using SquirrelMail on Linux RedHat v7.3 system, sometimes you can get an error similar to:
Warning: Invalid range end in /usr/share/squirrelmail/functions/i18n.php on line xx
This problem can be reproduced only on RedHat 7.3 or RedHat Advanced Server 2.0. It happens only if a UTF-8 enabled glibc locale is used. This means that the ca_ES, cs_CZ, da_DK, en_CA, es_ES, es_US, et_EE, fi_FI, hr_HR, is_IS, lt_LT, lv_LV, no_NO, pl_PL and sl_SI locales are all affected. Emails that produce this kind of warning will do so because they use an encoding other than the one that is set in the user's locale.
The problem is in a broken glibc, Apache or PHP patch or patches used by RedHat. The system doesn't like regexp ranges between 237円-240円 (octal numbers; decimal 159-160). Recent SquirrelMail versions try to avoid this error.
FreeBSD requires the full locale name.
This is intentional. Those folders may be special in content, but not in name - they could be named anything, which is why SquirrelMail cannot pretend to know what they will be named. In some cases, users could already have folders with the desired translated name, which would cause confusion.
You can take some steps to provide translated special folder names for your users, but be careful about imposing translated folder names as the administrator rather than letting users manage their folders themselves.
config/conf.pl, which is usually aliased to configure in the main SquirrelMail directory) and choosing "3. Folder Defaults" and then entering the utf7-imap encoded folder names for "3. Trash Folder", "4. Sent Folder" and "5. Drafts Folder". You can also do the same by directly editing config/config.php and changing the values for $trash_folder, $sent_folder and $draft_folder.