[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: new language process (Quechua): 1st step adding a locale



On Mon, Feb 20, 2006 at 09:23:14AM -0500, Rudy Godoy wrote:
[...]
> I've read Christian's howto about d-i i18n and the new language process
> chapter[0], which was very helpful. I've collected some information
> regarding language information to build a locale, but since I'm not a
> native speaker, unfortunately nor able to speak much of some words,
> and not a locale expert either. I'like to make sure this is done right. 
> 
> I'm going to ask some native speakers and people that have plenty
> experience on the language to get feedback on the information needed.
> So, finally, my questions are: Do I need to check for something
> else/important than the information a locale needs[1]?
> Second, there are any tools/places where I can get more details about
> building the codes for LC_*?

Hi,

Unfortunately writing a locale is not currently an easy task, with no
good reason.  Here is a first try to lower barriers.  If you can have
this form filled in, I will translate it into a locale definition file.
Ideally someone will write a converter some day, or an online tool so
that anyone can produce her own locale file ;)
Some fields are already filled in by values taken from es_PE, hopefully
they are right but you can change them if needed.  When values are
uncertain, please mark them with a FIXME comment.  Do not hesitate to
ask if you have questions.
Thanks.

Denis
This file must be UTF-8 encoded.  Strings are enclosed in double
quotes.

  General information
  =-=-=-=-=-=-=-=-=-=

# 1. Descriptive name of this locale file, in English
title      "Quechua locale for Peru"

# 2. Contact information
contact      ""
address      ""
email        ""
organization ""
tel          ""
fax          ""

# 3. ISO codes
#     2- or 3-letter ISO code for this language
#            http://www.loc.gov/standards/iso639-2/langcodes.html
language   "qu"
#     2-letter ISO code for this territory
#            http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html
territory  "PE"

# 4. Charsets
#    List of supported charsets.  The first one is the default for
#    this locale.  New locales should not need any other chanrset
#    than UTF-8.
# Example:
# charset "UTF-8"
charset ""

  A. Mandatory sections
     =-=-=-=-=-=-=-=-=-

These sections are commonly used, and should be quite easily filled
in by native speakers.

A.1 Section LC_MESSAGES
    -------------------

# 1. Regular expressions matching yes/no answers.
#    English answers should also be taken into account
#    for convenience, except when there is a conflict
#    with localized strings.
# Example:
# yesexpr "^[sSyY]"
# noexpr  "^[nN]"
yesexpr ""
noexpr  ""

A.2 Section LC_NUMERIC
    ------------------

# 1. Formatting of numbers.
#    The formatted output of the number 1234567890.12 is 
#    used to determine localized values for:
#      a.  decimal point
#      b.  thousands separator
#      c.  grouping
# Example:
# sample_numeric   "1 234 567 890,12"
sample_numeric ""

A.3 Section LC_MONETARY
    -------------------

# 1. Currency symbol
currency_symbol   "S/"

# 2. Number of fraction digits 
frac_digits       "2"

# 3. Sample display for positive and negative amounts
#    The formatted output of the number 1234567890.12 associated
#    with currency symbol is used to determine localized values for:
#      a.  decimal point
#      b.  thousands separator
#      c.  grouping
#      d.  positive and negative signs
#      e.  relative position of currency symbol, sign and amount.
# Example:
# sample_positive   "S/ 1 234 567 890,12"
# sample_negative   "- S/ 1 234 567 890,12"
sample_positive   ""
sample_negative   ""

# 4. ISO 3-letter code currency symbol
int_curr_symbol   "PEN"

# 5. If the fields in 2 and 3 have different values when
#    used in conjunction with the 3-letter code above,
#    define int_frac_digits, int_sample_positive and
#    int_sample_negative

A.4 Section LC_TIME
    ---------------

#  This section deals with Gregorian calendar.
#  1. List of localized days of the week, starting from Sunday
# Example:
# day "Sunday";"Monday";"Tuesday";"Wednesday";"Thursday";"Friday";"Saturday"
day   "";"";"";"";"";"";""

#  2. List of localized abbreviated days of the week,
#     starting from Sunday
# Example:
# abday "Sun";"Mon";"Tue";"Wed";"Thu";"Fri";"Sat"
abday "";"";"";"";"";"";""

#  3. List of localized months, starting from January
# Example:
# mon "January";"February";"March";"April";"May";"June";"July";"August";"September";"October";"November";"December"
mon   "";"";"";"";"";"";"";"";"";"";"";""

#  4. List of localized abbreviated months, starting from January
# Example:
# abmon "Jan";"Feb";"Mar";"Apr";"May";"Jun";"Jul";"Aug";"Sep";"Oct";"Nov";"Dec"
abmon "";"";"";"";"";"";"";"";"";"";"";""

#  5. First day of the week in calendar display
# Example:
# first_weekday "Sunday"
first_weekday ""

#  6. Date formats.  These formats use the following escape sequences:
#
# %a  abbreviated weekday name
# %A  full weekday name
# %b  abbreviated month name
# %B  full month name
# %d  day of the month as a decimal number (range 01 to 31)
# %e  Like %d, but a leading zero is replaced by a space
# %H  hour as a decimal number using a 24-hour clock (range 00 to 23)
# %I  hour as a decimal number using a 12-hour clock (range 01 to 12)
# %k  Like %H, but a leading zero is replaced by a space
# %l  Like %I, but a leading zero is replaced by a space
# %m  month as a decimal number (range 01 to 12)
# %M  minute as a decimal number (range 00 to 59)
# %p  either ‘AM’ or ‘PM’ according to the given time value
# %S  second as a decimal number (range 00 to 60)
# %T  time in 24-hour notation (%H:%M:%S)
# %Y  year as a decimal number including the century
# %z  time-zone as hour offset from GMT
# %Z  time zone or name or abbreviation
#
#  To make tests, run date +"<format>", for instance
#    date +"%a %d %b %Y %H:%M:%S %Z"

#  6.1 Date representation
# Example:
# d_fmt   "%m/%d/%Y"
d_fmt   ""

#  6.2 Time representation
# Example:
# t_fmt   "%I:%M:%S %p"
t_fmt   ""

#  6.3 Time representation in the 12-hour clock format.
#      Leave it empty if it is not supported.
# Example:
# t_fmt_ampm "%I:%M:%S %p"
t_fmt_ampm ""

#  6.4 Strings for AM/PM.
#      Leave empty if 12-hour clock format is not supported.
# Example:
# am_pm "AM";"PM"
am_pm "";""

#  6.5 Output of the Unix 'date' command
# Example:
# date_fmt "%a %b %e %H:%M:%S %Z %Y"
date_fmt ""

#  6.6 Date and time representation.  It is usually shorter
#      than date_fmt
# Example:
# d_t_fmt "%a %d %b %Y %H:%M:%S %Z"
d_t_fmt ""

A.5 Section LC_PAPER
    ----------------

# 1. Paper format
# Example:
# format "letter"
format ""

A.6 Section LC_ADDRESS
    ------------------

# 1. The localized name of this territory
country_name ""

# 2. The localized name of this language
lang_name ""

# 3. Optional fields: car abbreviation, country postal code,
#    country ISBN code.  Put values only if you know that
#    they are right/
# Example:
# country_car  "F"
# country_post "FR"
# country_isbn "2"
country_car ""
country_post ""
country_isbn ""

  B. Sections with good default values
     =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

These sections are much more technical, but have good defaults.

B.1 Section LC_CTYPE
    ----------------

#  Define character classes.
#  See the LC_TYPE section of /usr/share/i18n/locales/i18n
#  This section may also be used to define transliteration rules.

B.2 Section LC_COLLATE
    ------------------

#  Define sorting order.  To determine whether the default value
#  can be safely used, write a file containing one or several words
#  per line, and run the 'sort' command through it under en_US.UTf-8
#  locale.  If the result is wrongly sorted according to your
#  cultural conventions, this section needs to be modified.
#  Of course, results are more accurate if corner cases are tested,
#  as with testing character case, diacritics, etc.

  C. Unused sections
     =-=-=-=-=-=-=-=

These sections are currently not used, and are mentioned here
for reference.

C.1 Section LC_TELEPHONE
    --------------------

# 1. International prefix
int_prefix     "51"

# 2. Optional fields
# Example:
# tel_int_fmt    "+%c %a %l"
# tel_dom_fmt    "%a %l"
# int_select     "00"
tel_int_fmt    ""
tel_dom_fmt    ""
int_select     ""

C.2 Section LC_MEASUREMENT
    ----------------------

# 1. Measurement system.  1=metric system, 2=USA
measurement    "1"

C.3 Section LC_NAME
    ---------------

name_fmt    ""
name_gen    ""
name_mr     ""
name_mrs    ""
name_miss   ""
name_ms     ""

Reply to: