@!!!!!!!!!!!!!! Linux Locale-Related Translations !!!!!!!!!!!!!! ! File: Linux.lcx ! Default location: /usr/dt/config/svc/Linux.lcx ! Purpose: ! Define the Linux-specific set of locale-related translations. ! Description: ! This file contains the set of all locale-related translations ! that can occur during _DtLcxXlateOpToStd() and _DtLcxStdToOp() ! calls on Linux platforms. Note that platform-specific tables may ! include more than one translation to and from CDE standard ! strings if they can be distinguished by version, operation, or ! pattern matching. ! ! It is important that additional CDE standard strings only ! be created by the CDE owner of the _DtLcx translation service ! and NOT be created by an individual vendor or user. This be because ! the purpose of adopting a set of CDE standard strings is to ! support interoperability across platforms. If individual vendors ! add their own "standard" strings and these strings are not ! known on other platforms, then the goal of interoperability ! will be defeated. ! ! If you feel that a new CDE standard string is needed, ! contact your CDE representative/vendor with a specific ! proposal and justification and have them forward it to ! the owner of the CDE _DtLcx service. ! ! Note that it is allowed for vendors and users to add new ! operations for which translations are specified and which ! utilize the standard strings. If the operations are of ! general utility, please bring them to the attention of ! your CDE representative/vendor for forwarding to the ! _DtLcx owner. ! Invoked by: ! This table is used by the _DtLcx translation service ! Defects: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!! translation specification syntax !!!!!!!!!!!!!!!!!!! ! Introductory fields: ! ==================== ! The _DtLcx translation specifications have a fixed number of ! introductory fields followed by a several standard value ! fields and the operation-specific value. ! The introductory fields are: ! ... ! ! Platform generally is the same string as uname(1) -s. ! Version range utilizes normalized version numbers that ! are acquired using the 'version' translations. ! Operations are one or more comma-separated strings that ! uniquely identify the operation associated with the ! operation-specific value. This string is specified ! as part of the request for a translation. ! ! Kinds of translations allow the mechanism to support several modes ! of operation, each useful for different purposes. When ! reading or writing a specification, pay particular attention ! to the kind of specification, as this guides the usage of it. ! ! Specification kinds: ! .=. means a valid bi-directional translation requiring the op-value ! in the translation specification to exactly match the op-value of ! the call to _DtLcxXlateOpToStd(), e.g. foo matches only foo ! .~. means a valid bi-directional translation requiring the op-value ! in the translation specification to match the beginning of the ! op-value of the call to _DtLcxXlateOpToStd(), e.g. foo matches ! foo@@bar. This is often useful, e.g. for operation-specific ! locale strings that may also contain modifier suffixes. ! .>. means only from standard to op-specific (generally a ! compatibility translation, meaning on op-specific value ! that will work for the standard, although that is not ! the straight mapping) ! .<. means only from op-specific to standard (generally a ! regex in the op-value which is used to map a class of ! op values to a standard value) ! .0. means that translation is not supported and if a translation ! request matches the specification, the request will fail. ! ! Standard values: ! ================ ! _DtLcx defines the order of the standard values in the ! translations it utilizes. All translation specifications ! must adhere to this order. ! .. ! In CDE 1.0, no modifiers are standard and that ! portion of the table is unspecified. This means ! that no CDE standard modifiers are available across ! platforms. Operations that use only the ! should specify the wildcard character ("?") for the ! value. ! ! Operation-specific value: ! ========================= ! The operation-specific value is a string that is used ! according to the kind of translation. The syntax is ! : ! or : "", if it contains white space ! ! Filling in the table of translations: ! ===================================== ! The person preparing the translation table should know ! the minimum version of the target platform that is ! be supported. For example, assume that we must ! complete the table for all versions 9.00 and higher. ! ! The objective is then to provide two sets of translations: ! a full set of translations from CDE standard locales to ! valid platform locales, and a full set of translations ! from valid platform locales to some or all CDE standard ! locales. ! ! Translations from CDE standard locales to valid platform ! locales must use the .~. .=. or .>. mappings. When there ! is a 1:1 mapping between a CDE locale and a platform locale, ! use the .~. or .=. mapping. See the comment below to ! decide which to use. When there is no 1:1 mapping between ! CDE locale and platform locale, use the .>. mapping. This ! provides a valid translation from the CDE locale to the ! best-suitable platform locale, but never translates from ! that platform locale to the CDE locale. ! ! Translations from every platform locale to the appropriate ! CDE locale must use the .~. .=. or .<. mappings. ! When there is a 1:1 mapping between a platform locale and ! a CDE standard locale, use the .~. or .=. mapping. See the ! comment below to decide which to use. If there is a 1:1 ! mapping, but the platform locale pattern uses a regular ! expression, or if more than one platform locale can ! be translated to one CDE standard locale, the .<. mapping must ! be used. ! ! If no appropriate CDE standard locale can be found, you have ! identified the need for a new CDE standard locale. Refer to ! the instructions at the head of this file for how to go about ! registering a new CDE standard locale. You should not create ! a new "standard" locale (the left hand side of the translation ! specification) without registering it with CDE, because this ! will hinder the free exchange of information across locales ! and platforms. ! ! The .=. and .~. mappings are similar. The difference is ! that the .=. mapping requires an exact string match between ! the platform locale and the string provided to the ! translation routine. Generally speaking, this mapping ! is risky unless exact matchings can be guaranteed in ! all DtLcx clients for the particular operation in question. ! The .~. mapping is to be preferred, but the .=. translation ! is useful in limited situations, where similar strings may ! occur. ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ! define this resource to dump debug/test info !*debugDtXlate: True !!!!!!!!!!!!!!!! Linux Version Identificaton !!!!!!!!!!!!!!!!! ! These translations are used by the _DtXlateGetXlateEnv() ! call to determine the version number to use. ! ! To understand the translation, realize that the ! operation-specific regexp(5) pattern on the right ! hand side is matched against the strings returned ! by uname(2). The best match determines the "normalized" ! version number of the platform, which should range from ! 001 and up. By convention, major release numbers ! map to centuries and minor release numbers to within ! the century. ! ! To determine the string that the regular expression on the ! right hand side is matching against, use uname(1) and run ! 'uname -r' and 'uname -v' and note the strings. During execution, ! the strings returned by this command are retrieved and ! concatenated "rv"--in that order, no extra spaces. ! This is the string that the pattern must match. ! ! Sometimes this string may not be intuitive. For example, ! note that Linux 3.2 returns 2 for 'uname -r' and 3 for 'uname -v'. ! So the pattern string must be 23, not 32. Do not go by ! the order of 'uname -rv' or 'uname -vr', as that is not used. !! Linux.?.version.<.100: ".*" !! any CDE value !!!!!!!!!!!!!!!! Linux-specific setlocale translations !!!!!!!!!!!!!!!!!!! ! These translations are for the string returned by the ! getlocale() or setlocale(LC_xxx,NULL) operations, but not ! setlocale(LC_ALL,NULL) operation. ! ! It provides translations from Linux operation-specific ! to CDE standard strings and back again. ! ! Some language,territory combinations have the following comments: ! (1) These ISO territory names may be subject to change ! However, their CDE names will continue to be supported ! (2) No ISO "territory" name exists for the Arabic-speaking regions of the ! world as a whole. Vendors have sometimes supplied their own. ! Those names, when conformant to the ISO model, will be adopted for CDE. ! !Platform Operation Lang_Terr Op-Value Language,Territory Who has !--- --------- ----- -------- ------------------ ------- ! Version Kind Codeset ! ---- - --------- ! setlocales Compliance Linux.100+.setlocale.~.C.IBM-850: C ! setlocales compliance ,IBM Linux.100+.setlocale.~.POSIX.IBM-850: POSIX ! setlocales compliance ,IBM Linux.100+.setlocale.~.C.ISO-8859-1: C ! setlocales compliance ,IBM, HP, Sun , USL Linux.100+.setlocale.~.POSIX.ISO-8859-1: POSIX ! setlocales compliance ,IBM, HP, Sun , USL ! W European/Americas, Latin 1 codeset Linux.100+.setlocale.~.da_DK.ISO-8859-1: da_DK !.ISO8859-1 ! Danish, Denmark XoJIG,IBM, HP, , USL ("da") Linux.100+.setlocale.>.de_AT.ISO-8859-1: de_DE !.ISO8859-1 ! German,Austria XoJIG, , , , USL Linux.100+.setlocale.~.de_CH.ISO-8859-1: de_CH !.ISO8859-1 ! German,Switzerland XoJIG,IBM, , , USL Linux.100+.setlocale.~.de_DE.ISO-8859-1: de_DE !.ISO8859-1 ! German, Germany XoJIG,IBM, HP, Sun ("de"), USL ("de") Linux.100+.setlocale.>.en_AU.ISO-8859-1: en_GB !.ISO8859-1 ! English,Australia , , , , USL Linux.100+.setlocale.>.en_CA.ISO-8859-1: en_US !.ISO8859-1 ! English,Canada XoJIG, , , , USL Linux.100+.setlocale.>.en_DK.ISO-8859-1: en_GB !.ISO8859-1 ! English, Denmark XoJIG, , , , USL Linux.100+.setlocale.~.en_GB.ISO-8859-1: en_GB !.ISO8859-1 ! English, U.K. XoJIG,IBM, HP, , USL ("en") Linux.100+.setlocale.>.en_JP.ISO-8859-1: en_JP !.ISO8859-1 ! English, Japan XoJIG,IBM, , , Linux.100+.setlocale.>.en_JP.ISO-8859-1: en_US !.ISO8859-1 ! English, Japan XoJIG,IBM, , , Linux.100+.setlocale.>.en_IE.ISO-8859-1: en_GB !.ISO8859-1 ! English, Ireland XoJIG, , , , USL Linux.100+.setlocale.>.en_MY.ISO-8859-1: en_US !.ISO8859-1 ! English,Malaysia , , , , USL Linux.100+.setlocale.>.en_NZ.ISO-8859-1: en_GB !.ISO8859-1 ! English,New Zealand , , , , USL Linux.100+.setlocale.>.en_KR.ISO-8859-1: en_KR !.ISO8859-1 ! English,Korea , , , , USL Linux.100+.setlocale.>.en_KR.ISO-8859-1: en_US !.ISO8859-1 ! English,Korea ,IBM, , , Linux.100+.setlocale.>.en_TW.ISO-8859-1: en_TW !.ISO8859-1 ! English,Taiwan , , , , USL Linux.100+.setlocale.>.en_TW.ISO-8859-1: en_US !.ISO8859-1 ! English,Taiwan ,IBM, , , Linux.100+.setlocale.~.en_US.ISO-8859-1: en_US !.ISO8859-1 ! English, USA XoJIG,IBM, HP, Sun , USL Linux.100+.setlocale.>.es_AR.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Argentina , , , Sun , USL Linux.100+.setlocale.>.es_BO.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Bolivia , , , Sun Linux.100+.setlocale.>.es_CL.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Chile , , , Sun , USL Linux.100+.setlocale.>.es_CO.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Columbia , , , Sun Linux.100+.setlocale.>.es_CR.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Costa Rica , , , Sun Linux.100+.setlocale.>.es_EC.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Ecuador , , , Sun Linux.100+.setlocale.~.es_ES.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Spain XoJIG,IBM, HP, Sun , USL Linux.100+.setlocale.~.ca_ES.ISO-8859-1: ca_ES !.ISO8859-1 ! Catalan, Spain XoJIG,IBM, HP, Sun , USL Linux.100+.setlocale.>.es_GT.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Guatemala , , , Sun Linux.100+.setlocale.>.es_MX.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Mexico , , , Sun , USL Linux.100+.setlocale.>.es_PE.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Peru , , , Sun Linux.100+.setlocale.>.es_UY.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Uruguay , , , Sun Linux.100+.setlocale.>.es_VE.ISO-8859-1: es_ES !.ISO8859-1 ! Spanish, Venezuela , , , Sun , USL ! Linux.100+.setlocale.>.et_EE.ISO-8859-1: ! Estonian, Estonia XoJIG, Linux.100+.setlocale.~.fi_FI.ISO-8859-1: fi_FI !.ISO8859-1 ! Finnish, Finland XoJIG,IBM, HP, , USL ("fi") ! Linux.100+.setlocale.>.fo_FO.ISO-8859-1: ! Faroese, Faeroe Island XoJIG, Linux.100+.setlocale.~.fr_BE.ISO-8859-1: fr_BE !.ISO8859-1 ! French,Belgium XoJIG, , , , USL Linux.100+.setlocale.~.fr_CA.ISO-8859-1: fr_CA !.ISO8859-1 ! French, Canada XoJIG,IBM, HP, , USL Linux.100+.setlocale.~.fr_CH.ISO-8859-1: fr_CH !.ISO8859-1 ! French, Switzerland XoJIG,IBM, , , USL Linux.100+.setlocale.~.fr_FR.ISO-8859-1: fr_FR !.ISO8859-1 ! French, France XoJIG,IBM, HP, Sun ("fr"), USL ("fr") Linux.100+.setlocale.~.is_IS.ISO-8859-1: is_IS !.ISO8859-1 ! Icelandic, Iceland XoJIG,IBM, HP, , USL ("is") Linux.100+.setlocale.>.it_CH.ISO-8859-1: it_IT !.ISO8859-1 ! Italian,Switzerland , , , , USL Linux.100+.setlocale.~.it_IT.ISO-8859-1: it_IT !.ISO8859-1 ! Italian, Italy XoJIG,IBM, HP, Sun ("it"), USL ("it") ! Linux.100+.setlocale.>.kl_GL.ISO-8859-1: ! Greenlandic, Greenland XoJIG, ! Linux.100+.setlocale.>.lt_LT.ISO-8859-1: ! Lithuanian, Lithuania XoJIG, ! Linux.100+.setlocale.>.lv_LV.ISO-8859-1: ! Latvian, Latvia XoJIG, Linux.100+.setlocale.~.nl_BE.ISO-8859-1: nl_BE !.ISO8859-1 ! Dutch, Belgium XoJIG,IBM, , , USL Linux.100+.setlocale.~.nl_NL.ISO-8859-1: nl_NL !.ISO8859-1 ! Dutch, The Netherlands XoJIG,IBM, HP, , USL ("nl") Linux.100+.setlocale.~.no_NO.ISO-8859-1: no_NO !.ISO8859-1 ! Norwegian, Norway XoJIG,IBM, HP, , USL ("no") Linux.100+.setlocale.~.pt_BR.ISO-8859-1: pt_BR !.ISO8859-1 ! Portuguese,Brazil , , , , USL Linux.100+.setlocale.~.pt_PT.ISO-8859-1: pt_PT !.ISO8859-1 ! Portuguese, Portugal XoJIG,IBM, HP, , USL Linux.100+.setlocale.>.sv_FI.ISO-8859-1: sv_SE !.ISO8859-1 ! Swedish, Finland XoJIG, Linux.100+.setlocale.~.sv_SE.ISO-8859-1: sv_SE !.ISO8859-1 ! Swedish, Sweden XoJIG,IBM, HP, Sun ("sv"), USL ("sv") ! E European Linux.100+.setlocale.~.cs_CS.ISO-8859-2: cs_CZ !.ISO8859-2 ! Czech(1) ,IBM, HP Linux.100+.setlocale.~.hr_HR.ISO-8859-2: hr_HR !.ISO8859-2 ! Croatian, Croatia ,IBM Linux.100+.setlocale.~.hu_HU.ISO-8859-2: hu_HU !.ISO8859-2 ! Hungarian, Hungry XoJIG,IBM, HP Linux.100+.setlocale.~.pl_PL.ISO-8859-2: pl_PL !.ISO8859-2 ! Polish, Poland XoJIG,IBM, HP Linux.100+.setlocale.~.ro_RO.ISO-8859-2: ro_RO !.ISO8859-2 ! Rumanian, Romania XoJIG,IBM, HP Linux.100+.setlocale.~.sh_YU.ISO-8859-2: sh_SP !.ISO8859-2 ! Serbocroatian, Yugoslavia(1) ,IBM, HP Linux.100+.setlocale.>.sl_CS.ISO-8859-2: sl_SI !.ISO8859-2 ! Slovenian , , HP Linux.100+.setlocale.~.si_SI.ISO-8859-2: sl_SI !.ISO8859-2 ! Slovenian ,IBM, Linux.100+.setlocale.~.sk_SK.ISO-8859-2: sk_SK !.ISO8859-2 ! Slovak ,IBM ! Cyrillic Linux.100+.setlocale.~.bg_BG.ISO-8859-5: bg_BG !.ISO8859-5 ! Bulgarian, Bulgaria ,IBM, HP Linux.100+.setlocale.~.mk_MK.ISO-8859-5: mk_MK !.ISO8859-5 ! Macedonian ,IBM Linux.100+.setlocale.~.ru_RU.ISO-8859-5: ru_RU !.ISO8859-5 ! Russian(1) ,IBM, Linux.100+.setlocale.>.ru_SU.ISO-8859-5: ru_RU !.ISO8859-5 ! Russian(1) , , HP Linux.100+.setlocale.~.sp_YU.ISO-8859-5: sr_SP !.ISO8859-5 ! Serbian,Yugoslavia(1) ,IBM ! Arabic Linux.100+.setlocale.>.ar_DZ.ISO-8859-6: ar_AA !.ISO8859-6 ! Arabic(2) , , HP Linux.100+.setlocale.~.ar_SA.ISO-8859-6: ar_AA !.ISO8859-6 ! Arabic(2) ,IBM, HP Linux.100+.setlocale.~.ar_SA.IBM-1046: Ar_AA !.IBM-1046 ! Arabic(2) ,IBM ! Hebrew Linux.100+.setlocale.~.iw_IL.ISO-8859-8: iw_IL !.ISO8859-8 ! Hebrew, Israel ,IBM, HP Linux.100+.setlocale.~.iw_IL.IBM-856: Iw_IL !.IBM-856 ! Hebrew, Israel ,IBM ! Greek Linux.100+.setlocale.~.el_GR.ISO-8859-7: el_GR !.ISO8859-7 ! Greek, Greece ,IBM, HP ! Turkish Linux.100+.setlocale.~.tr_TR.ISO-8859-9: tr_TR !.ISO8859-9 ! Turkish, Turkey ,IBM, HP ! East Asia Linux.100+.setlocale.~.ja_JP.EUC-JP: ja_JP !.IBM-eucJP ! Japanese, Japan ,IBM, HP, Sun ("ja"), USL Linux.100+.setlocale.~.ja_JP.IBM-932: Ja_JP !.IBM-932 ! Japanese, Japan ,IBM Linux.100+.setlocale.>.ja_JP.HP-SJIS: Ja_JP !.IBM-932 ! Japanese, Japan aka japanese 15 , , HP, Linux.100+.setlocale.~.ko_KR.EUC-KR: ko_KR !.IBM-eucKR ! Korean, Korea ,IBM, HP, Sun ("ko"), USL Linux.100+.setlocale.~.zh_CN.EUC-CN: zh_CN !.IBM-eucCN ! Chinese, China ,IBM, , Sun ("zh"), USL Linux.100+.setlocale.>.zh_CN.HP-15CN: zh_CN !.IBM-eucCN ! Chinese, China , , HP Linux.100+.setlocale.~.zh_CN.UTF-8: ZH_CN !.UTF-8 ! Chinese, China ,IBM, Linux.100+.setlocale.~.zh_TW.EUC-TW: zh_TW !.IBM-eucTW ! Chinese, Taiwan ,IBM, HP, Sun , USL Linux.100+.setlocale.>.zh_TW.HP-BIG5: Zh_TW !.big5 ! Chinese, Taiwan ,IBM, HP, , ! Linux.100+.setlocale.>.zh_TW.HP-CCDC: ! Chinese, Taiwan , , HP, , ! Linux.100+.setlocale.>.ja_JP.HP-KANA8: ! Japanese, Japan , , HP, , ! Thai Linux.100+.setlocale.~.th_TH.TIS-620: th_TH !.TIS-620 ! Thai, Thailand ,IBM, HP ! W European/Americas, IBM-850 codeset Linux.100+.setlocale.~.da_DK.IBM-850: Da_DK ! Danish, Denmark ,IBM, Linux.100+.setlocale.>.de_AT.IBM-850: De_DE ! German,Austria , , Linux.100+.setlocale.~.de_CH.IBM-850: De_CH ! German,Switzerland ,IBM, Linux.100+.setlocale.~.de_DE.IBM-850: De_DE ! German, Germany ,IBM, Linux.100+.setlocale.>.en_AU.IBM-850: En_GB ! English,Australia , , Linux.100+.setlocale.>.en_CA.IBM-850: En_US ! English,Canada , , Linux.100+.setlocale.>.en_DK.IBM-850: En_GB ! English, Denmark , , Linux.100+.setlocale.~.en_GB.IBM-850: En_GB ! English, U.K. ,IBM, Linux.100+.setlocale.~.en_JP.IBM-850: En_JP ! English, Japan ,IBM, Linux.100+.setlocale.>.en_IE.IBM-850: En_GB ! English, Ireland , , Linux.100+.setlocale.>.en_MY.IBM-850: En_US ! English,Malaysia , , Linux.100+.setlocale.>.en_NZ.IBM-850: En_GB ! English,New Zealand , , Linux.100+.setlocale.>.en_KR.IBM-850: En_GB ! English,Korea , , Linux.100+.setlocale.>.en_TW.IBM-850: En_GB ! English,Taiwan , , Linux.100+.setlocale.~.en_US.IBM-850: En_US ! English, USA ,IBM, Linux.100+.setlocale.>.es_AR.IBM-850: Es_ES ! Spanish, Argentina , , Linux.100+.setlocale.>.es_BO.IBM-850: Es_ES ! Spanish, Bolivia , , Linux.100+.setlocale.>.es_CL.IBM-850: Es_ES ! Spanish, Chile , , Linux.100+.setlocale.>.es_CO.IBM-850: Es_ES ! Spanish, Columbia , , Linux.100+.setlocale.>.es_CR.IBM-850: Es_ES ! Spanish, Costa Rica , , Linux.100+.setlocale.>.es_EC.IBM-850: Es_ES ! Spanish, Ecuador , , Linux.100+.setlocale.~.es_ES.IBM-850: Es_ES ! Spanish, Spain ,IBM, Linux.100+.setlocale.~.ca_ES.IBM-850: Ca_ES ! Catalan, Spain ,IBM, Linux.100+.setlocale.>.es_GT.IBM-850: Es_ES ! Spanish, Guatemala , , Linux.100+.setlocale.>.es_MX.IBM-850: Es_ES ! Spanish, Mexico , , Linux.100+.setlocale.>.es_PE.IBM-850: Es_ES ! Spanish, Peru , , Linux.100+.setlocale.>.es_UY.IBM-850: Es_ES ! Spanish, Uruguay , , Linux.100+.setlocale.>.es_VE.IBM-850: Es_ES ! Spanish, Venezuela , , ! Linux.100+.setlocale.>.et_EE.IBM-850: ! Estonian, Estonia , Linux.100+.setlocale.~.fi_FI.IBM-850: Fi_FI ! Finnish, Finland ,IBM, ! Linux.100+.setlocale.>.fo_FO.IBM-850: ! Faroese, Faeroe Island , Linux.100+.setlocale.~.fr_BE.IBM-850: Fr_BE ! French,Belgium , , Linux.100+.setlocale.~.fr_CA.IBM-850: Fr_CA ! French, Canada ,IBM, Linux.100+.setlocale.~.fr_CH.IBM-850: Fr_CH ! French, Switzerland ,IBM, Linux.100+.setlocale.~.fr_FR.IBM-850: Fr_FR ! French, France ,IBM, Linux.100+.setlocale.~.is_IS.IBM-850: Is_IS ! Icelandic, Iceland ,IBM, Linux.100+.setlocale.>.it_CH.IBM-850: It_IT ! Italian,Switzerland , , Linux.100+.setlocale.~.it_IT.IBM-850: It_IT ! Italian, Italy ,IBM, ! Linux.100+.setlocale.>.kl_GL.IBM-850: ! Greenlandic, Greenland , ! Linux.100+.setlocale.>.lt_LT.IBM-850: ! Lithuanian, Lithuania , ! Linux.100+.setlocale.>.lv_LV.IBM-850: ! Latvian, Latvia , Linux.100+.setlocale.~.nl_BE.IBM-850: Nl_BE ! Dutch, Belgium ,IBM, Linux.100+.setlocale.~.nl_NL.IBM-850: Nl_NL ! Dutch, The Netherlands ,IBM, Linux.100+.setlocale.~.no_NO.IBM-850: No_NO ! Norwegian, Norway ,IBM, Linux.100+.setlocale.>.pt_BR.IBM-850: Pt_PT ! Portuguese,Brazil , , Linux.100+.setlocale.~.pt_PT.IBM-850: Pt_PT ! Portuguese, Portugal ,IBM, Linux.100+.setlocale.>.sv_FI.IBM-850: Sv_SE ! Swedish, Finland , vvLinux.100+.setlocale.~.sv_SE.IBM-850: Sv_SE ! Swedish, Sweden ,IBM, ! codesets supported for iconv(1,3) & nl_langinfo and above Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-1: ISO8859-1 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-2: ISO8859-2 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-5: ISO8859-5 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-6: ISO8859-6 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-7: ISO8859-7 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-8: ISO8859-8 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.ISO-8859-9: ISO8859-9 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-KR: IBM-eucKR Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-JP: IBM-eucJP Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-TW: IBM-eucTW Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.EUC-CN: IBM-eucCN Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).>.?.HP-15CN: IBM-eucCN Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-437: IBM-437 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-850: IBM-850 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-856: IBM-856 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-932: IBM-932 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).>.?.HP-SJIS: IBM-932 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.IBM-1046: IBM-1046 Linux.100+.iconv1,iconv3,nl_langinfo(CODESET).=.?.UTF-8: UTF-8 Linux.100+.iconv1,iconv3.>.?.ISO-2022-JP: fold7 Linux.100+.iconv1,iconv3.>.?.ISO-2022-KR: fold7 Linux.100+.iconv1,iconv3.>.?.ISO-2022-TW: fold7 Linux.100+.iconv1,iconv3.>.?.ISO-2022-CN: fold7 Linux.100+.iconv1,iconv3.>.?.HP-BIG5: big5 Linux.100+.iconv1,iconv3.>.?.TIS-620: TIS-620 ! codesets not supported by Linux iconv(1,3) ! Linux.?.iconv1,iconv3.~.?.UCS-2: ! Linux.?.iconv1,iconv3.~.?.HP-ARABIC8: ! Linux.?.iconv1,iconv3.~.?.HP-GREEK8: ! Linux.?.iconv1,iconv3.~.?.HP-HEBREW8 ! Linux.?.iconv1,iconv3.~.?.HP-ROMAN8: ! Linux.?.iconv1,iconv3.~.?.HP-TURKISH8: ! Linux.?.iconv1,iconv3.~.?.HP-KANA8: ! Linux.?.iconv1,iconv3.~.?.HP-CCDC: ! multibyte codesets ! This translation provides an alternative to a call to ! using setlocale() and MB_CUR_MAX to determine this. Linux.100+.multibyte.=.?.EUC-KR: 2 Linux.100+.multibyte.=.?.HP-SJIS: 2 Linux.100+.multibyte.=.?.IBM-932: 2 Linux.100+.multibyte.=.?.EUC-JP: 3 ! Linux.?.multibyte.~.?.HP-CCDC: 2 Linux.100+.multibyte.>.?.HP-BIG5: 2 Linux.100+.multibyte.=.?.EUC-TW: 4 Linux.100+.multibyte.=.?.TIS-620: 2 Linux.100+.multibyte.=.?.EUC-CN: 2 Linux.100+.multibyte.=.?.HP-15CN: 2 Linux.100+.multibyte.=.?.EUC-KR: 2 Linux.100+.multibyte.=.?.UTF-8: 3 ! Translations from predefined CCDF-locales to CDE Standard Locales Linux.100+.ccdf.=.?.ISO-8859-1: ISO8859-1 Linux.100+.ccdf.=.?.ISO-8859-2: ISO8859-2 Linux.100+.ccdf.=.?.ISO-8859-5: ISO8859-5 Linux.100+.ccdf.=.?.ISO-8859-6: ISO8859-6 Linux.100+.ccdf.=.?.ISO-8859-7: ISO8859-7 Linux.100+.ccdf.=.?.ISO-8859-8: ISO8859-8 Linux.100+.ccdf.=.?.ISO-8859-9: ISO8859-9 Linux.100+.ccdf.=.?.EUC-JP: IBM-eucJP Linux.100+.ccdf.=.?.EUC-KR: IBM-eucKR Linux.100+.ccdf.=.?.EUC-TW: IBM-eucTW Linux.100+.ccdf.=.?.EUC-CN: IBM-eucCN Linux.100+.ccdf.>.?.IBM-932: IBM-932 Linux.100+.ccdf.>.?.HP-SJIS: IBM-932 Linux.100+.ccdf.=.?.IBM-1046: IBM-1046 Linux.100+.ccdf.=.?.IBM-850: IBM-850 Linux.100+.ccdf.=.?.IBM-856: IBM-856 Linux.100+.ccdf.=.?.HP-BIG5: big5 Linux.100+.ccdf.=.?.TIS-620: TIS-620 Linux.100+.ccdf.=.?.UTF-8: UTF-8 Linux.100+.ccdf.=.?.DT-SYMBOL-1: symbol !!! standard Dt symbol font ! These CDE standard locales may have CCDF-locales, but they are defined by localizers Linux.100+.ccdf.>.?.HP-ROMAN8: ISO8859-1 Linux.100+.ccdf.>.?.HP-ARABIC8: ISO8859-6 Linux.100+.ccdf.>.?.HP-GREEK8: ISO8859-8 Linux.100+.ccdf.>.?.HP-HEBREW8: ISO8859-7 Linux.100+.ccdf.>.?.HP-TURKISH8: ISO8859-9 Linux.100+.ccdf.>.?.HP-KANA8: IBM-932 Linux.100+.ccdf.>.?.HP-CCDC: IBM-eucCN ! Codesets that require multibyte parsing to avoid confusion with shell special chars Linux.?.dtkshSpecialParse.=.ja_JP.HP-JIS: True Linux.?.dtkshSpecialParse.=.ja_JP.HP-SJIS: True Linux.?.dtkshSpecialParse.=.ja_JP.IBM-932: True Linux.?.dtkshSpecialParse.=.zh_TW.HP-BIG5: True Linux.?.dtkshSpecialParse.=.zh_TW.HP-CCDC: True !! When content is exchanged with other platforms, the interchange codeset !! may be different that the codeset used locally. In CDE1, these translations !! are used by dtmail, but other clients may use the same translations !! in the future. For example, to improve interoperability of 8-bit mail, !! the mail messages of users working in codesets such as HP-ROMAN8 or IBM-850 !! are translated to the interchangeCodeset (in this case, ISO-8859-1) before !! they are sent. Similarly, the mail of Japanese users is translated to JIS !! before it is sent. !! !! -------------------------------------------------------------------- !! Linux does provide the fold7 conversion which is an ISO 2022 encoding !! of every code set supported by a locale... so ... the name !! ISO-2022-xx ( where xx is JP, CN, KR, TW) !! can be used for any of the following interchangeCodeset... but it has !! been left as is in case 8-bit mail is supported... !! -------------------------------------------------------------------- !! Linux.?.interchangeCodeset.~.?.ISO-8859-1: ISO-8859-1 ! ISO Latin 1 !Linux.?.interchangeCodeset.>.?.HP-ROMAN8: ISO-8859-1 ! HP Roman8 Linux.?.interchangeCodeset.>.?.IBM-850: ISO-8859-1 ! PC (Multi-lingual) Linux.?.interchangeCodeset.>.?.IBM-437: ISO-8859-1 ! PC (US) Linux.?.interchangeCodeset.~.?.ISO-8859-2: ISO-8859-2 ! ISO Latin 2 Linux.?.interchangeCodeset.~.?.ISO-8859-5: ISO-8859-5 ! ISO Latin/Cyrillic Linux.?.interchangeCodeset.~.?.ISO-8859-6: ISO-8859-6 ! ISO Latin/Arabic !Linux.?.interchangeCodeset.>.?.HP-ARABIC8: ISO-8859-6 ! HP Arabic8 Linux.?.interchangeCodeset.>.?.IBM-1046: ISO-8859-6 ! PC Arabic Code Set Linux.?.interchangeCodeset.~.?.ISO-8859-8: ISO-8859-8 ! ISO Latin/Hebrew !Linux.?.interchangeCodeset.>.?.HP-HEBREW8: ISO-8859-8 ! HP Hebrew8 Linux.?.interchangeCodeset.>.?.IBM-856: ISO-8859-8 ! PC Hebrew Linux.?.interchangeCodeset.~.?.ISO-8859-7: ISO-8859-7 ! ISO Latin/Greek !Linux.?.interchangeCodeset.>.?.HP-GREEK8: ISO-8859-7 ! HP Greek8 Linux.?.interchangeCodeset.~.?.ISO-8859-9: ISO-8859-9 ! ISO Latin 5 !Linux.?.interchangeCodeset.>.?.HP-TURKISH8: ISO-8859-9 ! HP Turkish8 Linux.?.interchangeCodeset.~.?.EUC-JP: ISO-2022-JP ! Japanese EUC !Linux.?.interchangeCodeset.>.?.HP-SJIS: ISO-2022-JP ! HP Japanese Shift JIS Linux.?.interchangeCodeset.>.?.IBM-932: ISO-2022-JP ! PC Japanese Shift JIS !Linux.?.interchangeCodeset.>.?.HP-KANA8: ISO-2022-JP ! HP Japanese Katakana8 ! uncomment when ISO-2022-KR is supported by iconv Linux.?.interchangeCodeset.~.?.EUC-KR: ISO-2022-KR ! Korean EUC ! uncomment when ISO-2022-CN is supported by iconv Linux.?.interchangeCodeset.~.?.EUC-CN: ISO-2022-CN ! China Chinese EUC Linux.?.interchangeCodeset.>.?.HP-15CN: ISO-2022-CN ! HP Chinese EUC ! uncomment when ISO-2022-TW is supported by iconv Linux.?.interchangeCodeset.~.?.EUC-TW: ISO-2022-TW ! Taiwan Chinese EUC Linux.?.interchangeCodeset.>.?.HP-BIG5: ISO-2022-TW ! HP Big5 Chinese Linux.?.interchangeCodeset.>.?.HP-CCDC: ISO-2022-TW ! HP CCDC Chinese Linux.?.interchangeCodeset.~.?.TIS-620: TIS-620 ! Thai Linux.?.interchangeCodeset.>.?.UCS-2: ISO-2022-JP ! Unicode Linux.?.interchangeCodeset.~.?.UTF-8: ISO-2022-JP ! multibyte Unicode !! Codeset identifiers for use with MIME messages. The .~. translations !! are used by dtmail and adhere to the MIME standard, RFC 1521. !! Note that the MIME standard states that codeset identifiers are !! case-insensitive. The operation-specific values on the right-hand-side !! of the translations below, however, ARE case sensitive. Before !! doing a OpToStd translation, first convert the MIME codeset identifier !! to uppercase. Alternatively, one could provide lower-case versions !! of the translations (right-hand-side only should be in lower-case). Linux.?.mime.~.?.ISO-8859-1: ISO-8859-1 ! ISO Latin 1 Linux.?.mime.~.?.HP-ROMAN8: X-HP-ROMAN8 ! HP Roman8 Linux.?.mime.~.?.IBM-437: X-IBM-437 ! PC (US) Linux.?.mime.~.?.IBM-850: X-IBM-850 ! PC (Multi-lingual) Linux.?.mime.~.?.ISO-8859-2: ISO-8859-2 ! ISO Latin 2 Linux.?.mime.~.?.ISO-8859-5: ISO-8859-5 ! ISO Latin/Cyrillic Linux.?.mime.~.?.ISO-8859-6: ISO-8859-6 ! ISO Latin/Arabic Linux.?.mime.~.?.HP-ARABIC8: X-HP-ARABIC8 ! HP Arabic8 Linux.?.mime.~.?.IBM-1046: X-IBM-1046 ! PC Arabic Code Set Linux.?.mime.~.?.ISO-8859-8: ISO-8859-8 ! ISO Latin/Hebrew Linux.?.mime.~.?.HP-HEBREW8: X-HP-HEBREW8 ! HP Hebrew8 Linux.?.mime.~.?.IBM-856: X-IBM-856 ! PC Hebrew Linux.?.mime.~.?.ISO-8859-7: ISO-8859-7 ! ISO Latin/Greek Linux.?.mime.~.?.HP-GREEK8: X-HP-GREEK8 ! HP Greek8 Linux.?.mime.~.?.ISO-8859-9: ISO-8859-9 ! ISO Latin 5 Linux.?.mime.~.?.HP-TURKISH8: X-HP-TURKISH8 ! HP Turkish8 Linux.?.mime.~.?.EUC-JP: X-EUC-JP ! Japanese EUC Linux.?.mime.~.?.ISO-2022-JP: ISO-2022-JP ! Japanese JIS with 7-bit encoding per ISO-2022-JP Linux.?.mime.~.?.HP-SJIS: X-HP-SJIS ! HP Japanese Shift JIS Linux.?.mime.~.?.IBM-932: X-IBM-932 ! PC Japanese Shift JIS Linux.?.mime.~.?.HP-KANA8: X-HP-KANA8 ! HP Japanese Katakana8 Linux.?.mime.~.?.EUC-KR: X-EUC-KR ! Korean EUC Linux.?.mime.~.?.ISO-2022-KR: ISO-2022-KR ! Korean with 7-bit encoding per ISO-2022-KR Linux.?.mime.~.?.EUC-CN: X-EUC-CN ! China Chinese EUC Linux.?.mime.~.?.ISO-2022-CN: ISO-2022-CN ! China Chinese with 7-bit encoding per ISO-2022-CN Linux.?.mime.~.?.HP-15CN: X-HP-15CN ! HP China Chinese EUC Linux.?.mime.~.?.EUC-TW: X-EUC-TW ! Taiwan Chinese EUC Linux.?.mime.~.?.ISO-2022-TW: ISO-2022-TW ! Taiwan Chinese with 7-bit encoding per ISO-2022-TW Linux.?.mime.~.?.HP-BIG5: X-HP-BIG5 ! HP Big5 Taiwan Chinese Linux.?.mime.~.?.HP-CCDC: X-HP-CCDC ! HP CCDC Taiwan Chinese Linux.?.mime.~.?.TIS-620: X-TIS-620 ! Thai Linux.?.mime.~.?.UCS-2: X-UCS-2 ! Unicode; group 0, plane 0 of ISO-10646 Linux.?.mime.~.?.UCS-4: X-UCS-4 ! ISO-10646 Linux.?.mime.~.?.UTF-7: X-UTF-7 ! multibyte encoding of Unicode Linux.?.mime.~.?.UTF-8: X-UTF-8 ! multibyte encoding of Unicode Linux.?.mime.~.?.UTF-16: X-UTF-16 ! multibyte encoding of Unicode !! If other mailers are using other codeset identifiers in their MIME !! messages, dtmail will not be able to process them correctly. !! To correct this, additional .<. translations for these identifiers !! can be added to a .lcx file in the /etc/dt/config/svc !! or $HOME/.dt/config/svc directories. Such translations should read: !! .100+.mime.<.?.: !! !! ***NEVER*** use a .~. translation, such as we use above, as this could !! cause dtmail to send unexpected identifier strings by overriding the !! above definition. Further, never use .=. or .>. translations. !! !! These two identifiers are in common usage, as they derive from RFC1521. Linux.?.mime.<.?.ISO-8859-1: us-ascii ! ISO Latin 1 Linux.?.mime.<.?.ISO-8859-1: US-ASCII ! ISO Latin 1