doc/help localization changes
[oweals/cde.git] / cde / lib / DtHelp / Linux.lcx
1 @!!!!!!!!!!!!!! Linux Locale-Related Translations !!!!!!!!!!!!!!
2 ! File:                 Linux.lcx
3 ! Default location:     /usr/dt/config/svc/Linux.lcx
4 ! Purpose:
5 !    Define the Linux-specific set of locale-related translations.
6 ! Description:
7 !    This file contains the set of all locale-related translations
8 !    that  can occur during _DtLcxXlateOpToStd() and _DtLcxStdToOp()
9 !    calls on Linux platforms. Note that platform-specific tables may
10 !    include more than one translation to and from CDE standard
11 !    strings if they can be distinguished by version, operation, or
12 !    pattern matching.
13 !
14 !    It is important that additional CDE standard strings only
15 !    be created by the CDE owner of the _DtLcx translation service
16 !    and NOT be created by an individual vendor or user.  This be because
17 !    the purpose of adopting a set of CDE standard strings is to 
18 !    support interoperability across platforms.  If individual vendors 
19 !    add their own "standard" strings and these strings are not
20 !    known on other platforms, then the goal of interoperability
21 !    will be defeated.
22 !
23 !    If you feel that a new CDE standard string is needed,
24 !    contact your CDE representative/vendor with a specific
25 !    proposal and justification and have them forward it to
26 !    the owner of the CDE _DtLcx service.
27 !
28 !    Note that it is allowed for vendors and users to add new
29 !    operations for which translations are specified and which
30 !    utilize the standard strings.  If the operations are of
31 !    general utility, please bring them to the attention of
32 !    your CDE representative/vendor for forwarding to the
33 !    _DtLcx owner.
34 ! Invoked by:
35 !    This table is used by the _DtLcx translation service
36 ! Defects:
37 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
38
39 !!!!!!!!!!!!!!!! translation specification syntax !!!!!!!!!!!!!!!!!!!
40 ! Introductory fields:
41 ! ====================
42 ! The _DtLcx translation specifications have a fixed number of
43 ! introductory fields followed by a several standard value
44 ! fields and the operation-specific value.
45 ! The introductory fields are:
46 !  <platform>.<version range>.<operation(s)>.<kind>
47 !
48 ! Platform generally is the same string as uname(1) -s.
49 ! Version range utilizes normalized version numbers that 
50 !   are acquired using the 'version' translations.
51 ! Operations are one or more comma-separated strings that
52 !   uniquely identify the operation associated with the
53 !   operation-specific value.  This string is specified
54 !   as part of the request for a translation.
55 !
56 ! Kinds of translations allow the mechanism to support several modes
57 !   of operation, each useful for different purposes.  When
58 !   reading or writing a specification, pay particular attention
59 !   to the kind of specification, as this guides the usage of it.
60 !
61 ! Specification kinds:
62 !  .=. means a valid bi-directional translation requiring the op-value 
63 !      in the translation specification to exactly match the op-value of 
64 !      the call to _DtLcxXlateOpToStd(), e.g. foo matches only foo
65 !  .~. means a valid bi-directional translation requiring the op-value 
66 !      in the translation specification to match the beginning of the
67 !      op-value of the call to _DtLcxXlateOpToStd(), e.g. foo matches 
68 !      foo@@bar.  This is often useful, e.g. for operation-specific
69 !      locale strings that may also contain modifier suffixes.
70 !  .>. means only from standard to op-specific (generally a 
71 !      compatibility translation, meaning on op-specific value 
72 !      that will work for the standard, although that is not 
73 !      the straight mapping)
74 !  .<. means only from op-specific to standard (generally a
75 !      regex in the op-value which is used to map a class of
76 !      op values to a standard value)
77 !  .0. means that translation is not supported and if a translation
78 !      request matches the specification, the request will fail.
79 !
80 ! Standard values:
81 ! ================
82 ! _DtLcx defines the order of the standard values in the
83 ! translations it utilizes.  All translation specifications
84 ! must adhere to this order.
85 !    <std lang_terr>.<std codeset>.<std modifier>
86 ! In CDE 1.0, no modifiers are standard and that
87 ! portion of the table is unspecified.  This means
88 ! that no CDE standard modifiers are available across
89 ! platforms.  Operations that use only the <std codeset>
90 ! should specify the wildcard character ("?") for the 
91 ! <std lang_terr> value.
92 !
93 ! Operation-specific value:
94 ! =========================
95 ! The operation-specific value is a string that is used
96 ! according to the kind of translation.  The syntax is
97 !      : <op-string>
98 ! or   :  "<op-string>", if it contains white space
99 !
100 ! Filling in the table of translations:
101 ! =====================================
102 ! The person preparing the translation table should know 
103 ! the minimum version of the target platform that is
104 ! be supported.  For example, assume that we must
105 ! complete the table for all versions 9.00 and higher.
106
107 ! The objective is then to provide two sets of translations:
108 ! a full set of translations from CDE standard locales to
109 ! valid platform locales, and a full set of translations
110 ! from valid platform locales to some or all CDE standard
111 ! locales.  
112
113 ! Translations from CDE standard locales to valid platform
114 ! locales must use the .~. .=. or .>. mappings.  When there 
115 ! is a 1:1 mapping between a CDE locale and a platform locale, 
116 ! use the .~. or .=. mapping.  See the comment below to 
117 ! decide which to use.  When there is no 1:1 mapping between 
118 ! CDE locale and platform locale, use the .>. mapping.  This 
119 ! provides a valid translation from the CDE locale to the 
120 ! best-suitable platform locale, but never translates from 
121 ! that platform locale to the CDE locale.
122
123 ! Translations from every platform locale to the appropriate 
124 ! CDE locale must use the .~. .=. or .<. mappings.
125 ! When there is a 1:1 mapping between a platform locale and
126 ! a CDE standard locale, use the .~. or .=. mapping.  See the
127 ! comment below to decide which to use.  If there is a 1:1
128 ! mapping, but the platform locale pattern uses a regular
129 ! expression, or if more than one platform locale can 
130 ! be translated to one CDE standard locale, the .<. mapping must 
131 ! be used.  
132
133 ! If no appropriate CDE standard locale can be found, you have 
134 ! identified the need for a new CDE standard locale.  Refer to 
135 ! the instructions at the head of this file for how to go about 
136 ! registering a new CDE standard locale.  You should not create 
137 ! a new "standard" locale (the left hand side of the translation 
138 ! specification) without registering it with CDE, because this 
139 ! will hinder the free exchange of information across locales 
140 ! and platforms.
141
142 ! The .=. and .~. mappings are similar.  The difference is
143 ! that the .=. mapping requires an exact string match between
144 ! the platform locale and the string provided to the
145 ! translation routine.  Generally speaking, this mapping
146 ! is risky unless exact matchings can be guaranteed in
147 ! all DtLcx clients for the particular operation in question.
148 ! The .~. mapping is to be preferred, but the .=. translation
149 ! is useful in limited situations, where similar strings may
150 ! occur.
151
152 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
153
154 ! define this resource to dump debug/test info
155 !*debugDtXlate:  True
156
157 !!!!!!!!!!!!!!!! Linux Version Identificaton !!!!!!!!!!!!!!!!!
158 ! These translations are used by the _DtXlateGetXlateEnv()
159 ! call to determine the version number to use.
160 !
161 ! To understand the translation, realize that the
162 ! operation-specific regexp(5) pattern on the right
163 ! hand side is matched against the strings returned
164 ! by uname(2).  The best match determines the "normalized"
165 ! version number of the platform, which should range from 
166 ! 001 and up.  By convention, major release numbers
167 ! map to centuries and minor release numbers to within
168 ! the century.
169 !
170 ! To determine the string that the regular expression on the
171 ! right hand side is matching against, use uname(1) and run
172 ! 'uname -r' and 'uname -v' and note the strings.  During execution,
173 ! the strings returned by this command are retrieved and
174 ! concatenated "rv"--in that order, no extra spaces.
175 ! This is the string that the pattern must match.
176 !
177 ! Sometimes this string may not be intuitive.  For example,
178 ! note that Linux 3.2 returns 2 for 'uname -r' and 3 for 'uname -v'.
179 ! So the pattern string must be 23, not 32.  Do not go by
180 ! the order of 'uname -rv' or 'uname -vr', as that is not used.
181 !!
182
183 Linux.?.version.<.100:  ".*"       !! any CDE value
184
185
186 !!!!!!!!!!!!!!!! Linux-specific setlocale translations !!!!!!!!!!!!!!!!!!!
187 ! These translations are for the string returned by the
188 ! getlocale() or setlocale(LC_xxx,NULL) operations, but not
189 ! setlocale(LC_ALL,NULL) operation.
190 !
191 ! It provides translations from Linux operation-specific
192 ! to CDE standard strings and back again.
193 !
194 ! Some language,territory combinations have the following comments:
195 !  (1) These ISO territory names may be subject to change
196 !      However, their CDE names will continue to be supported
197 !  (2) No ISO "territory" name exists for the Arabic-speaking regions of the
198 !      world as a whole.  Vendors have sometimes supplied their own.
199 !      Those names, when conformant to the ISO model, will be adopted for CDE.
200 !
201 !Platform Operation Lang_Terr           Op-Value                Language,Territory           Who has
202 !---     ---------   -----              --------                ------------------           -------
203 !   Version      Kind      Codeset
204 !   ----           -       ---------
205
206
207 ! setlocales Compliance
208 Linux.100+.setlocale.~.C.IBM-850:       C                         ! setlocales compliance           ,IBM
209 Linux.100+.setlocale.~.POSIX.IBM-850:   POSIX                     ! setlocales compliance           ,IBM
210 Linux.100+.setlocale.~.C.ISO-8859-1:       C                      ! setlocales compliance           ,IBM, HP, Sun       , USL
211 Linux.100+.setlocale.~.POSIX.ISO-8859-1:   POSIX                  ! setlocales compliance           ,IBM, HP, Sun       , USL
212
213 ! W European/Americas, Latin 1 codeset
214 Linux.100+.setlocale.~.da_DK.ISO-8859-1:        da_DK !.ISO8859-1         ! Danish, Denmark            XoJIG,IBM, HP,           , USL ("da")
215 Linux.100+.setlocale.>.de_AT.ISO-8859-1:        de_DE !.ISO8859-1         ! German,Austria             XoJIG,   ,   ,           , USL        
216 Linux.100+.setlocale.~.de_CH.ISO-8859-1:        de_CH !.ISO8859-1         ! German,Switzerland         XoJIG,IBM,   ,           , USL        
217 Linux.100+.setlocale.~.de_DE.ISO-8859-1:        de_DE !.ISO8859-1         ! German, Germany            XoJIG,IBM, HP, Sun ("de"), USL ("de")
218 Linux.100+.setlocale.>.en_AU.ISO-8859-1:        en_GB !.ISO8859-1         ! English,Australia               ,   ,   ,           , USL
219 Linux.100+.setlocale.>.en_CA.ISO-8859-1:        en_US !.ISO8859-1         ! English,Canada             XoJIG,   ,   ,           , USL        
220 Linux.100+.setlocale.>.en_DK.ISO-8859-1:        en_GB !.ISO8859-1         ! English, Denmark           XoJIG,   ,   ,           , USL        
221 Linux.100+.setlocale.~.en_GB.ISO-8859-1:        en_GB !.ISO8859-1         ! English, U.K.              XoJIG,IBM, HP,           , USL ("en")
222 Linux.100+.setlocale.>.en_JP.ISO-8859-1:        en_JP !.ISO8859-1         ! English, Japan             XoJIG,IBM,   ,           , 
223 Linux.100+.setlocale.>.en_JP.ISO-8859-1:        en_US !.ISO8859-1         ! English, Japan             XoJIG,IBM,   ,           , 
224 Linux.100+.setlocale.>.en_IE.ISO-8859-1:        en_GB !.ISO8859-1         ! English, Ireland           XoJIG,   ,   ,           , USL        
225 Linux.100+.setlocale.>.en_MY.ISO-8859-1:        en_US !.ISO8859-1         ! English,Malaysia                ,   ,   ,           , USL        
226 Linux.100+.setlocale.>.en_NZ.ISO-8859-1:        en_GB !.ISO8859-1         ! English,New Zealand             ,   ,   ,           , USL
227 Linux.100+.setlocale.>.en_KR.ISO-8859-1:        en_KR !.ISO8859-1         ! English,Korea                   ,   ,   ,           , USL
228 Linux.100+.setlocale.>.en_KR.ISO-8859-1:        en_US !.ISO8859-1         ! English,Korea                   ,IBM,   ,           , 
229 Linux.100+.setlocale.>.en_TW.ISO-8859-1:        en_TW !.ISO8859-1         ! English,Taiwan                  ,   ,   ,           , USL
230 Linux.100+.setlocale.>.en_TW.ISO-8859-1:        en_US !.ISO8859-1         ! English,Taiwan                  ,IBM,   ,           , 
231 Linux.100+.setlocale.~.en_US.ISO-8859-1:        en_US !.ISO8859-1         ! English, USA               XoJIG,IBM, HP, Sun       , USL
232 Linux.100+.setlocale.>.es_AR.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Argentina              ,   ,   , Sun       , USL
233 Linux.100+.setlocale.>.es_BO.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Bolivia                ,   ,   , Sun
234 Linux.100+.setlocale.>.es_CL.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Chile                  ,   ,   , Sun       , USL
235 Linux.100+.setlocale.>.es_CO.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Columbia               ,   ,   , Sun
236 Linux.100+.setlocale.>.es_CR.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Costa Rica             ,   ,   , Sun
237 Linux.100+.setlocale.>.es_EC.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Ecuador                ,   ,   , Sun
238 Linux.100+.setlocale.~.es_ES.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Spain             XoJIG,IBM, HP, Sun       , USL
239 Linux.100+.setlocale.~.ca_ES.ISO-8859-1:        ca_ES !.ISO8859-1         ! Catalan, Spain             XoJIG,IBM, HP, Sun       , USL
240 Linux.100+.setlocale.>.es_GT.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Guatemala              ,   ,   , Sun
241 Linux.100+.setlocale.>.es_MX.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Mexico                 ,   ,   , Sun       , USL
242 Linux.100+.setlocale.>.es_PE.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Peru                   ,   ,   , Sun
243 Linux.100+.setlocale.>.es_UY.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Uruguay                ,   ,   , Sun
244 Linux.100+.setlocale.>.es_VE.ISO-8859-1:        es_ES !.ISO8859-1         ! Spanish, Venezuela              ,   ,   , Sun       , USL
245 ! Linux.100+.setlocale.>.et_EE.ISO-8859-1:                     ! Estonian, Estonia          XoJIG, 
246 Linux.100+.setlocale.~.fi_FI.ISO-8859-1:        fi_FI !.ISO8859-1              ! Finnish, Finland           XoJIG,IBM, HP,           , USL ("fi")
247 ! Linux.100+.setlocale.>.fo_FO.ISO-8859-1:                     ! Faroese, Faeroe Island     XoJIG,
248 Linux.100+.setlocale.~.fr_BE.ISO-8859-1:        fr_BE !.ISO8859-1         ! French,Belgium             XoJIG,   ,   ,           , USL        
249 Linux.100+.setlocale.~.fr_CA.ISO-8859-1:        fr_CA !.ISO8859-1         ! French, Canada             XoJIG,IBM, HP,           , USL
250 Linux.100+.setlocale.~.fr_CH.ISO-8859-1:        fr_CH !.ISO8859-1         ! French, Switzerland        XoJIG,IBM,   ,           , USL
251 Linux.100+.setlocale.~.fr_FR.ISO-8859-1:        fr_FR !.ISO8859-1         ! French, France             XoJIG,IBM, HP, Sun ("fr"), USL ("fr")
252 Linux.100+.setlocale.~.is_IS.ISO-8859-1:        is_IS !.ISO8859-1         ! Icelandic, Iceland         XoJIG,IBM, HP,           , USL ("is")
253 Linux.100+.setlocale.>.it_CH.ISO-8859-1:        it_IT !.ISO8859-1         ! Italian,Switzerland             ,   ,   ,           , USL        
254 Linux.100+.setlocale.~.it_IT.ISO-8859-1:        it_IT !.ISO8859-1         ! Italian, Italy             XoJIG,IBM, HP, Sun ("it"), USL ("it")
255 ! Linux.100+.setlocale.>.kl_GL.ISO-8859-1:                     ! Greenlandic, Greenland     XoJIG,
256 ! Linux.100+.setlocale.>.lt_LT.ISO-8859-1:                     ! Lithuanian, Lithuania      XoJIG,
257 ! Linux.100+.setlocale.>.lv_LV.ISO-8859-1:                     ! Latvian, Latvia            XoJIG,
258 Linux.100+.setlocale.~.nl_BE.ISO-8859-1:        nl_BE !.ISO8859-1         ! Dutch, Belgium             XoJIG,IBM,   ,           , USL
259 Linux.100+.setlocale.~.nl_NL.ISO-8859-1:        nl_NL !.ISO8859-1         ! Dutch, The Netherlands     XoJIG,IBM, HP,           , USL ("nl")
260 Linux.100+.setlocale.~.no_NO.ISO-8859-1:        no_NO !.ISO8859-1         ! Norwegian, Norway          XoJIG,IBM, HP,           , USL ("no")
261 Linux.100+.setlocale.~.pt_BR.ISO-8859-1:        pt_BR !.ISO8859-1         ! Portuguese,Brazil               ,   ,   ,           , USL
262 Linux.100+.setlocale.~.pt_PT.ISO-8859-1:        pt_PT !.ISO8859-1         ! Portuguese, Portugal       XoJIG,IBM, HP,           , USL
263 Linux.100+.setlocale.>.sv_FI.ISO-8859-1:        sv_SE !.ISO8859-1         ! Swedish, Finland           XoJIG,
264 Linux.100+.setlocale.~.sv_SE.ISO-8859-1:        sv_SE !.ISO8859-1         ! Swedish, Sweden            XoJIG,IBM, HP, Sun ("sv"), USL ("sv") 
265
266
267 ! E European 
268 Linux.100+.setlocale.~.cs_CS.ISO-8859-2:   cs_CZ !.ISO8859-2    ! Czech(1)                        ,IBM, HP
269 Linux.100+.setlocale.~.hr_HR.ISO-8859-2:        hr_HR !.ISO8859-2               ! Croatian, Croatia               ,IBM
270 Linux.100+.setlocale.~.hu_HU.ISO-8859-2:        hu_HU !.ISO8859-2               ! Hungarian, Hungry          XoJIG,IBM, HP
271 Linux.100+.setlocale.~.pl_PL.ISO-8859-2:        pl_PL !.ISO8859-2               ! Polish, Poland             XoJIG,IBM, HP 
272 Linux.100+.setlocale.~.ro_RO.ISO-8859-2:        ro_RO !.ISO8859-2               ! Rumanian, Romania          XoJIG,IBM, HP
273 Linux.100+.setlocale.~.sh_YU.ISO-8859-2:        sh_SP !.ISO8859-2               ! Serbocroatian, Yugoslavia(1)    ,IBM, HP 
274 Linux.100+.setlocale.>.sl_CS.ISO-8859-2:        sl_SI !.ISO8859-2               ! Slovenian                       ,   , HP
275 Linux.100+.setlocale.~.si_SI.ISO-8859-2:   sl_SI !.ISO8859-2    ! Slovenian                       ,IBM, 
276 Linux.100+.setlocale.~.sk_SK.ISO-8859-2:   sk_SK !.ISO8859-2    ! Slovak                          ,IBM
277
278 ! Cyrillic 
279 Linux.100+.setlocale.~.bg_BG.ISO-8859-5:        bg_BG !.ISO8859-5               ! Bulgarian, Bulgaria             ,IBM, HP
280 Linux.100+.setlocale.~.mk_MK.ISO-8859-5:   mk_MK !.ISO8859-5    ! Macedonian                      ,IBM
281 Linux.100+.setlocale.~.ru_RU.ISO-8859-5:        ru_RU !.ISO8859-5       ! Russian(1)                      ,IBM, 
282 Linux.100+.setlocale.>.ru_SU.ISO-8859-5:        ru_RU !.ISO8859-5       ! Russian(1)                      ,   , HP
283 Linux.100+.setlocale.~.sp_YU.ISO-8859-5:   sr_SP !.ISO8859-5    ! Serbian,Yugoslavia(1)           ,IBM
284
285 ! Arabic 
286 Linux.100+.setlocale.>.ar_DZ.ISO-8859-6:        ar_AA !.ISO8859-6       ! Arabic(2)                       ,   , HP
287 Linux.100+.setlocale.~.ar_SA.ISO-8859-6:        ar_AA !.ISO8859-6       ! Arabic(2)                       ,IBM, HP
288 Linux.100+.setlocale.~.ar_SA.IBM-1046:  Ar_AA !.IBM-1046        ! Arabic(2)                       ,IBM
289
290 ! Hebrew 
291 Linux.100+.setlocale.~.iw_IL.ISO-8859-8:        iw_IL !.ISO8859-8               ! Hebrew, Israel                  ,IBM, HP
292 Linux.100+.setlocale.~.iw_IL.IBM-856:   Iw_IL !.IBM-856                 ! Hebrew, Israel                  ,IBM
293
294 ! Greek 
295 Linux.100+.setlocale.~.el_GR.ISO-8859-7:        el_GR !.ISO8859-7               ! Greek, Greece                   ,IBM, HP
296
297 ! Turkish 
298 Linux.100+.setlocale.~.tr_TR.ISO-8859-9:        tr_TR !.ISO8859-9               ! Turkish, Turkey                 ,IBM, HP
299
300 ! East Asia 
301 Linux.100+.setlocale.~.ja_JP.EUC-JP:    ja_JP !.IBM-eucJP         ! Japanese, Japan                 ,IBM, HP, Sun ("ja"), USL
302 Linux.100+.setlocale.~.ja_JP.IBM-932:   Ja_JP !.IBM-932           ! Japanese, Japan                 ,IBM
303 Linux.100+.setlocale.>.ja_JP.HP-SJIS:     Ja_JP !.IBM-932               ! Japanese, Japan aka japanese 15 ,   , HP,
304 Linux.100+.setlocale.~.ko_KR.EUC-KR:    ko_KR !.IBM-eucKR         ! Korean, Korea                   ,IBM, HP, Sun ("ko"), USL
305 Linux.100+.setlocale.~.zh_CN.EUC-CN:    zh_CN !.IBM-eucCN         ! Chinese, China                  ,IBM,   , Sun ("zh"), USL 
306 Linux.100+.setlocale.>.zh_CN.HP-15CN:   zh_CN !.IBM-eucCN         ! Chinese, China                  ,   , HP
307 Linux.100+.setlocale.~.zh_CN.UTF-8:     ZH_CN !.UTF-8             ! Chinese, China                  ,IBM,
308 Linux.100+.setlocale.~.zh_TW.EUC-TW:    zh_TW !.IBM-eucTW         ! Chinese, Taiwan                 ,IBM, HP, Sun       , USL
309 Linux.100+.setlocale.>.zh_TW.HP-BIG5:   Zh_TW !.big5            ! Chinese, Taiwan                 ,IBM, HP,           , 
310 ! Linux.100+.setlocale.>.zh_TW.HP-CCDC:                         ! Chinese, Taiwan                 ,   , HP,           , 
311 ! Linux.100+.setlocale.>.ja_JP.HP-KANA8:                                ! Japanese, Japan                 ,   , HP,           ,
312
313
314 ! Thai 
315 Linux.100+.setlocale.~.th_TH.TIS-620:   th_TH !.TIS-620         ! Thai, Thailand                  ,IBM, HP
316
317
318 ! W European/Americas, IBM-850 codeset
319 Linux.100+.setlocale.~.da_DK.IBM-850:   Da_DK           ! Danish, Denmark                 ,IBM,
320 Linux.100+.setlocale.>.de_AT.IBM-850:   De_DE           ! German,Austria                  ,   ,
321 Linux.100+.setlocale.~.de_CH.IBM-850:   De_CH           ! German,Switzerland              ,IBM,
322 Linux.100+.setlocale.~.de_DE.IBM-850:   De_DE           ! German, Germany                 ,IBM,
323 Linux.100+.setlocale.>.en_AU.IBM-850:   En_GB           ! English,Australia               ,   ,
324 Linux.100+.setlocale.>.en_CA.IBM-850:   En_US           ! English,Canada                  ,   ,
325 Linux.100+.setlocale.>.en_DK.IBM-850:   En_GB           ! English, Denmark                ,   ,
326 Linux.100+.setlocale.~.en_GB.IBM-850:   En_GB           ! English, U.K.                   ,IBM,
327 Linux.100+.setlocale.~.en_JP.IBM-850:   En_JP           ! English, Japan                  ,IBM,
328 Linux.100+.setlocale.>.en_IE.IBM-850:   En_GB           ! English, Ireland                ,   ,
329 Linux.100+.setlocale.>.en_MY.IBM-850:   En_US           ! English,Malaysia                ,   ,
330 Linux.100+.setlocale.>.en_NZ.IBM-850:   En_GB           ! English,New Zealand             ,   ,
331 Linux.100+.setlocale.>.en_KR.IBM-850:   En_GB           ! English,Korea                   ,   ,
332 Linux.100+.setlocale.>.en_TW.IBM-850:   En_GB           ! English,Taiwan                  ,   ,
333 Linux.100+.setlocale.~.en_US.IBM-850:   En_US           ! English, USA                    ,IBM,
334 Linux.100+.setlocale.>.es_AR.IBM-850:   Es_ES           ! Spanish, Argentina              ,   ,
335 Linux.100+.setlocale.>.es_BO.IBM-850:   Es_ES           ! Spanish, Bolivia                ,   ,
336 Linux.100+.setlocale.>.es_CL.IBM-850:   Es_ES           ! Spanish, Chile                  ,   ,
337 Linux.100+.setlocale.>.es_CO.IBM-850:   Es_ES           ! Spanish, Columbia               ,   ,
338 Linux.100+.setlocale.>.es_CR.IBM-850:   Es_ES           ! Spanish, Costa Rica             ,   ,
339 Linux.100+.setlocale.>.es_EC.IBM-850:   Es_ES           ! Spanish, Ecuador                ,   ,
340 Linux.100+.setlocale.~.es_ES.IBM-850:   Es_ES           ! Spanish, Spain                  ,IBM,
341 Linux.100+.setlocale.~.ca_ES.IBM-850:   Ca_ES           ! Catalan, Spain                  ,IBM,
342 Linux.100+.setlocale.>.es_GT.IBM-850:   Es_ES           ! Spanish, Guatemala              ,   ,
343 Linux.100+.setlocale.>.es_MX.IBM-850:   Es_ES           ! Spanish, Mexico                 ,   ,
344 Linux.100+.setlocale.>.es_PE.IBM-850:   Es_ES           ! Spanish, Peru                   ,   ,
345 Linux.100+.setlocale.>.es_UY.IBM-850:   Es_ES           ! Spanish, Uruguay                ,   ,
346 Linux.100+.setlocale.>.es_VE.IBM-850:   Es_ES           ! Spanish, Venezuela              ,   ,
347 ! Linux.100+.setlocale.>.et_EE.IBM-850:                 ! Estonian, Estonia               , 
348 Linux.100+.setlocale.~.fi_FI.IBM-850:   Fi_FI           ! Finnish, Finland                ,IBM,
349 ! Linux.100+.setlocale.>.fo_FO.IBM-850:                 ! Faroese, Faeroe Island          ,
350 Linux.100+.setlocale.~.fr_BE.IBM-850:   Fr_BE           ! French,Belgium                  ,   ,
351 Linux.100+.setlocale.~.fr_CA.IBM-850:   Fr_CA           ! French, Canada                  ,IBM,
352 Linux.100+.setlocale.~.fr_CH.IBM-850:   Fr_CH           ! French, Switzerland             ,IBM,
353 Linux.100+.setlocale.~.fr_FR.IBM-850:   Fr_FR           ! French, France                  ,IBM,
354 Linux.100+.setlocale.~.is_IS.IBM-850:   Is_IS           ! Icelandic, Iceland              ,IBM,
355 Linux.100+.setlocale.>.it_CH.IBM-850:   It_IT           ! Italian,Switzerland             ,   ,
356 Linux.100+.setlocale.~.it_IT.IBM-850:   It_IT           ! Italian, Italy                  ,IBM,
357 ! Linux.100+.setlocale.>.kl_GL.IBM-850:                 ! Greenlandic, Greenland          ,
358 ! Linux.100+.setlocale.>.lt_LT.IBM-850:                 ! Lithuanian, Lithuania           ,
359 ! Linux.100+.setlocale.>.lv_LV.IBM-850:                 ! Latvian, Latvia                 ,
360 Linux.100+.setlocale.~.nl_BE.IBM-850:   Nl_BE           ! Dutch, Belgium                  ,IBM,
361 Linux.100+.setlocale.~.nl_NL.IBM-850:   Nl_NL           ! Dutch, The Netherlands          ,IBM,
362 Linux.100+.setlocale.~.no_NO.IBM-850:   No_NO           ! Norwegian, Norway               ,IBM,
363 Linux.100+.setlocale.>.pt_BR.IBM-850:   Pt_PT           ! Portuguese,Brazil               ,   ,
364 Linux.100+.setlocale.~.pt_PT.IBM-850:   Pt_PT           ! Portuguese, Portugal            ,IBM,
365 Linux.100+.setlocale.>.sv_FI.IBM-850:   Sv_SE           ! Swedish, Finland                ,
366 vvLinux.100+.setlocale.~.sv_SE.IBM-850: Sv_SE           ! Swedish, Sweden                 ,IBM,
367
368
369 ! codesets supported for iconv(1,3) & nl_langinfo and above
370 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-1:           ISO8859-1
371 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-2:   ISO8859-2
372 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-5:   ISO8859-5
373 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-6:   ISO8859-6
374 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-7:   ISO8859-7
375 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-8:   ISO8859-8
376 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-9:   ISO8859-9
377 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-KR:               IBM-eucKR
378 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-JP:               IBM-eucJP
379 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-TW:               IBM-eucTW
380 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-CN:               IBM-eucCN
381 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).>.?.HP-15CN:      IBM-eucCN
382 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-437:      IBM-437
383 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-850:      IBM-850
384 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-856:      IBM-856
385 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-932:      IBM-932
386 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).>.?.HP-SJIS:      IBM-932
387 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-1046:     IBM-1046
388 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.UTF-8:          UTF-8           
389 Linux.100+.iconv1,iconv3.>.?.ISO-2022-JP:                               fold7
390 Linux.100+.iconv1,iconv3.>.?.ISO-2022-KR:                         fold7
391 Linux.100+.iconv1,iconv3.>.?.ISO-2022-TW:                         fold7
392 Linux.100+.iconv1,iconv3.>.?.ISO-2022-CN:                         fold7
393 Linux.100+.iconv1,iconv3.>.?.HP-BIG5:                         big5
394 Linux.100+.iconv1,iconv3.>.?.TIS-620:                         TIS-620
395
396 ! codesets not supported by Linux iconv(1,3)
397 ! Linux.?.iconv1,iconv3.~.?.UCS-2:
398 ! Linux.?.iconv1,iconv3.~.?.HP-ARABIC8:
399 ! Linux.?.iconv1,iconv3.~.?.HP-GREEK8:
400 ! Linux.?.iconv1,iconv3.~.?.HP-HEBREW8
401 ! Linux.?.iconv1,iconv3.~.?.HP-ROMAN8:
402 ! Linux.?.iconv1,iconv3.~.?.HP-TURKISH8:
403 ! Linux.?.iconv1,iconv3.~.?.HP-KANA8:
404 ! Linux.?.iconv1,iconv3.~.?.HP-CCDC:
405
406 ! multibyte codesets 
407 ! This translation provides an alternative to a call to
408 ! using setlocale() and MB_CUR_MAX to determine this.
409 Linux.100+.multibyte.=.?.EUC-KR:                2
410 Linux.100+.multibyte.=.?.HP-SJIS:               2
411 Linux.100+.multibyte.=.?.IBM-932:               2
412 Linux.100+.multibyte.=.?.EUC-JP:                3
413 ! Linux.?.multibyte.~.?.HP-CCDC:                2
414 Linux.100+.multibyte.>.?.HP-BIG5:               2
415 Linux.100+.multibyte.=.?.EUC-TW:                4
416 Linux.100+.multibyte.=.?.TIS-620:               2
417 Linux.100+.multibyte.=.?.EUC-CN:                2
418 Linux.100+.multibyte.=.?.HP-15CN:               2
419 Linux.100+.multibyte.=.?.EUC-KR:                2
420 Linux.100+.multibyte.=.?.UTF-8:         3
421
422
423 ! Translations from predefined CCDF-locales to CDE Standard Locales
424 Linux.100+.ccdf.=.?.ISO-8859-1: ISO8859-1
425 Linux.100+.ccdf.=.?.ISO-8859-2: ISO8859-2
426 Linux.100+.ccdf.=.?.ISO-8859-5: ISO8859-5
427 Linux.100+.ccdf.=.?.ISO-8859-6: ISO8859-6
428 Linux.100+.ccdf.=.?.ISO-8859-7: ISO8859-7
429 Linux.100+.ccdf.=.?.ISO-8859-8: ISO8859-8
430 Linux.100+.ccdf.=.?.ISO-8859-9: ISO8859-9
431 Linux.100+.ccdf.=.?.EUC-JP:     IBM-eucJP
432 Linux.100+.ccdf.=.?.EUC-KR:     IBM-eucKR
433 Linux.100+.ccdf.=.?.EUC-TW:     IBM-eucTW
434 Linux.100+.ccdf.=.?.EUC-CN:     IBM-eucCN
435 Linux.100+.ccdf.>.?.IBM-932:    IBM-932
436 Linux.100+.ccdf.>.?.HP-SJIS:    IBM-932
437 Linux.100+.ccdf.=.?.IBM-1046:   IBM-1046
438 Linux.100+.ccdf.=.?.IBM-850:    IBM-850
439 Linux.100+.ccdf.=.?.IBM-856:    IBM-856
440 Linux.100+.ccdf.=.?.HP-BIG5:    big5
441 Linux.100+.ccdf.=.?.TIS-620:    TIS-620
442 Linux.100+.ccdf.=.?.UTF-8:      UTF-8
443 Linux.100+.ccdf.=.?.DT-SYMBOL-1:        symbol        !!! standard Dt symbol font
444
445 ! These CDE standard locales may have CCDF-locales, but they are defined by localizers
446 Linux.100+.ccdf.>.?.HP-ROMAN8:    ISO8859-1
447 Linux.100+.ccdf.>.?.HP-ARABIC8: ISO8859-6
448 Linux.100+.ccdf.>.?.HP-GREEK8:  ISO8859-8
449 Linux.100+.ccdf.>.?.HP-HEBREW8: ISO8859-7
450 Linux.100+.ccdf.>.?.HP-TURKISH8:        ISO8859-9
451 Linux.100+.ccdf.>.?.HP-KANA8:   IBM-932
452 Linux.100+.ccdf.>.?.HP-CCDC:    IBM-eucCN
453
454
455
456 ! Codesets that require multibyte parsing to avoid confusion with shell special chars
457 Linux.?.dtkshSpecialParse.=.ja_JP.HP-JIS:               True
458 Linux.?.dtkshSpecialParse.=.ja_JP.HP-SJIS:      True
459 Linux.?.dtkshSpecialParse.=.ja_JP.IBM-932:      True
460 Linux.?.dtkshSpecialParse.=.zh_TW.HP-BIG5:      True
461 Linux.?.dtkshSpecialParse.=.zh_TW.HP-CCDC:      True
462
463
464 !! When content is exchanged with other platforms, the interchange codeset
465 !! may be different that the codeset used locally.  In CDE1, these translations
466 !! are used by dtmail, but other clients may use the same translations
467 !! in the future.  For example, to improve interoperability of 8-bit mail,
468 !! the mail messages of users working in codesets such as HP-ROMAN8 or IBM-850 
469 !! are translated to the interchangeCodeset (in this case, ISO-8859-1) before 
470 !! they are sent.  Similarly, the mail of Japanese users is translated to JIS
471 !! before it is sent.
472 !!
473 !! --------------------------------------------------------------------
474 !! Linux does provide the fold7 conversion which is an ISO 2022 encoding
475 !! of every code set supported by a locale... so ... the name
476 !!   ISO-2022-xx ( where xx is JP, CN, KR, TW)
477 !! can be used for any of the following interchangeCodeset... but it has
478 !! been left as is in case 8-bit mail is supported...
479 !! --------------------------------------------------------------------
480 !!
481 Linux.?.interchangeCodeset.~.?.ISO-8859-1:      ISO-8859-1      ! ISO Latin 1
482 !Linux.?.interchangeCodeset.>.?.HP-ROMAN8:      ISO-8859-1      ! HP Roman8 
483 Linux.?.interchangeCodeset.>.?.IBM-850:         ISO-8859-1      ! PC (Multi-lingual)
484 Linux.?.interchangeCodeset.>.?.IBM-437:         ISO-8859-1      ! PC (US)
485 Linux.?.interchangeCodeset.~.?.ISO-8859-2:      ISO-8859-2      ! ISO Latin 2
486 Linux.?.interchangeCodeset.~.?.ISO-8859-5:      ISO-8859-5      ! ISO Latin/Cyrillic
487 Linux.?.interchangeCodeset.~.?.ISO-8859-6:      ISO-8859-6      ! ISO Latin/Arabic
488 !Linux.?.interchangeCodeset.>.?.HP-ARABIC8:     ISO-8859-6      ! HP Arabic8
489 Linux.?.interchangeCodeset.>.?.IBM-1046:                ISO-8859-6      ! PC Arabic Code Set
490 Linux.?.interchangeCodeset.~.?.ISO-8859-8:      ISO-8859-8      ! ISO Latin/Hebrew
491 !Linux.?.interchangeCodeset.>.?.HP-HEBREW8:     ISO-8859-8      ! HP Hebrew8
492 Linux.?.interchangeCodeset.>.?.IBM-856:         ISO-8859-8      ! PC Hebrew
493 Linux.?.interchangeCodeset.~.?.ISO-8859-7:      ISO-8859-7      ! ISO Latin/Greek
494 !Linux.?.interchangeCodeset.>.?.HP-GREEK8:      ISO-8859-7      ! HP Greek8
495 Linux.?.interchangeCodeset.~.?.ISO-8859-9:      ISO-8859-9      ! ISO Latin 5
496 !Linux.?.interchangeCodeset.>.?.HP-TURKISH8:    ISO-8859-9      ! HP Turkish8
497 Linux.?.interchangeCodeset.~.?.EUC-JP:          ISO-2022-JP     ! Japanese EUC
498 !Linux.?.interchangeCodeset.>.?.HP-SJIS:                ISO-2022-JP     ! HP Japanese Shift JIS
499 Linux.?.interchangeCodeset.>.?.IBM-932:         ISO-2022-JP     ! PC Japanese Shift JIS
500 !Linux.?.interchangeCodeset.>.?.HP-KANA8:               ISO-2022-JP     ! HP Japanese Katakana8
501 ! uncomment when ISO-2022-KR is supported by iconv
502 Linux.?.interchangeCodeset.~.?.EUC-KR:          ISO-2022-KR     ! Korean EUC
503 ! uncomment when ISO-2022-CN is supported by iconv
504 Linux.?.interchangeCodeset.~.?.EUC-CN:          ISO-2022-CN     ! China Chinese EUC
505 Linux.?.interchangeCodeset.>.?.HP-15CN:         ISO-2022-CN     ! HP Chinese EUC
506 ! uncomment when ISO-2022-TW is supported by iconv
507 Linux.?.interchangeCodeset.~.?.EUC-TW:          ISO-2022-TW     ! Taiwan Chinese EUC
508 Linux.?.interchangeCodeset.>.?.HP-BIG5:         ISO-2022-TW     ! HP Big5 Chinese
509 Linux.?.interchangeCodeset.>.?.HP-CCDC:         ISO-2022-TW     ! HP CCDC Chinese 
510 Linux.?.interchangeCodeset.~.?.TIS-620:         TIS-620         ! Thai
511 Linux.?.interchangeCodeset.>.?.UCS-2:           ISO-2022-JP     ! Unicode
512 Linux.?.interchangeCodeset.~.?.UTF-8:           ISO-2022-JP     ! multibyte Unicode 
513 !! Codeset identifiers for use with MIME messages.  The .~. translations
514 !! are used by dtmail and adhere to the MIME standard, RFC 1521.
515 !! Note that the MIME standard states that codeset identifiers are
516 !! case-insensitive.  The operation-specific values on the right-hand-side
517 !! of the translations below, however, ARE case sensitive.  Before
518 !! doing a OpToStd translation, first convert the MIME codeset identifier
519 !! to uppercase.  Alternatively, one could provide lower-case versions
520 !! of the translations (right-hand-side only should be in lower-case).
521 Linux.?.mime.~.?.ISO-8859-1:    ISO-8859-1      ! ISO Latin 1
522 Linux.?.mime.~.?.HP-ROMAN8:     X-HP-ROMAN8     ! HP Roman8 
523 Linux.?.mime.~.?.IBM-437:               X-IBM-437       ! PC (US)
524 Linux.?.mime.~.?.IBM-850:               X-IBM-850       ! PC (Multi-lingual)
525 Linux.?.mime.~.?.ISO-8859-2:    ISO-8859-2      ! ISO Latin 2
526 Linux.?.mime.~.?.ISO-8859-5:    ISO-8859-5      ! ISO Latin/Cyrillic
527 Linux.?.mime.~.?.ISO-8859-6:    ISO-8859-6      ! ISO Latin/Arabic
528 Linux.?.mime.~.?.HP-ARABIC8:    X-HP-ARABIC8    ! HP Arabic8
529 Linux.?.mime.~.?.IBM-1046:      X-IBM-1046      ! PC Arabic Code Set
530 Linux.?.mime.~.?.ISO-8859-8:    ISO-8859-8      ! ISO Latin/Hebrew
531 Linux.?.mime.~.?.HP-HEBREW8:    X-HP-HEBREW8    ! HP Hebrew8
532 Linux.?.mime.~.?.IBM-856:               X-IBM-856       ! PC Hebrew
533 Linux.?.mime.~.?.ISO-8859-7:    ISO-8859-7      ! ISO Latin/Greek
534 Linux.?.mime.~.?.HP-GREEK8:     X-HP-GREEK8     ! HP Greek8
535 Linux.?.mime.~.?.ISO-8859-9:    ISO-8859-9      ! ISO Latin 5
536 Linux.?.mime.~.?.HP-TURKISH8:   X-HP-TURKISH8   ! HP Turkish8
537 Linux.?.mime.~.?.EUC-JP:                X-EUC-JP        ! Japanese EUC
538 Linux.?.mime.~.?.ISO-2022-JP:   ISO-2022-JP     ! Japanese JIS with 7-bit encoding per ISO-2022-JP
539 Linux.?.mime.~.?.HP-SJIS:               X-HP-SJIS       ! HP Japanese Shift JIS
540 Linux.?.mime.~.?.IBM-932:               X-IBM-932       ! PC Japanese Shift JIS
541 Linux.?.mime.~.?.HP-KANA8:      X-HP-KANA8      ! HP Japanese Katakana8
542 Linux.?.mime.~.?.EUC-KR:                X-EUC-KR        ! Korean EUC
543 Linux.?.mime.~.?.ISO-2022-KR:   ISO-2022-KR     ! Korean with 7-bit encoding per ISO-2022-KR
544 Linux.?.mime.~.?.EUC-CN:                X-EUC-CN        ! China Chinese EUC
545 Linux.?.mime.~.?.ISO-2022-CN:   ISO-2022-CN     ! China Chinese with 7-bit encoding per ISO-2022-CN
546 Linux.?.mime.~.?.HP-15CN:               X-HP-15CN       ! HP China Chinese EUC
547 Linux.?.mime.~.?.EUC-TW:                X-EUC-TW        ! Taiwan Chinese EUC
548 Linux.?.mime.~.?.ISO-2022-TW:   ISO-2022-TW     ! Taiwan Chinese with 7-bit encoding per ISO-2022-TW
549 Linux.?.mime.~.?.HP-BIG5:               X-HP-BIG5       ! HP Big5 Taiwan Chinese
550 Linux.?.mime.~.?.HP-CCDC:               X-HP-CCDC       ! HP CCDC Taiwan Chinese 
551 Linux.?.mime.~.?.TIS-620:               X-TIS-620       ! Thai
552 Linux.?.mime.~.?.UCS-2:         X-UCS-2         ! Unicode; group 0, plane 0 of ISO-10646
553 Linux.?.mime.~.?.UCS-4:         X-UCS-4         ! ISO-10646
554 Linux.?.mime.~.?.UTF-7:         X-UTF-7         ! multibyte encoding of Unicode 
555 Linux.?.mime.~.?.UTF-8:         X-UTF-8         ! multibyte encoding of Unicode 
556 Linux.?.mime.~.?.UTF-16:                X-UTF-16        ! multibyte encoding of Unicode 
557
558 !! If other mailers are using other codeset identifiers in their MIME
559 !! messages, dtmail will not be able to process them correctly. 
560 !! To correct this, additional .<. translations for these identifiers 
561 !! can be added to a <platform>.lcx file in the /etc/dt/config/svc 
562 !! or $HOME/.dt/config/svc directories.  Such translations should read:
563 !! <platform>.100+.mime.<.?.<CDE std codeset>: <mailer identifier for the codeset>
564 !!
565 !! ***NEVER*** use a .~. translation, such as we use above, as this could
566 !! cause dtmail to send unexpected identifier strings by overriding the
567 !! above definition.  Further, never use .=. or .>. translations.
568 !!
569 !! These two identifiers are in common usage, as they derive from RFC1521.
570 Linux.?.mime.<.?.ISO-8859-1:    us-ascii        ! ISO Latin 1
571 Linux.?.mime.<.?.ISO-8859-1:    US-ASCII        ! ISO Latin 1