Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Tip
titleTo sum up
  • Sonar Platform and Sonar Community Plugins rely on Language Pack plugins to get translations
  • Other independant Sonar plugins embed by themselves all the translations they need

Translation

...

Bundles

There are two types of files for localized messages:

...

Warning
titleUTF-8 encoding

In the Java API, properties files are supposed to be encoded in ISO-8859 charset. Without good tooling, this can be quite annoying to write translation for languages that do not fit in this charset.
This is why we deciced decided to encode the properties files in UTF-8, and let Maven turn them into ASCII at build time thanks to native2ascii-maven-plugin (check the French plugin pom.xml). This makes the process of writing translations with a standard editor far easier.
HTML files must also be encoded in UTF-8.

...

paramalerts.param.threshold=Thresholdwidget.<key>.

Key

Description

Example

metric.<key>.name

Metric name

metric.ncloc.name=Lines of code

metric.<key>.description

Metric description

metric.ncloc.description=Non Commenting Lines of Code

notification.channel.<channel key>

Name of notification channel

notification.channel.EmailNotificationChannel=Email

notification.dispatcher.<dispatcher key>

Subscription to notification channel

notification.dispatcher.ChangesInReviewAssignedToMeOrCreatedByMe=Changes in review assigned to me or created by me

rule.<repository>.<key>.name

Rule name

rule.pmd.StringInstantiation.name=String Instantiation

rule.<repository>.<key>.param.<param key>

Description of rule parameter

rule.pmd.VariableNamingConventions.param.memberSuffix=Suffix for member variables

dashboard.<key>.nameDashboard name, since 2.14.dashboard.Hotstpots.name=Point Chauds

qualifier.<key>

qualifiers.<key>

Qualifier name, since 2.13.

qualifier.TRK=Project

qualifiers.TRK=Projects

widget.<key>.name

Widget name

widget.alerts.name=Alerts

widget.<key>.description

Widget description

widget.alerts.description=Display project alerts

widget.<key>.
property.<property key>.name
Name of widget property
widget.hotspot_most_violated_rules.property.defaultSeverity.name=Default severity
widget.<key>.property.<property key>.desc
Description of widget property
widget.
hotspot_most_violated_rules.property.defaultSeverity.desc=If selected, 
severity used to initialize the dropdown list of widget
widget.<key>.property.<property>.option.<option>.name
Name of item of dropdown list 

widget.<key>.*

Any other widget message

widget.alerts.tooltip=Threshold is raised

<page key>.page

Page names shown in the left sidebar

cloud.page=Cloud

<page key>.*

Any other keys used in a page

cloud.size=Size

property.category.*<category key>

Category name of properties, since 2.11

property.category.General=Général

property.category.<category key>.description
Short description of category of properties, since 3.6property.category.General.description=General properties of Sonar
property.category.<category key>.<subcategory key>
Subcategory name of properties, since 3.6property.category.exclusions.global=Global exclusions
property.category.<category key>.<subcategory key>.descriptionShort description of subcategory of properties, since 3.6property.category.exclusions.global.description=Configuration of global exclusions

property.<key>.name

Property name, since 2.11

property.sonar.sourceEncoding.name=Source encoding

property.<key>.description

Property description, since 2.11

property.sonar.sourceEncoding.description=Source encoding

<plugin key>.*

Any other keys used by plugin

 

...

A Language Pack defines bundles for the Sonar Platform and for the Sonar Community Pluginsplugins.

Creating a new Language Pack

...