Internationalization (I18N Support)


The internationalization (I18N) support provides multiple important features that simplify working on software internationalization and localization issues. To get a general overview of I18N/L10N support in IntelliJ IDEA, please see Live demo


Properties files editor

Advanced editing operations are available because of .properties files support in IntelliJ IDEA. IntelliJ IDEA recognizes the most common properties syntax: key — delimiter — value

 

Read more about properties files editor »

Auto-detect resource bundles

screenshot

Once you create several .properties files with the same name, differing by locale suffix, IntelliJ IDEA will automatically detect and virtually group them in the Project view into a Resource Bundle.

 

to the top

Resource Bundle editor

screenshot

The Resource Bundle editor allows to edit an entire set of property files at a time. You do not need to list all property keys in every file of the bundle. You just open the bundle, by pressing F4 on its node in the Project view, and edit all national values at a time. IntelliJ IDEA will take care of creating necessary records in all files. It will also red-highlight properties that are missing values for some languages. As soon as you enter a new string, the key — value pair will be added automatically to the corresponding file.

 

to the top

Resource properties completion

IntelliJ IDEA's famous code completion (Ctrl + Space) also works within String literals for completing property keys from the loaded resource bundles. This feature is a real time-saver when dealing with internationalization of applications.

screenshot

 

to the top

I18N inspections and intention actions

screenshot

IntelliJ IDEA provides advanced code inspections that allow you to quickly examine different internationalization issues in your project. They help you to locate hard-coded String literals, concatenated strings, incorrect calls of the toString() method, and other problems. Code inspections are accompanied by intelligent intention actions for fixing discovered problems. For example, you can instantly replace hard-coded String literals with retrievals from a resource bundle, creating the relevant new keys in the resource bundle at the same time.

 

Read more about code inspections and static code analysis ».

to the top

"Not requiring internationalization" annotation and intention action

For details, please see Contract annotations

 

to the top

GUI Localization

screenshot

Text values on GUI components can be specified either by constant strings, or be obtained from the specified resource bundle. You can quickly switch locale in the design time to get the view of your interface with different languages. All the internationalization inspections and intention actions work in GUI forms as well.

 

Read more about GUI Designer ».

to the top

GWT internationalization

Since version 6.0.2 IntelliJ IDEA supports automatic i18n for Google Web Toolkit (GWT) applications.

 

to the top

Per-file encoding support

Configure file encoding individually for a file, set of files, or an entire project.

 

to the top