NAME
Getopt::EX::i18n - General i18n module
SYNOPSIS
command -Mi18n [ options ]
DESCRIPTION
This module i18n provide an easy way to set locale environment before executing arbitrary command. Locale list is taken from the system by locale -a
command. Next list is a sample locales available on macOS 10.15 (Catalina).
af_ZA Afrikaans / South Africa
am_ET Amharic / Ethiopia
be_BY Belarusian / Belarus
bg_BG Bulgarian / Bulgaria
ca_ES Catalan; Valencian / Spain
cs_CZ Czech / Czech Republic
da_DK Danish / Denmark
de_AT German / Austria
de_CH German / Switzerland
de_DE German / Germany
el_GR Greek, Modern (1453-) / Greece
en_AU English / Australia
en_CA English / Canada
en_GB English / United Kingdom
en_IE English / Ireland
en_NZ English / New Zealand
en_US English / United States
es_ES Spanish / Spain
et_EE Estonian / Estonia
eu_ES Basque / Spain
fi_FI Finnish / Finland
fr_BE French / Belgium
fr_CA French / Canada
fr_CH French / Switzerland
fr_FR French / France
he_IL Hebrew / Israel
hr_HR Croatian / Croatia
hu_HU Hungarian / Hungary
hy_AM Armenian / Armenia
is_IS Icelandic / Iceland
it_CH Italian / Switzerland
it_IT Italian / Italy
ja_JP Japanese / Japan
kk_KZ Kazakh / Kazakhstan
ko_KR Korean / Korea, Republic of
lt_LT Lithuanian / Lithuania
nl_BE Dutch / Belgium
nl_NL Dutch / Netherlands
no_NO Norwegian / Norway
pl_PL Polish / Poland
pt_BR Portuguese / Brazil
pt_PT Portuguese / Portugal
ro_RO Romanian / Romania
ru_RU Russian / Russian Federation
sk_SK Slovak / Slovakia
sl_SI Slovenian / Slovenia
sr_YU Serbian / Yugoslavia
sv_SE Swedish / Sweden
tr_TR Turkish / Turkey
uk_UA Ukrainian / Ukraine
zh_CN Chinese / China
zh_HK Chinese / Hong Kong
zh_TW Chinese / Taiwan, Province of China
As for Japanese locale ja_JP
, following options are defined by default, and set LANG
environment as ja_JP
.
LOCALE: --ja_JP (raw)
--ja-JP (dash)
--jaJP (long)
--jajp (long_lc)
LANGUAGE: --ja (language)
TERRITORY: --JP (territory)
--jp (territory_lc)
Short language option (--ja
) is defined in the alphabetical order of the territory code, so the option --en
is assigned to en_AU
. But if the same territory name is found as language, it takes precedence; German is used in three locales (de_AT
, de_CH
, de_DE
) but option --de
is defined as de_DE
.
Territory options (--JP
and --jp
) are defined only when the same language option is not defined by other entry, and only single entry can be found for the territory. Option for Switzerland is not defined because there are three entries (de_CH
, fr_CH
, it_CH
). Territory option --AM
is assigned to hy_AM
, but language option --am
is assigned to am_ET
.
OPTION
Option parameter can be given with setopt function called with module declaration.
command -Mi18n::setopt(name[=value])
- raw
- dash
- long
- long_lc
- lang
- territory
- territory_lc
-
These parameter tells which option is defined. All options are enabled by default. You can disable territory option like this:
command -Mi18n::setopt(territory=0,territory_lc=0) command -Mi18n::setopt=territory=0,territory_lc=0
- verbose
-
Show locale information.
$ optex -Mi18n::setopt=verbose date --it LANG=it_IT (Italian / Italy) Gio 4 Giu 2020 16:47:33 JST
- list
-
Show option list.
- listopt=option
-
Set the option to display option list and exit. You can introduce a new option -l to show available option list:
-Mi18n::setopt(listopt=-l)
- prefix=string
-
Specify prefix string. Default is
--
.
BUGS
Support only UTF-8.
SEE ALSO
- Getopt::EX
- optex
-
You can execute arbitrary command on the system getting the benefit of Getopt::EX using optex.
$ optex -Mi18n cal 2020 --am
LICENSE
Copyright (C) 2020 Kazumasa Utashiro.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
AUTHOR
Kazumasa Utashiro <kaz@utashiro.com>