MusicBrainz Server/Internationalization: Difference between revisions
(→Translation components: List components of MusicBrainz translation project) |
(→Countries: Comment on release country names and area aliases) |
||
Line 22: | Line 22: | ||
=== Countries === |
=== Countries === |
||
It contains the names of [[Release/Country|release countries]]. |
It contains the names of [[Release/Country|release countries]]. |
||
<i style="color: red;">TBD: How do these compare to area aliases in website UI?</i> |
|||
It is also used by [[MusicBrainz Picard]]. |
It is also used by [[MusicBrainz Picard]]. |
||
Note that country names should be the same as area aliases; See [[jira:MBS-13140]] for follow-up. |
|||
=== Instrument Descriptions === |
=== Instrument Descriptions === |
Revision as of 14:28, 23 June 2023
Getting started
If you want to help translate, go to the Transifex page and create an account. If there is already a team for your language, you can join it, if not, you can ask for the creation of a new team.
There used to be an i18n mailing list, but it is discontinued and has been replaced by new forums (using categories and tags).
Questions or problems
If you have any questions or you're having any problems, you're welcome to ask in the #metabrainz IRC channel.
If you find a bug in the server, you can enter an issue in our bug tracker.
Translation components
The following components are available for translation:
Attributes
It contains the names and the descriptions of MusicBrainz entity attributes such as artist’s type and so on.
It is also used by MusicBrainz Picard.
Countries
It contains the names of release countries.
It is also used by MusicBrainz Picard.
Note that country names should be the same as area aliases; See jira:MBS-13140 for follow-up.
Instrument Descriptions
It contains only the descriptions of instruments.
Instruments
It contains only the names of instruments.
TBD: How do these compare to instrument aliases in website UI?
Languages
It contains the names of languages that can be set for [[Release#Language|release]’s tracklist and [[Work|work]’s lyrics.
Relationship Types
It contains the names, descriptions, and (forward/long/reverse) link phrases of relationship types as well as the names and descriptions of relationship attributes. See also Relationships.
Scripts
It contains the names of scripts that can be set for [[Release#Script|release]’s tracklist.
Note: Because of transliteration a language is not necessarily paired with its usual script/writing system.
Server
It contains the messages shown to users and admins by the MusicBrainz website.
Statistics
It contains the events in MusicBrainz timeline and the messages for Database Statistics section of the website UI.
Viewing the translations
Some of the more complete translations (generally those over 50% translated) are available on the beta server at https://beta.musicbrainz.org/. The translations do not update automatically (see development beta cycle), but the beta server uses the same database as the main server. If you want to use the beta server all of the time for your editing, click the "Use beta site" link in the footer of https://musicbrainz.org/.
Language-specific pages
This wiki is the perfect place to discuss specific languages translations issues such as glossary, or right-to-left required patches etc.
Variables
Translatable messages not only contain plain text or HTML markup, they can also contain replaceable variables. For example:
- In
{entity1} has a BookBrainz page at {entity0}
, which is a URL-Work relationship link phrase, there are two entity variables whose name should not be translated, since variable{entity1}
will be replaced by a work title and{entity0}
by a URL. - In link phrases, variables are often used for (optional) attributes, in order to avoid inflating the number of messages. Below are examples with the “additional” attribute:
{additional}
will be replaced by additional if the “additional” attribute is set, otherwise it will be removed from the text.{additional:additionally}
will be replaced by additionally if the “additional” attribute is set, otherwise it will be removed from the text.{additional:an|a}
will be replaced by an if the “additional” attribute is set, otherwise it will be replaced by a.{additional:%|regular}
will be replaced by additional if the “additional” attribute is set, otherwise it will be replaced by regular.- Hence,
{additional}
can be translated as{additional:aldona}
in Esperanto.
- Note that
{instrument}
and{vocals}
variables are replaced by the specific instrument/vocals name:{instrument:%|instruments}
will be replaced by piano (or its translation) if the related instrument is “piano”, otherwise it will be replaced by instruments.
Development
The MusicBrainz Server code is using gettext to provide with automatic internationalization of messages and texts used in the Perl code and templates.
A .pot file is provided with all the strings used in the server. They are in English.