Edgewall Software

Version 24 (modified by Mikael Relbe, 12 years ago) ( diff )

Added some admin issues found in r9547

Missing translations and i18n support

By module



  • For Priorities, Ticket Types, Resolutions, Severities:
    • When adding new enum, the name of the field in the message "The %(field)s \"%(name)s\" has been added." is not translatable.
    • When removing existing enums, the name of the field in the message "The selected %(fields)s have been removed." is not translatable.
    • When attempting to add enums with duplicate names, the name of the field in the message "%(type)s %(name)s already exists" is not translatable.
    • Note that for Milestones and Versions the template file contains separate messages, so they are translatable.
    • Make headers of enum pages be translated as a whole, and not composed of two separate translated words, to allow for correct casing/wording in different languages (trunk/trac/admin/templates/admin_enums.html@9547:19,33#L13)
  • Repository administration:
  • Plugins


  • The title "Configuration Error" is not translatable.

To recreate the problem I changed this in trac.ini:

max_size = ddd262144

And tried to upload an attachment.


  • Milestone milestone completed


  • In view milestone the dropdown of the ticket status by is not translatable.
  • In view milestone and in roadmap, the "Active" and "Closed" words (referring the ticket counts) are not translatable.


  • Number of matches in reports view. Example:
    (2 matches)
  • "Ticket" and "Created" headers in the reports table.


  • When editing a comment, three buttons are shown. Titles (<input … title="") of two of them — "Preview" and "Submit changes" — are not translatable.
  • Two buttons are show next to every comment — "Reply" and "Edit". Titles (<input … title="") of them both are not translatable. r9328
    Actually, there were lots of issues with title attributes: those attributes are collected automatically (i.e. no need for explicit ${_('...')} expressions), but only when the message doesn't contain an expression. In the latter case, they need an explicit ${_('... %(param)s ...', param=...)} wrapping.
  • In newticket, The Reporter fieldset title is not translatable. In view ticket, the Author fieldset title is not translatable. (same issue)
  • Attach another file button text on trac/attachment/ticket/<ticketID> page


  • When checking the "Show description under each result" ins query result, the description section that appears below each ticket contains the word description, which is not translatable.


  • When viewing file diff, the set in "Property %(propname)s set to" is not translatable (which is strange, considering that in the source browser it is fine..)


Version(s) deletion

  • When trying to delete version(s) of wiki pages, on the confirmation page buttons "Delete this version" and "Delete those versions" are not translatable.
  • On the same page, the words in italics are not translatable too:

    Delete version(s) 2 to 7 of WikiStart

    Are you sure you want to delete versions 2 to 7 of this page?

Page deletion

  • When trying to completely delete a page, on the confirmation page the button "Delete page" is not translatable.
  • On the same page the word in italics is not translatable:

    Are you sure you want to completely delete this page?


  • When attempting login with no authentication configuration, the message "Authentication information not available. Please refer to the installation documentation." is not translatable.

Inappropriate grouping

  • The string "by" in timeline and in milestone_view (which is grouped in the messages template) does not have the same meaning (see also #9159). In timeline it means the user who made the last change ("by whom"), and in milestone_view it refers to the field to be grouped by ("according to what").
    • More specifically, the string "ticket status by" in the milestone_view should be treated as one, and not split to "ticket status" and "by".

Unnecessary strings

This strings probably unchanged in all translations:

#: trac/templates/about.html:38
msgid "COPYING"

#: trac/templates/about.html:44
msgid "http://trac.edgewall.org/"

#: trac/templates/error.html:227
msgid "TracGuide"

(rblank) I don't know if we can actually prevent those from being extracted from templates.

#: trac/templates/macros.html:161
#, fuzzy, python-format
msgid "%(title)s %(unit)s:"
msgid_plural "%(title)s %(units)s:"

This is #8588 and would be needed for the same reason as the one below, but having different keys unit/units in msgid and msgid_plural doesn't make msgfmt happy…

#: trac/ticket/templates/ticket.html:267
#: trac/ticket/templates/ticket_box.html:43
#, python-format
msgid "%(field)s:"

This one is very important and needed for typographical translations (e.g. in French, it will be translated to "%(field)s :" and that space is a non-breaking space. I'll try to see if adding a i18n:comment attribute works.

Note: See TracWiki for help on using the wiki.