GRASS GIS (Geographic Resources Analysis Support System)

GRASS: Development

Advanced search
Home Intro Docs Download Community Applications Development
Development

Get involved!

Roadmap

Translations (i18N)

Mailing lists | IRC

SVN Server

SVN tags

SVN commit ML

Platform notes

Bug/Feature trackers

History

GRASS messages translation project (i18N)

Translations - FreeType font support - i18N translation statistics/download

The idea

The great worldwide interest in GRASS suggests value in translating GRASS messages to languages other than english. The "infrastructure" to support single-byte as well as multi-byte character sets was implemented (based on the FOSS4G efforts).

The GRASS Development Team is seeking translators. Please subscribe to the dedicated mailing list at

     http://lists.osgeo.org/mailman/listinfo/grass-translations

Translation related issues may be discussed there (how to start a new translation, how to merge old G5.0 translated messages into GRASS 6 etc). This is an opportunity for non-programmers to contribute as messages can be easily translated. No programming skills required!
In the links section at bottom of this page you find references to the 'kbabel' and 'poEdit' software to easily translate the message files. The use of a Web based interface is under consideration.

Wanted languages

Simple Chinese, Swahili, Hindi, Greek, Tamil, Russian, Telugu, Português, ... Please join us!

HOWTO

We have 4 types of .po files per language (see locale/po/):
  • grasslibs_LANG.po: messages from libraries
  • grassmods_LANG.po: messages from commands ("modules")
  • grasstcl_LANG.po: messages from TclTk graphical user interface
  • grasswxpy_LANG.po: messages from wxgrass/wxPython graphical user interface
Briefly, the steps to translate messages are (may be modified in future, more details in the README file linked below):
  1. Get the latest development version from either the SVN repository or as SVN snapshot (see "Download" section) or download just existing .po files (see below) from SVN.
  2. run: 'cd locale' to change into the translation directory
  3. run: 'make pot' to create grass*.pot files (containing original messages)
  4. run: 'make update-po' merge new messages into existing *.po files (or create new po files)
  5. Now translate the messages in the po/*.po files (using kbabel or other editor)
  6. run: 'make mo' create the mo files (binary translated message files)
Please, click here to see details (find the README in the locale/ directory as well):
    Translation README

For terminology, please refer to the GRASS Translation Glossary.

To change to a certain LOCALE (if the system doesn't do it for you or for exploring other languages), do the following steps:

# 1. Define/check language settings:
   echo $LANG
   echo $LANGUAGE
   echo $LC_ALL

# 2. Change it (example for to Japanese):
# 2.a) bash shell:
       export LANG=ja_JP
       export LANGUAGE=ja_JP
       export LC_ALL=ja_JP

# 2.b) (t)csh shell:
       setenv LANG ja_JP
       setenv LANGUAGE ja_JP
       setenv LC_ALL ja_JP
Now launch GRASS 6 in this terminal. If you launch it from an icon, you have to change the LOCALE in the computer setup program instead.

Download of existing .po files for modification

Download current .po files from CVS (useful if you want to partecipate without compiling GRASS). Please announce your efforts on the 'GRASS translations' mailing list (see above) to avoid that work is doubled. To start a new language, you can simply rewrite an existing file. Take care to rename it properly and to update the language specific metadata.

Multi-byte FreeType/TrueType TTF support

A multilingual terminal emulator with multi-byte support is mlterm.
Using this terminal, GRASS 6 is already able to display e.g. Japanese fonts in SQL queries (here DBF file):

Tcl/TK TTF Support

Also the TclTK based graphical user interface renders TTF characters. Here an example for simple Chinese (the underlaying .po file is coded in UTF-8):

Here an example for Hindi (the underlaying .po file is coded in UTF-8):

Major parts of GRASS 6.2+ were translated to Vietnamese:

XDRIVER TTF Support

Recently the XDRIVER in GRASS was extended to support True/Free Type Fonts.

Links: .po file editors

  • kbabel: KBabel is a set of tools for editing and managing gettext PO files (should come with your Linux distibution)
  • poEdit: poEdit is cross-platform gettext catalogs (.po files) editor (works also under MS-Windows)

Statistics of current GRASS internationalization (i18N) status

The table is ordered by number of translated messages per language. The two character codes indicate the language, based on the Alpha-2 code of ISO 639-1. For download of a currently sleeping translation, please either get the file directly from the GRASS-CVS or see above.

GRASSLIBS


Warning: file() [function.file]: URL file-access is disabled in the server configuration in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 14

Warning: file(http://grass.osgeo.org/grass63/binary/linux/snapshot/i18n_stats_libs.txt) [function.file]: failed to open stream: no suitable wrapper could be found in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 14


Warning: Invalid argument supplied for foreach() in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 45
PO-FilesTranslated
messages
Fuzzy
translations
Untranslated
messages

This table is generated weekly.

GRASSMODS


Warning: file() [function.file]: URL file-access is disabled in the server configuration in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 14

Warning: file(http://grass.osgeo.org/grass63/binary/linux/snapshot/i18n_stats_mods.txt) [function.file]: failed to open stream: no suitable wrapper could be found in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 14


Warning: Invalid argument supplied for foreach() in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 45
PO-FilesTranslated
messages
Fuzzy
translations
Untranslated
messages

This table is generated weekly.

GRASSTCL


Warning: file() [function.file]: URL file-access is disabled in the server configuration in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 14

Warning: file(http://grass.osgeo.org/grass63/binary/linux/snapshot/i18n_stats_tcl.txt) [function.file]: failed to open stream: no suitable wrapper could be found in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 14


Warning: Invalid argument supplied for foreach() in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 45
PO-FilesTranslated
messages
Fuzzy
translations
Untranslated
messages

This table is generated weekly.

GRASSWXPY


Warning: file() [function.file]: URL file-access is disabled in the server configuration in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 14

Warning: file(http://grass.osgeo.org/grass63/binary/linux/snapshot/i18n_stats_wxpy.txt) [function.file]: failed to open stream: no suitable wrapper could be found in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 14


Warning: Invalid argument supplied for foreach() in /home/ominiverdi/grass.ominiverdi.org/devel/i18n_stats.inc on line 45
PO-FilesTranslated
messages
Fuzzy
translations
Untranslated
messages

This table is generated weekly.
The relevant column is 'Translated messages' as the message files do not necessarily contain all available messages of GRASS.

Last change: $Date: 2008-05-05 01:00:30 -0700 (Mon, 05 May 2008) $
$Author: neteler $

© 2004-2007 GRASS Development Team
Imprint | Comments about this page