How to localize applications

Posted on jueves, mayo 19, 2011 by Pedro Wave

Traducción al español aquí

Localization of Visual Basic applications

For localization of an application, the user interface must be translated. To facilitate geolocalization, instead of writing the texts within the application should store the translated texts in a separate file or in a separate Excel sheet.

In Microsoft Office Excel 2003 and later versions, you can store strings for the user interface in the default resource file for the project. The file is named MyResources.resx in Visual Basic and Resources.resx in C#. Copies of the resource file can be translated into several languages.

Next page explains: How to Localize Excel Solutions

Best practices for localization

Before designing a multinational application with multi-language translation of the graphical user interface, best practices for localization should be considered:
  1. Move all localizable resources to separate resource-only DLLs or Excel  translation sheets.
  2. No encoding text within the user interface.
  3. Consider simultaneous translation solutions across multiple languages​​ selected by users.
  4. Controlling localization when open applications with different regional and language settings.
  5. Do not put nonlocalizable resources into the resource-only DLLs. This causes confusion for translators.
  6. Do not use composite strings that are built at run time from concatenated phrases. Composite strings are difficult to localize because they often assume an English grammatical order that does not apply to all languages. 
  7. Avoid the use of images or icons that contain text as they are more expensive to localize.
  8. Leave enough room for the length of the translated phrases. Some languages ​​require up to 75% more space to say the same in writing.
  9. Not encode the message boxes, dialogs, forms, menus manually.
  10. Hiring professional localization and translation.
Following these practices, the application will be easier to design and test regardless of the language the end user. Designers and testers can encode the user interface in their language which allows to find errors faster.

The Microsoft Go Global Developer Center gives tips for internationalization: Testing Software for World-Readiness

As the application code and the language of its user interface are not related. What is read and / or write on the screen should be designed in such a way that can be changed without changing the code or even go back to having to compile the program. Multilingual User Interface (MUI) implemented should allow the display multiple language versions of the user interface while at the same application.

For more information: Best Practices for Developing World-Ready Applications

Style Guide for the Spanish language worldwide

You can download the Style Guides in the Microsoft Language Portal for localization in various languages ​​here

To understand each other of 400 million Spanish language native speakers should follow a style guide and more knowing that counting those who have Spanish as a second language are about 500 million people worldwide.

To learn more about the differences between different versions of Spanish language: Spanish Language Portal

When developing an application in Spanish must know your audience and decide whether it will be written in a neutral, independent of the localization of the Spanish or respect the idiosyncrasies of the destination country because it does not uses the same words and phrases in Spanish spoken in Mexico than in Spain or in one of the 21 countries where Spanish is spoken.

Doubts about Spanish localization are available on the Pan-Hispanic Dictionary of doubts

How to make an Excel  geolocalized application

To localize an Excel workbook without the Visual Basic development tool, you can use one of Excel sheets to contain translations into and in the rest of sheets write references to the Languages sheet​​. An example of a translation into Excel is in the file that you can download in this article on this blog How to make Excel calculators

Help and information of this calculator is translated into 6 languages​​: English, Spanish, French, Italian, German and Portuguese, besides being very easy to incorporate new languages ​​or other versions of Latin American Spanish. The only thing needed is to add a translation into a new column of the sheet Idiomas.

The first row is the language name in their language and next rows are the translated phrases to each of those languages​​.
  1. English Español Français
  2. Language: Idioma: Langue:
  3. Keyboard: Teclado: Clavier:
  4. Touch calculator Calculadora táctil Calculateur touch
  5. My first calculator Mi primera calculadora Ma première calculatrice
  6. Phone calculator Calculadora Celular Calculateur de téléphone
Use Manager Names to create:

In the Calc sheet can choose the language of the user interface by changing the BM48 cell value by dropdown the language number:

Immediately you see the interactive translation of the sheet to the selected language. Next to the language number, language name is displayed with this formula:

On no sheet, strings are written with words or phrases translated but it refers to a cell in column A in the row of translated texts in the Idiomas ​​sheet. For example, to display the word "keyboard" in the cell AI48 on Calc sheet should make reference to cell A4 where its first language translation is located, in this case English, using the formula:

Within the VBA macro is coded as:

This is what is written, and never a string. The strings are easily translated and checked for proper grammar and spelling on a single Idiomas sheet that will be given to a translator with only one column with the source language to translate in another column the target language. If what you want is a different version of a Spanish dialect spoken in Mexico, for example, include a column located such as Mexican Spanish.

So that when you open Excel, it shows the computer language, enter this VBA code:

On the Cod sheet were included the List of country calling codes, sorted in column B, and the language number 1 through 6 in column C. Column D is the country name.

These codes are searched with the VLOOKUP function to match the Application.International (xlCountryCode) property. See here how Creating Macros for Different Language Versions

Conclusion: Following this procedure you can translate and localize applications written in Excel or in another language or programming language, but this requires adequate translation likewise among the thousands of existing software languages​​, which is beyond the scope of this article...

Traducción al español aquí

1 Response to "How to localize applications"

Alexander Barrel Says....

Recomiendo para iOS traducciones de aplicaciones y trabajo con cuerdas. Es una herramienta online con la memoria de traducción, principios activos y de muchas otras funciones útiles.

Leave A Reply

Dime si te gusta lo que lees y, si no te gusta, dime por qué. Tengo habilitada la moderación de comentarios. Tu comentario se publicará pronto.

Tell me if you like what you read here and if you don't like, tell me why. I've enabled comment moderation. Your comment will be published ASAP.

Mi Lista de Blogs- My Blog List