]> git.ipfire.org Git - thirdparty/man-pages.git/blobdiff - man5/locale.5
user_namespaces.7: ffix
[thirdparty/man-pages.git] / man5 / locale.5
index fdd5b9b541c2ac9efc8d95caf96d95ffff6a4ed5..3fff4f1ef07077e4d2beb8a92918a15be7a28d43 100644 (file)
@@ -1,3 +1,4 @@
+'\" t -*- coding: UTF-8 -*-
 .\" Copyright (C) 1994  Jochen Hein (Hein@Student.TU-Clausthal.de)
 .\" Copyright (C) 2008  Petr Baudis (pasky@suse.cz)
 .\" Copyright (C) 2014 Michael Kerrisk <mtk@manpages@gmail.com>
@@ -21,7 +22,7 @@
 .\" 2008-06-17 Petr Baudis <pasky@suse.cz>
 .\"     LC_TIME: Describe first_weekday and first_workday
 .\"
-.TH LOCALE 5 2014-03-18 "Linux" "Linux User Manual"
+.TH LOCALE 5 2016-07-17 "Linux" "Linux User Manual"
 .SH NAME
 locale \- describes a locale definition file
 .SH DESCRIPTION
@@ -33,17 +34,20 @@ command needs to convert it into the binary locale database.
 
 The definition files consist of sections which each describe a
 locale category in detail.
+See
+.BR locale (7)
+for additional details for these categories.
 .SS Syntax
 The locale definition file starts with a header that may consist
 of the following keywords:
 .TP
-.I <escape_char>
+.I escape_char
 is followed by a character that should be used as the
 escape-character for the rest of the file to mark characters that
 should be interpreted in a special way.
 It defaults to the backslash (\\).
 .TP
-.I <comment_char>
+.I comment_char
 is followed by a character that will be used as the
 comment-character for the rest of the file.
 It defaults to the number sign (#).
@@ -53,8 +57,30 @@ Each part can be copied from another existing locale or
 can be defined from scratch.
 If the category should be copied,
 the only valid keyword in the definition is
-.B copy
-followed by the name of the locale which should be copied.
+.I copy
+followed by the name of the locale in double quotes which should be
+copied.
+The exceptions for this rule are
+.B LC_COLLATE
+and
+.B LC_CTYPE
+where a
+.I copy
+statement can be followed by locale-specific rules and selected overrides.
+.PP
+When defining a category from scratch, all field descriptors and strings
+should be defined as Unicode code points in angle brackets, unless
+otherwise stated below.
+For example, "€" is to be presented as "<U20AC>", "%a" as
+"<U0025><U0061>", and "Monday" as
+"<U0053><U0075><U006E><U0064><U0061><U0079>".
+Values defined as Unicode code points must be in double quotes, plain
+number values are not quoted (but
+.BR LC_CTYPE
+and
+.BR LC_COLLATE
+follow special formatting, see the system-provided locale files for
+examples).
 .SS Locale category sections
 The following category sections are defined by POSIX:
 .IP * 3
@@ -84,29 +110,31 @@ the GNU C library supports the following nonstandard categories:
 .B LC_PAPER
 .IP *
 .B LC_TELEPHONE
+.PP
+See
+.BR locale (7)
+for a more detailed description of each category.
+
 .SS LC_ADDRESS
 The definition starts with the string
-.B LC_ADDRESS
+.I LC_ADDRESS
 in the first column.
 
 The following keywords are allowed:
-.\" Thanks to the kind folk who wrote localedata/locales/uk_UA
+.\" From localedata/locales/uk_UA
 .TP
 .I postal_fmt
 followed by a string containing field descriptors that define
 the format used for postal addresses in the locale.
 The following field descriptors are recognized:
-.\" From localedata/locales/uk_UA:
 .RS
-.\" .TP
-.\" %n
-.\"    BUG: %l escape sequence from ISO/IEC 14652:2002 is not supported
-.\"    by glibc
-.\" Person's name, possibly constructed with the
-.\" .B LC_NAME
-.\" .I name_fmt
-.\" keyword.
 .TP
+%n
+Person's name, possibly constructed with the
+.B LC_NAME
+.I name_fmt
+keyword (since glibc 2.24).
+.TP 4
 %a
 Care of person, or organization.
 .TP
@@ -140,12 +168,12 @@ Room number, door designation.
 Floor number.
 .TP
 %C
-Country designation, from the <country_post> keyword.
-.\" .TP
-.\" %l
-.\"     BUG: %l escape sequence from ISO/IEC 14652:2002 is not
-.\"    supported by glibc
-.\" Local township within town or city.
+Country designation, from the
+.I country_post
+keyword.
+.TP
+%l
+Local township within town or city (since glibc 2.24).
 .TP
 %z
 Zip number, postal code.
@@ -164,12 +192,11 @@ the \(aq%\(aq to specify that the
 information is taken from a Romanized version string of the
 entity.
 .RE
-
 .TP
 .I country_name
 followed by the country name in the language of the current document
 (e.g., "Deutschland" for the
-.IR de_DE
+.B de_DE
 locale).
 .TP
 .I country_post
@@ -182,10 +209,10 @@ followed by the two-letter abbreviation of the country (ISO 3166).
 followed by the three-letter abbreviation of the country (ISO 3166).
 .TP
 .I country_num
-followed by the numeric country code (ISO 3166).
+followed by the numeric country code as plain numbers (ISO 3166).
 .TP
 .I country_car
-followed by the code for the country car number.
+followed by the international licence plate country code.
 .TP
 .I country_isbn
 followed by the ISBN code (for books).
@@ -197,11 +224,15 @@ followed by the language name in the language of the current document.
 followed by the two-letter abbreviation of the language (ISO 639).
 .TP
 .I lang_term
-followed by the three-letter abbreviation of the language (ISO 639-2).
+followed by the three-letter abbreviation of the language (ISO 639-2/T).
 .TP
 .I lang_lib
-followed by the three-letter abbreviation of the language for
-library use (ISO 639-2).
+followed by the three-letter abbreviation of the language for library
+use (ISO 639-2/B).
+Applications should in general prefer
+.IR lang_term
+over
+.IR lang_lib .
 .PP
 The
 .B LC_ADDRESS
@@ -209,16 +240,10 @@ definition ends with the string
 .IR "END LC_ADDRESS" .
 .SS LC_CTYPE
 The definition starts with the string
-.B LC_CTYPE
+.I LC_CTYPE
 in the first column.
 
 The following keywords are allowed:
-.\" FIXME translit_start + translit_end are not documented
-.\" FIXME 'charclass' is not documented
-.\" FIXME 'charconv' is not documented
-.\" FIXME 'outdigit' is not documented
-.\" FIXME 'include' is not documented
-.\" FIXME 'map' (to_inpunct, to_outpunct) is not documented
 .TP
 .I upper
 followed by a list of uppercase letters.
@@ -386,6 +411,10 @@ and
 .B <tab>
 are automatically included.
 .TP
+.I charclass
+followed by a list of locale-specific character class names
+which are then to be defined in the locale.
+.TP
 .I toupper
 followed by a list of mappings from lowercase to uppercase
 letters.
@@ -401,68 +430,147 @@ followed by a list of mappings from uppercase to lowercase
 letters.
 If the keyword tolower is not present, the reverse of the
 toupper list is used.
+.TP
+.I map totitle
+followed by a list of mapping pairs of
+characters and letters
+to be used in titles (headings).
+.TP
+.I class
+followed by a locale-specific character class definition,
+starting with the class name followed by the characters
+belonging to the class.
+.TP
+.I charconv
+followed by a list of locale-specific character mapping names
+which are then to be defined in the locale.
+.TP
+.I outdigit
+followed by a list of alternate output digits for the locale.
+.TP
+.I map to_inpunct
+followed by a list of mapping pairs of
+alternate digits and separators
+for input digits for the locale.
+.TP
+.I map to_outpunct
+followed by a list of mapping pairs of
+alternate separators
+for output for the locale.
+.TP
+.I translit_start
+marks the start of the transliteration rules section.
+The section can contain the
+.I include
+keyword in the beginning followed by
+locale-specific rules and overrides.
+Any rule specified in the locale file
+will override any rule
+copied or included from other files.
+In case of duplicate rule definitions in the locale file,
+only the first rule is used.
+
+A transliteration rule consist of a character to be transliterated
+followed by a list of transliteration targets separated by semicolons.
+The first target which can be presented in the target character set
+is used, if none of them can be used the
+.I default_missing
+character will be used instead.
+.TP
+.I include
+in the transliteration rules section includes
+a transliteration rule file
+(and optionally a repertoire map file).
+.TP
+.I default_missing
+in the transliteration rules section
+defines the default character to be used for
+transliteration where none of the targets cannot be presented
+in the target character set.
+.TP
+.I translit_end
+marks the end of the transliteration rules.
 .PP
 The
 .B LC_CTYPE
 definition ends with the string
 .IR "END LC_CTYPE" .
 .SS LC_COLLATE
-.\" FIXME: the decsription of LC_COLLATE lacks a lot of details
-The
-.B LC_COLLATE
-category defines the rules for collating characters.
-Due to
-limitations of libc not all POSIX-options are implemented.
+Note that glibc does not support all POSIX-defined options,
+only the options described below are supported (as of glibc 2.23).
 
 The definition starts with the string
-.B LC_COLLATE
+.I LC_COLLATE
 in the first column.
 
 The following keywords are allowed:
-.\" FIXME 'reorder-after' is not documented
-.\" FIXME 'reorder-end' is not documented
-.\" FIXME 'reorder-sections-after' is not documented
-.\" FIXME 'reorder-sections-end' is not documented
-.\" FIXME 'script' is not documented
-.\" FIXME 'symbol-equivalence' is not documented
+.TP
+.I coll_weight_max
+followed by the number representing used collation levels.
+This keyword is recognized but ignored by glibc.
 .TP
 .I collating-element
+followed by the definition of a collating-element symbol
+representing a multicharacter collating element.
 .TP
 .I collating-symbol
+followed by the definition of a collating symbol
+that can be used in collation order statements.
+.TP
+.I define
+followed by
+.B string
+to be evaluated in an
+.I ifdef
+.B string
+/
+.I else
+/
+.I endif
+construct.
+.TP
+.I reorder-after
+followed by a redefinition of a collation rule.
+.TP
+.I reorder-end
+marks the end of the redefinition of a collation rule.
+.TP
+.I reorder-sections-after
+followed by a script name to reorder listed scripts after.
+.TP
+.I reorder-sections-end
+marks the end of the reordering of sections.
+.TP
+.I script
+followed by a declaration of a script.
+.TP
+.I symbol-equivalence
+followed by a collating-symbol to be equivalent to another defined
+collating-symbol.
 .PP
-The order-definition starts with a line:
+The collation rule definition starts with a line:
 .TP
 .I order_start
-.PP
 followed by a list of keywords chosen from
 .BR forward ,
 .BR backward ,
 or
 .BR position .
-The order definition consists of lines that describe the order
-and is terminated with the keyword
-.TP
+The order definition consists of lines that describe the collation
+order and is terminated with the keyword
 .IR order_end .
 .PP
-For more details see the sources in
-.I /usr/lib/nls/src
-notably the examples
-.BR POSIX ,
-.B Example
-and
-.BR Example2 .
-.PP
 The
 .B LC_COLLATE
 definition ends with the string
 .IR "END LC_COLLATE" .
 .SS LC_IDENTIFICATION
-This category contains meta-information about the locale definition.
-
 The definition starts with the string
-.B LC_IDENTIFICATION
+.I LC_IDENTIFICATION
 in the first column.
 
+The values in this category are defined as plain strings.
+
 The following keywords are allowed:
 .TP
 .I title
@@ -486,10 +594,14 @@ organization that maintains this document.
 .I tel
 followed by the telephone number (in international format)
 of the organization that maintains this document.
+As of glibc 2.24, this keyword is deprecated in favor of
+other contact methods.
 .TP
 .I fax
 followed by the fax number (in international format)
 of the organization that maintains this document.
+As of glibc 2.24, this keyword is deprecated in favor of
+other contact methods.
 .TP
 .I language
 followed by the name of the language to which this document applies.
@@ -499,15 +611,15 @@ followed by the name of the country/geographic extent
 to which this document applies.
 .TP
 .I audience
-followed by a description of the audience for which this document is intended.
+followed by a description of the audience for which this document is
+intended.
 .TP
 .I application
 followed by a description of any special application
 for which this document is intended.
 .TP
 .I abbreviation
-.\" as far as I can tell... (mtk)
-followed by the short name for this document.
+followed by the short name for provider of the source of this document.
 .TP
 .I revision
 followed by the revision number of this document.
@@ -534,7 +646,7 @@ definition ends with the string
 .IR "END LC_IDENTIFICATION" .
 .SS LC_MESSAGES
 The definition starts with the string
-.B LC_MESSAGES
+.I LC_MESSAGES
 in the first column.
 
 The following keywords are allowed:
@@ -559,7 +671,7 @@ definition ends with the string
 .IR "END LC_MESSAGES" .
 .SS LC_MEASUREMENT
 The definition starts with the string
-.B LC_MEASUREMENT
+.I LC_MEASUREMENT
 in the first column.
 
 The following keywords are allowed:
@@ -568,7 +680,7 @@ The following keywords are allowed:
 followed by number identifying the standard used for measurement.
 The following values are recognized:
 .RS
-.TP
+.TP 4
 .B 1
 Metric.
 .TP
@@ -582,9 +694,19 @@ definition ends with the string
 .IR "END LC_MEASUREMENT" .
 .SS LC_MONETARY
 The definition starts with the string
-.B LC_MONETARY
+.I LC_MONETARY
 in the first column.
 
+Values for
+.IR int_curr_symbol ,
+.IR currency_symbol ,
+.IR mon_decimal_point ,
+.IR mon_thousands_sep ,
+.IR positive_sign ,
+and
+.IR negative_sign
+are defined as Unicode code points, the others as plain numbers.
+
 The following keywords are allowed:
 .TP
 .I int_curr_symbol
@@ -606,8 +728,11 @@ followed by the string that will be used as a group separator
 when formatting monetary quantities.
 .TP
 .I mon_grouping
-followed by a string that describes the formatting of numeric
-quantities.
+followed by a sequence of integers separated by semicolons that
+describe the formatting of monetary quantities.
+See
+.I grouping
+below for details.
 .TP
 .I positive_sign
 followed by a string that is used to indicate a positive sign for
@@ -632,7 +757,7 @@ followed by an integer that indicates the placement of
 .I currency_symbol
 for a nonnegative formatted monetary quantity:
 .RS
-.TP
+.TP 4
 .B 0
 the symbol succeeds the value.
 .TP
@@ -640,34 +765,13 @@ the symbol succeeds the value.
 the symbol precedes the value.
 .RE
 .TP
-.I n_cs_precedes
-followed by an integer that indicates the placement of
-.I currency_symbol
-for a negative formatted monetary quantity.
-The same values are recognized as for
-.IR p_cs_precedes .
-.TP
-.I int_p_cs_precedes
-followed by an integer that indicates the placement of
-.I int_currency_symbol
-for a nonnegative internationally formatted monetary quantity.
-The same values are recognized as for
-.IR p_cs_precedes .
-.TP
-.I int_n_cs_precedes
-followed by an integer that indicates the placement of
-.I int_currency_symbol
-for a negative internationally formatted monetary quantity.
-The same values are recognized as for
-.IR p_cs_precedes .
-.TP
 .I p_sep_by_space
 followed by an integer that indicates the separation of
 .IR currency_symbol ,
 the sign string, and the value for a nonnegative formatted monetary quantity.
 The following values are recognized:
 .RS
-.TP
+.TP 4
 .B 0
 No space separates the currency symbol and the value.
 .TP
@@ -682,6 +786,13 @@ a space separates them from the value;
 otherwise a space separates the sign string and the value.
 .RE
 .TP
+.I n_cs_precedes
+followed by an integer that indicates the placement of
+.I currency_symbol
+for a negative formatted monetary quantity.
+The same values are recognized as for
+.IR p_cs_precedes .
+.TP
 .I n_sep_by_space
 followed by an integer that indicates the separation of
 .IR currency_symbol ,
@@ -689,28 +800,12 @@ the sign string, and the value for a negative formatted monetary quantity.
 The same values are recognized as for
 .IR p_sep_by_space .
 .TP
-.I int_p_sep_by_space
-followed by an integer that indicates the separation of
-.IR int_currency_symbol ,
-the sign string,
-and the value for a nonnegative internationally formatted monetary quantity.
-The same values are recognized as for
-.IR p_sep_by_space .
-.TP
-.I int_n_sep_by_space
-followed by an integer that indicates the separation of
-.IR int_currency_symbol ,
-the sign string,
-and the value for a negative internationally formatted monetary quantity.
-The same values are recognized as for
-.IR p_sep_by_space .
-.TP
 .I p_sign_posn
 followed by an integer that indicates where the
 .I positive_sign
 should be placed for a nonnegative monetary quantity:
 .RS
-.TP
+.TP 4
 .B 0
 Parentheses enclose the quantity and the
 .I currency_symbol
@@ -749,9 +844,39 @@ should be placed for a negative monetary quantity.
 The same values are recognized as for
 .IR p_sign_posn .
 .TP
+.I int_p_cs_precedes
+followed by an integer that indicates the placement of
+.I int_curr_symbol
+for a nonnegative internationally formatted monetary quantity.
+The same values are recognized as for
+.IR p_cs_precedes .
+.TP
+.I int_n_cs_precedes
+followed by an integer that indicates the placement of
+.I int_curr_symbol
+for a negative internationally formatted monetary quantity.
+The same values are recognized as for
+.IR p_cs_precedes .
+.TP
+.I int_p_sep_by_space
+followed by an integer that indicates the separation of
+.IR int_curr_symbol ,
+the sign string,
+and the value for a nonnegative internationally formatted monetary quantity.
+The same values are recognized as for
+.IR p_sep_by_space .
+.TP
+.I int_n_sep_by_space
+followed by an integer that indicates the separation of
+.IR int_curr_symbol ,
+the sign string,
+and the value for a negative internationally formatted monetary quantity.
+The same values are recognized as for
+.IR p_sep_by_space .
+.TP
 .I int_p_sign_posn
 followed by an integer that indicates where the
-.I negative_sign
+.I positive_sign
 should be placed for a nonnegative
 internationally formatted monetary quantity.
 The same values are recognized as for
@@ -771,18 +896,23 @@ definition ends with the string
 .IR "END LC_MONETARY" .
 .SS LC_NAME
 The definition starts with the string
-.B LC_NAME
+.I LC_NAME
 in the first column.
 
-The following keywords are allowed:
+Various keywords are allowed, but only
+.IR name_fmt
+is mandatory.
+Other keywords are needed only if there is common convention to
+use the corresponding salutation in this locale.
+The allowed keywords are as follows:
 .TP
 .I name_fmt
 followed by a string containing field descriptors that define
 the format used for names in the locale.
 The following field descriptors are recognized:
-.\" From localedata/locales/uk_UA:
+.\" From localedata/locales/uk_UA
 .RS
-.TP
+.TP 4
 %f
 Family name(s).
 .TP
@@ -854,7 +984,7 @@ definition ends with the string
 .IR "END LC_NAME" .
 .SS LC_NUMERIC
 The definition starts with the string
-.B LC_NUMERIC
+.I LC_NUMERIC
 in the first column.
 
 The following keywords are allowed:
@@ -868,8 +998,17 @@ followed by the string that will be used as a group separator
 when formatting numeric quantities.
 .TP
 .I grouping
-followed by a string that describes the formatting of numeric
-quantities.
+followed by a sequence of integers as plain numbers separated by
+semicolons that describe the formatting of numeric quantities.
+.IP
+Each integer specifies the number of digits in a group.
+The first integer defines the size of the group immediately
+to the left of the decimal delimiter.
+Subsequent integers define succeeding groups to the
+left of the previous group.
+If the last integer is not \-1, then the size of the previous group
+(if any) is repeatedly used for the remainder of the digits.
+If the last integer is \-1, then no further grouping is performed.
 .PP
 The
 .B LC_NUMERIC
@@ -877,9 +1016,11 @@ definition ends with the string
 .IR "END LC_NUMERIC" .
 .SS LC_PAPER
 The definition starts with the string
-.B LC_PAPER
+.I LC_PAPER
 in the first column.
 
+Values in this category are defined as plain numbers.
+
 The following keywords are allowed:
 .TP
 .I height
@@ -894,7 +1035,7 @@ definition ends with the string
 .IR "END LC_PAPER" .
 .SS LC_TELEPHONE
 The definition starts with the string
-.B LC_TELEPHONE
+.I LC_TELEPHONE
 in the first column.
 
 The following keywords are allowed:
@@ -905,7 +1046,7 @@ the format used to dial international numbers.
 The following field descriptors are recognized:
 .\" From localedata/locales/uk_UA
 .RS
-.TP
+.TP 4
 %a
 Area code without nationwide prefix (the prefix is often "00").
 .TP
@@ -947,12 +1088,10 @@ definition ends with the string
 .IR "END LC_TELEPHONE" .
 .SS LC_TIME
 The definition starts with the string
-.B LC_TIME
+.I LC_TIME
 in the first column.
 
 The following keywords are allowed:
-.\" FIXME 'era', 'era_d_fmt', 'era_d_t_fmt', 'era_t_fmt',  are not documented
-.\" FIXME 'timezone' is not documented
 .TP
 .I abday
 followed by a list of abbreviated names of the days of the week.
@@ -960,6 +1099,7 @@ The list starts with the first day of the week
 as specified by
 .I week
 (Sunday by default).
+See NOTES.
 .TP
 .I day
 followed by a list of names of the days of the week.
@@ -967,6 +1107,7 @@ The list starts with the first day of the week
 as specified by
 .I week
 (Sunday by default).
+See NOTES.
 .TP
 .I abmon
 followed by a list of abbreviated month names.
@@ -974,27 +1115,124 @@ followed by a list of abbreviated month names.
 .I mon
 followed by a list of month names.
 .TP
-.I am_pm
-The appropriate representation of the
-.B am
-and
-.B pm
-strings.
-.TP
 .I d_t_fmt
-The appropriate date and time format.
+followed by the appropriate date and time format
+(for syntax, see
+.BR strftime (3)).
 .TP
 .I d_fmt
-The appropriate date format.
+followed by the appropriate date format
+(for syntax, see
+.BR strftime (3)).
 .TP
 .I t_fmt
-The appropriate time format.
+followed by the appropriate time format
+(for syntax, see
+.BR strftime (3)).
+.TP
+.I am_pm
+followed by the appropriate representation of the
+.B am
+and
+.B pm
+strings.
+This should be left empty for locales not using AM/PM convention.
 .TP
 .I t_fmt_ampm
-The appropriate time format when using 12h clock format.
+followed by the appropriate time format
+(for syntax, see
+.BR strftime (3))
+when using 12h clock format.
+This should be left empty for locales not using AM/PM convention.
+.TP
+.I era
+followed by semicolon-separated strings that define how years are
+counted and displayed for each era in the locale.
+Each string has the following format:
+.RS
+.PP
+.IR direction ":" offset ":" start_date ":" end_date ":" era_name ":" era_format
+.PP
+The fields are to be defined as follows:
+.PP
+.TP 4
+.I direction
+Either
+.BR +
+or
+.BR -.
+.BR +
+means the years closer to
+.IR start_date
+have lower numbers than years closer to
+.IR end_date .
+.BR -
+means the opposite.
+.TP
+.I offset
+The number of the year closest to
+.IR start_date
+in the era, corresponding to the
+.IR %Ey
+descriptor (see
+.BR strptime (3)).
+.TP
+.I start_date
+The start of the era in the form of
+.IR yyyy/mm/dd .
+Years prior AD 1 are represented as negative numbers.
+.TP
+.I end_date
+The end of the era in the form of
+.IR yyyy/mm/dd ,
+or one of the two special values of
+.BR -*
+or
+.BR +* .
+.BR -*
+means the ending date is the beginning of time.
+.BR +*
+means the ending date is the end of time.
+.TP
+.I era_name
+The name of the era corresponding to the
+.I %EC
+descriptor (see
+.BR strptime (3)).
+.TP
+.I era_format
+The format of the year in the era corresponding to the
+.I %EY
+descriptor (see
+.BR strptime (3)).
+.RE
+.TP
+.I era_d_fmt
+followed by the format of the date in alternative era notation,
+corresponding to the
+.I %Ex
+descriptor (see
+.BR strptime (3)).
+.TP
+.I era_t_fmt
+followed by the format of the time in alternative era notation,
+corresponding to the
+.I %EX
+descriptor (see
+.BR strptime (3)).
+.TP
+.I era_d_t_fmt
+followed by the format of the date and time in alternative era notation,
+corresponding to the
+.I %Ec
+descriptor (see
+.BR strptime (3)).
+.TP
+.I alt_digits
+followed by the alternative digits used for date and time in the locale.
 .TP
 .I week
-followed by a list of three values:
+followed by a list of three values as plain numbers:
 The number of days in a week (by default 7),
 a date of beginning of the week (by default corresponds to Sunday),
 and the minimal length of the first week in year (by default 4).
@@ -1003,39 +1241,35 @@ Regarding the start of the week,
 shall be used for Sunday and
 .B 19971201
 shall be used for Monday.
-Thus, countries using
-.B 19971130
-should have local Sunday name as the first day in the
-.I day
-list,
-while countries using
-.B 19971201
-should have Monday translation as the first item in the
-.I day
-list.
+See NOTES.
 .TP
 .IR first_weekday " (since glibc 2.2)"
-Number of the first day from the
+followed by the number of the first day from the
 .I day
 list to be shown in calendar applications.
 The default value of
 .B 1
-corresponds to either Sunday or Monday depending
+(plain number) corresponds to either Sunday or Monday depending
 on the value of the second
 .I week
 list item.
+See NOTES.
 .TP
 .IR first_workday " (since glibc 2.2)"
-Number of the first working day from the
+followed by the number of the first working day from the
 .I day
 list.
+The default value is
+.BR 2
+(plain number).
+See NOTES.
 .TP
 .I cal_direction
-.\" from localedata/locales/uk_UA
-followed by a value that indicates the direction for the
+.\" From localedata/locales/uk_UA
+followed by a plain number value that indicates the direction for the
 display of calendar dates, as follows:
 .RS
-.TP
+.TP 4
 .B 1
 Left-right from top.
 .TP
@@ -1048,29 +1282,83 @@ Right-left from top.
 .TP
 .I date_fmt
 followed by the appropriate date representation for
-.BR date (1).
+.BR date (1)
+(for syntax, see
+.BR strftime (3)).
 .PP
 The
 .B LC_TIME
 definition ends with the string
 .IR "END LC_TIME" .
 .SH FILES
-/usr/lib/locale/
-\(em database for the current locale setting of that category
-.br
-/usr/lib/nls/charmap/* \(em charmap-files
+.TP
+.I /usr/lib/locale/locale-archive
+Usual default locale archive location.
+.TP
+.I /usr/share/i18n/locales
+Usual default path for locale definition files.
 .SH CONFORMING TO
-POSIX.2, ISO/IEC 14652.
-.SH BUGS
-This manual page isn't complete.
+POSIX.2.
+.SH NOTES
+The collective GNU C library community wisdom regarding
+.IR abday ,
+.IR day ,
+.IR week ,
+.IR first_weekday ,
+and
+.I first_workday
+states at
+https://sourceware.org/glibc/wiki/Locales
+the following:
+.IP * 3
+The value of the second
+.I week
+list item specifies the base of the
+.I abday
+and
+.I day
+lists.
+.IP *
+.I first_weekday
+specifies the offset of the first day-of-week in the
+.I abday
+and
+.I day
+lists.
+.IP *
+For compatibility reasons, all glibc locales should set the value of the
+second
+.I week
+list item to
+.B 19971130
+(Sunday) and base the
+.I abday
+and
+.I day
+lists appropriately, and set
+.I first_weekday
+and
+.I first_workday
+to
+.B 1
+or
+.BR 2 ,
+depending on whether the week and work week actually starts on Sunday or
+Monday for the locale.
 .\" .SH AUTHOR
 .\" Jochen Hein (Hein@Student.TU-Clausthal.de)
 .SH SEE ALSO
+.BR iconv (1),
 .BR locale (1),
 .BR localedef (1),
 .BR localeconv (3),
 .BR newlocale (3),
 .BR setlocale (3),
+.BR strftime (3),
+.BR strptime (3),
 .BR uselocale (3),
 .BR charmap (5),
-.BR locale (7)
+.BR charsets (7),
+.BR locale (7),
+.BR unicode (7),
+.BR utf-8 (7)