View Issue Details

IDProjectCategoryView StatusLast Update
0004283mantisbtlocalizationpublic2008-10-18 18:34
Reporterjlatour Assigned Tosiebrand  
Status closedResolutionwon't fix 
Summary0004283: [all lang] Use gettext for localisation files

Convert the current strings_[language].txt files to use a gettext format. Apart from making it easier to maintain (extra tools available, it doesn't go unnoticed if the meaning of the string changes, you don't easily miss strings) this also adds extra flexibility to the system (you can use parameters and handle plural forms).

TagsNo tags attached.


child of 0004181 closed Features in Mantis 1.1 release 




2004-08-06 09:16

reporter   ~0006691

This is certainly not for 0.19.0.



2004-08-08 10:20

reporter   ~0006818

This should use something like as a fallback for when gettext is not available (as it is often not the case, and I don't think all our users can install it or have it installed).



2005-08-07 15:10

reporter   ~0011105

Anyway, the problem with using "real" gettext is that the .mo files get loaded into Apache's memory, and the only way to clear it out and get it to recognize updated .mo files is to restart Apache, which many of our users will be even less likely to be able to do. I have written an almost total replacement of gettext that we use in our PHP projects. Has a much better replacement mechanism than sprintf as suggested by "real" gettext, we "compile" .po files not into .mo files but into special .php files, etc. The latter would make something like File_Gettext unnecessary.

There is still much to discuss before implementation in Mantis can begin. For example:

  • Do we continue to have different charsets for different languages or do we switch everything to UTF-8? I'm strongly in favor of the latter but that's a big can of worms; see 0004084.
  • Do we write the English strings into the code now, as suggested by gettext, or continue to use string keys as we do now? The former makes the .po files easier to translate but makes it harder to update the English text.


2007-02-01 18:59

reporter   ~0013997

TO: achumakov RE: the UTF-8 implementation
I am setting up on IIS6, MS SQL, and PHP5.2.0, in Hungary. Had problems with
1.0.6 but read comments about global conversion to UTF-8, so migrated to 1.1.0a2
and that seemed to clear things up.

But when I started using SQL Query Analyzer to peek and poke directly into the
database in response to thoughts about generating custom reports (as we commonly
do via TSQL), I noticed UTF-8 displays incorrectly. Its a UTF-8 to Unicode UCS-2 thing apparently.

I found this:

An excerpt:

  1. Store the actual UTF-8 data on the server using the
    BINARY/VARBINARY/IMAGE columns. Storing UTF-8 data on SQL Server means that you
    can not use SQL Server to sort or find ranges of these values as if the data
    were valid character data. The types of operations on columns containing UTF-8
    data that would not return expected results include "ORDER BY", greater-than ">"
    and less-than "<" comparisons, and the built-in SQL Server string manipulation
    functions such as SUBSTRING().

:-\ gnarly issue



2008-09-10 17:30

developer   ~0019366

Closed as WONTFIX. Out current i18n implementation could be a lot better, but using gettext is not a requirement.

Mantis was recently added to the products supported by That platform also supports a gettext export, which makes it possible to work on Mantis using gettext tools.

Related Changesets

MantisBT: master 8e6efc67

2011-03-06 03:25:47


Details Diff
Improve JavaScript "check all" functionality on forms

The "check all" aka "select all" checkboxes should reflect the current
state of the checkboxes they're linked to. If a user clicks on "Select
All" on view_all_bug_page and then proceeds to uncheck some of the
issues one by one, the "Select All" checkbox should no longer be

It should be noted that jQuery doesn't correctly handle
addition/modification/removal of attributes for documents served as
Content-Type: application/xhtml+xml. jQuery bug 0004283 provides further
information at
Affected Issues
mod - javascript/common.js Diff File

Issue History

Date Modified Username Field Change
2004-08-06 09:11 jlatour New Issue
2004-08-06 09:11 jlatour Status new => assigned
2004-08-06 09:16 jlatour Note Added: 0006691
2004-08-06 09:16 jlatour Projection none => major rework
2004-08-06 09:16 jlatour ETA none => < 1 week
2004-08-08 04:07 jlatour Relationship added child of 0004181
2004-08-08 04:07 jlatour ETA < 1 week => none
2004-08-08 10:20 jlatour Note Added: 0006818
2005-08-07 15:10 ryandesign Note Added: 0011105
2006-09-24 09:01 achumakov Summary Use gettext for localisation files => [all lang] Use gettext for localisation files
2006-09-24 12:42 vboctor Assigned To jlatour =>
2006-09-24 12:46 vboctor Status assigned => new
2007-02-01 18:59 tballister Note Added: 0013997
2008-09-10 17:30 siebrand Note Added: 0019366
2008-09-10 17:30 siebrand Assigned To => siebrand
2008-09-10 17:30 siebrand Status new => resolved
2008-09-10 17:30 siebrand Resolution open => won't fix
2008-10-18 18:34 giallu Status resolved => closed
2011-03-05 22:31 dhx Changeset attached => MantisBT master 8e6efc67