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