# Internationalisation

Important notes about running Munipack in a localised environment.

## I18n

There is effort to made Munipack locale-friendly; unfortunately, FITS world is, and will be forever, strictly ASCII-oriented and omiting any support of locales.

Never use:

- any local characters, like "čů", in FITS keywords, and
- coma "," as floating-point separator.

You can also consider to avoid spaces, and local characters, in file names. The space character separates words in sentences and in scripts. That means the command

    $ munipack fits Horse nebula.fits    # wrong

is passing two arguments, which is not what you are expecting. The difficulty can be solved by using apostrophes, or by escapes:

    $ munipack fits 'Horse nebula.fits'
    $ munipack fits Horse\ nebula.fits

But, the best solution is to avoid using blank characters. If it takes a place naturally, prefer the underscore:

    $ munipack fits Horse_nebula.fits

Be also nice to foreigners and colleagues over the world. The non-ASCII characters can be difficult to write and understand in their environments.

## Locales

Any locale setting will surprisingly interfere with both FITS and Virtual Observatory pragmatic conventions where non-Ascii characters are forbidden. The limitations is sometimes much worse, in cases, when just only ASCII 32 - 125 (in decimals) characters are allowed (FITS headers).

There are situations when use of locale-specific conventions must be respected:

- Virtual Observatory supports just the dot as the floating-point separator.
- Values in header and table of FITS must use dot as the floating-point separator.
- FITS extended filenames (separation of dimensions by comma)

Typical encountered problems are decimal-point related. Commas can be used both for separation of fractions and separations of numbers each other. To prevent the difficulty, one replaces `X,Y` to `"X Y"` (comma is replaced by a space and enclosed to apostrophes or quotes).

In doubts, it is recommended switch-off locales by the setup

    $ LC_ALL=C; export LC_ALL

which will leave rest of your system unaffected.