r=jkobal, a=blizzard
Code from mkaply - proper mapping of OS/2 codepages to charsets
This commit is contained in:
mkaply%us.ibm.com 2000-12-18 20:27:19 +00:00
Родитель d3f40e2ef0
Коммит 0e4b9c9923
2 изменённых файлов: 73 добавлений и 599 удалений

Просмотреть файл

@ -1,50 +1,43 @@
/* /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
* The contents of this file are subject to the Mozilla Public License
* Version 1.1 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
* *
* Software distributed under the License is distributed on an "AS IS" * The contents of this file are subject to the Mozilla Public
* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the * License Version 1.1 (the "License"); you may not use this file
* License for the specific language governing rights and limitations * except in compliance with the License. You may obtain a copy of
* under the License. * the License at http://www.mozilla.org/MPL/
* *
* The Original Code is the Mozilla OS/2 libraries. * Software distributed under the License is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
* *
* The Initial Developer of the Original Code is John Fairhurst, * The Original Code is Mozilla Communicator client code.
* <john_fairhurst@iname.com>. Portions created by John Fairhurst are
* Copyright (C) 1999 John Fairhurst. All Rights Reserved.
* *
* Contributor(s): Henry Sobotka <sobotka@axess.com> * The Initial Developer of the Original Code is Netscape Communications
* 00/01: general review and update against Win/Unix versions * Corporation. Portions created by Netscape are
* Copyright (C) 1998 Netscape Communications Corporation. All
* Rights Reserved.
* *
* This Original Code has been modified by IBM Corporation. * Contributor(s):
* Modifications made by IBM described herein are * John Fairhurst
* Copyright (c) International Business Machines * Henry Sobotka
* Corporation, 2000 * IBM Corp.
*
* Modifications to Mozilla code or documentation
* identified per MPL Section 3.3
*
* Date Modified by Description of modification
* 06/01/2000 IBM Corp. Fixed querying of locale charset
*/ */
#include "nsIPlatformCharset.h" #include "nsIPlatformCharset.h"
#include "pratom.h"
#include "nsURLProperties.h" #include "nsURLProperties.h"
#include "nsCOMPtr.h" #include "pratom.h"
#include "nsIOS2Locale.h" #define INCL_PM
#include "nsLocaleCID.h" #include <os2.h>
#include "nsUConvDll.h" #include "nsUConvDll.h"
#include "nsIOS2Locale.h"
#include "nsCOMPtr.h"
#include "nsLocaleCID.h"
#include "nsIComponentManager.h" #include "nsIComponentManager.h"
#include <unidef.h>
#include <ulsitem.h>
NS_DEFINE_IID(kIOS2LocaleIID,NS_IOS2LOCALE_IID); NS_DEFINE_IID(kIOS2LocaleIID,NS_IOS2LOCALE_IID);
NS_DEFINE_CID(kOS2LocaleFactoryCID,NS_OS2LOCALEFACTORY_CID); NS_DEFINE_CID(kOS2LocaleFactoryCID,NS_OS2LOCALEFACTORY_CID);
// 90% copied from the unix version static nsURLProperties *gInfo = nsnull;
static PRInt32 gCnt= 0;
class nsOS2Charset : public nsIPlatformCharset class nsOS2Charset : public nsIPlatformCharset
{ {
@ -55,77 +48,45 @@ public:
nsOS2Charset(); nsOS2Charset();
virtual ~nsOS2Charset(); virtual ~nsOS2Charset();
NS_IMETHOD GetCharset( nsPlatformCharsetSel selector, nsString& oResult); NS_IMETHOD GetCharset(nsPlatformCharsetSel selector, nsString& oResult);
NS_IMETHOD GetDefaultCharsetForLocale(const PRUnichar* localeName, PRUnichar** _retValue); NS_IMETHOD GetDefaultCharsetForLocale(const PRUnichar* localeName, PRUnichar** _retValue);
private: private:
nsString mCharset; nsString mCharset;
}; };
NS_IMPL_ISUPPORTS(nsOS2Charset, kIPlatformCharsetIID); NS_IMPL_ISUPPORTS1(nsOS2Charset, nsIPlatformCharset);
static nsURLProperties *gInfo = nsnull;
static PRInt32 gCnt=0;
nsOS2Charset::nsOS2Charset() nsOS2Charset::nsOS2Charset()
{ {
NS_INIT_REFCNT(); NS_INIT_REFCNT();
PR_AtomicIncrement(&g_InstanceCount); PR_AtomicIncrement(&g_InstanceCount);
PR_AtomicIncrement(&gCnt); PR_AtomicIncrement(&gCnt); // count for gInfo
// XXX we should make the following block critical section // XXX We should make the following block critical section
if(nsnull == gInfo) if(nsnull == gInfo)
{ {
nsAutoString propertyURL; nsAutoString propertyURL; propertyURL.AssignWithConversion("resource:/res/os2charset.properties");
propertyURL.AssignWithConversion("resource:/res/os2charset.properties");
nsURLProperties *info = new nsURLProperties( propertyURL ); nsURLProperties *info = new nsURLProperties( propertyURL );
NS_ASSERTION( info, "cannot create nsURLProperties"); NS_ASSERTION( info , " cannot create nsURLProperties");
gInfo = info; gInfo = info;
} }
NS_ASSERTION(gInfo, "Cannot open property file");
// Probably ought to go via the localefactory, but hey... if( gInfo )
LocaleObject locale_object = 0;
UniCreateLocaleObject( UNI_UCS_STRING_POINTER,
(UniChar*)L"", &locale_object);
if(gInfo && locale_object)
{ {
UniChar *pString = 0; UINT acp = ::WinQueryCp(HMQ_CURRENT);
PRInt32 acpint = (PRInt32)(acp & 0x00FFFF);
nsAutoString acpKey; acpKey.AssignWithConversion("os2.");
acpKey.AppendInt(acpint, 10);
nsAutoString platformLocaleKey; nsresult res = gInfo->Get(acpKey, mCharset);
platformLocaleKey.AssignWithConversion("locale." OSTYPE "."); if(NS_FAILED(res)) {
UniQueryLocaleItem( locale_object, LocaleItem(100), &pString); // locale name (e.g. "en_US") mCharset.AssignWithConversion("IBM850");
platformLocaleKey.Append((PRUnichar *)pString); }
UniFreeMem( pString);
platformLocaleKey.AppendWithConversion(".");
UniQueryLocaleItem( locale_object, LocaleItem(109), &pString); // ULS codepage (e.g. "iso8859-1")
platformLocaleKey.Append((PRUnichar *)pString);
UniFreeMem( pString);
nsresult res = gInfo->Get(platformLocaleKey, mCharset); } else {
if(NS_FAILED(res)) mCharset.AssignWithConversion("IBM850");
{
nsAutoString localeKey;
localeKey.AssignWithConversion("locale.all.");
UniQueryLocaleItem( locale_object, LocaleItem(100), &pString); // locale name (e.g. "en_US")
localeKey.Append((PRUnichar *)pString);
UniFreeMem( pString);
localeKey.AppendWithConversion(".");
UniQueryLocaleItem( locale_object, LocaleItem(109), &pString); // ULS codepage (e.g. "iso8859-1")
localeKey.Append((PRUnichar *)pString);
UniFreeMem( pString);
res = gInfo->Get(localeKey, mCharset);
}
UniFreeLocaleObject( locale_object);
if(NS_SUCCEEDED(res))
{
return; // succeeded
}
} }
mCharset.AssignWithConversion("ISO-8859-1");
return; // failed
} }
nsOS2Charset::~nsOS2Charset() nsOS2Charset::~nsOS2Charset()
@ -145,13 +106,6 @@ nsOS2Charset::GetCharset(nsPlatformCharsetSel selector, nsString& oResult)
return NS_OK; return NS_OK;
} }
// XXXX STUB
NS_IMETHODIMP
nsOS2Charset::GetDefaultCharsetForLocale(const PRUnichar* localeName, PRUnichar** _retValue)
{
// OS2TODO
return NS_OK;
}
class nsOS2CharsetFactory : public nsIFactory { class nsOS2CharsetFactory : public nsIFactory {
NS_DECL_ISUPPORTS NS_DECL_ISUPPORTS
@ -201,11 +155,15 @@ NS_IMETHODIMP nsOS2CharsetFactory::LockFactory(PRBool aLock)
return NS_OK; return NS_OK;
} }
nsIFactory* NEW_PLATFORMCHARSETFACTORY() NS_IMETHODIMP
nsOS2Charset::GetDefaultCharsetForLocale(const PRUnichar* localeName, PRUnichar** _retValue)
{ {
return new nsOS2CharsetFactory(); // OS2TODO
return NS_OK;
} }
//----------------------------------------------------------------------
NS_IMETHODIMP NS_IMETHODIMP
NS_NewPlatformCharset(nsISupports* aOuter, NS_NewPlatformCharset(nsISupports* aOuter,
const nsIID &aIID, const nsIID &aIID,

Просмотреть файл

@ -16,509 +16,25 @@
## Copyright (C) 1999 Netscape Communications Corporation. All ## Copyright (C) 1999 Netscape Communications Corporation. All
## Rights Reserved. ## Rights Reserved.
## ##
## Contributor(s): ## Contributor(s):
## ##
## This Original Code has been modified by IBM Corporation. ## This file map an OS/2 codepage to a charset name
## Modifications made by IBM described herein are ## We use this to figure out the charset of file system, clipboard, etc
## Copyright (c) International Business Machines
## Corporation, 2000
## ##
## Modifications to Mozilla code or documentation os2.850=IBM850
## identified per MPL Section 3.3 os2.852=IBM852
## os2.855=IBM855
## Date Modified by Description of modification os2.857=IBM857
## 06/01/2000 IBM Corp. Added charset mappings (copied from UNIX) os2.862=IBM862
## os2.864=IBM864
## XXXX EXPLANATION FROM UNIX VERSION: os2.864=IBM866
## os2.874=TIS-620
## Platform specific section. os2.932=Shift_JIS
## Map a given locale name in a particular platform (OS) to a charset name os2.936=GB2312
## This have highgher priority than the all section os2.949=EUC-KR
## Use this section to overwrite those locale name which *CONFLICT WITH* os2.950=Big5
## most other platform os2.1381=GB2312
## Do not use this section if the locale is unique in the platform. Only use os2.1386=GB2312
## this when it have CONFLICT w/ other platform. os2.813=ISO-8859-7
## os2.915=ISO-8859-5
## Example, most platform use EUC-JP in "japanese" locale, but os2.1004=ISO-8859-1
## hpux, unixware, and sco use Shift_JIS, so we put
## locale.all.japanese=EUC-JP
## in the all platform section and put
## locale.HP-UXB.10.japanese=Shift_JIS
## locale.SCOOS5.0.japanese=Shift_JIS
## in the platform specific section
##
## The key is "locale." + OSTYPE + "." + locale name
##
## XXXX OS2TODO - Just copied the "all" section from UNIX
##
## All platform section
## Put the general locale to charset mapping here.
## If somehow two platform use the same locale name with different
## charset, put the least common one in the platform specific section
## This section have lower priority than the platform specific section
##
## The key is "locale.all." + locale name
# AIX
locale.all.ar_AA=ISO-8859-6
# AIX
#locale.all.Ar_AA=IBM-1046
# Solaris
locale.all.Ar_ARM=ISO-8859-6
locale.all.american.iso88591=ISO-8859-1
locale.all.bulgarian=ISO-8859-2
locale.all.bg_BG.ISO8859-5=ISO-8859-5
# AIX
locale.all.bg_BG=ISO-8859-5
locale.all.C=ISO-8859-1
# HP
locale.all.C.iso885915=ISO-8859-15
locale.all.c-french.iso88591=ISO-8859-1
locale.all.chinese=GB2312
locale.all.chinese-s=GB2312
locale.all.chinese-t.big5=Big5
locale.all.cs=ISO-8859-2
locale.all.cs_CZ=ISO-8859-2
locale.all.cs_CZ.ISO8859-2=ISO-8859-2
locale.all.cs_CZ.88592=ISO-8859-2
locale.all.czech=ISO-8859-2
locale.all.da=ISO-8859-1
# Solaris
locale.all.da.ISO8859-15=ISO-8859-15
locale.all.da_DK.ISO8859-15=ISO-8859-15
locale.all.da_DK.ISO8859-15@euro=ISO-8859-15
# Solaris
locale.all.da.ISO8859-15@euro=ISO-8859-15
locale.all.da_DK.88591=ISO-8859-1
# HP
locale.all.da_DK.iso885915@euro=ISO-8859-15
locale.all.da_DK.ISO8859-1=ISO-8859-1
locale.all.da_DK=ISO-8859-1
# AIX
#locale.all.Da_DK=IBM-850
locale.all.danish.iso88591=ISO-8859-1
locale.all.dutch.iso88591=ISO-8859-1
locale.all.de=ISO-8859-1
# Solaris
locale.all.de.ISO8859-15=ISO-8859-15
# Solaris
locale.all.de.ISO8859-15@euro=ISO-8859-15
# Solaris
locale.all.de.UTF-8=UTF-8
# Solaris
locale.all.de.UTF-8@euro=UTF-8
locale.all.de_AT=ISO-8859-1
# Solaris
locale.all.de_AT.ISO8859-15=ISO-8859-15
# Solaris
locale.all.de_AT.ISO8859-15@euro=ISO-8859-15
locale.all.de_CH=ISO-8859-1
locale.all.de_CH.88591=ISO-8859-1
locale.all.de_CH.ISO8859-1=ISO-8859-1
locale.all.de_DE.ISO8859-15=ISO-8859-15
locale.all.de_DE.ISO8859-15@euro=ISO-8859-15
# AIX
#locale.all.De_CH=IBM-850
locale.all.de_DE=ISO-8859-1
locale.all.de_DE.88591=ISO-8859-1
# HP
locale.all.de_DE.iso885915=ISO-8859-15
# HP
locale.all.de_DE.iso885915@euro=ISO-8859-15
locale.all.de_DE.ISO8859-1=ISO-8859-1
# AIX
#locale.all.De_DE=IBM-850
# Solaris
locale.all.el_GR.ISO8859-7=ISO-8859-7
locale.all.el_GR.ISO8859-7@euro=ISO-8859-7
locale.all.en_AU.ISO8859-1=ISO-8859-1
locale.all.en_CA.ISO8859-1=ISO-8859-1
# AIX
locale.all.el_GR=ISO-8859-7
locale.all.en=ISO-8859-1
locale.all.en_AU=ISO-8859-1
locale.all.en_CA=ISO-8859-1
locale.all.en_GB=ISO-8859-1
# Solaris
locale.all.en_GB.ISO8859-15=ISO-8859-15
# Solaris
locale.all.en_GB.ISO8859-15@euro=ISO-8859-15
locale.all.en_GB.88591=ISO-8859-1
locale.all.en_GB.ISO8859-1=ISO-8859-1
# HP
locale.all.en_GB.iso885915@euro=ISO-8859-15
# AIX
#locale.all.En_GB=IBM-850
# Solaris
locale.all.en_IE.ISO8859-1=ISO-8859-1
locale.all.en_IE.ISO8859-15=ISO-8859-15
# Solaris
locale.all.en_IE.ISO8859-15@euro=ISO-8859-15
locale.all.en_JP=EUC-JP
locale.all.en_JP.IBM-eucJP=EUC-JP
locale.all.En_JP.IBM-932=Shift_JIS
locale.all.En_JP=Shift_JIS
locale.all.en_KR=EUC-KR
locale.all.en_KR.IBM-eucKR=EUC-KR
locale.all.en_TH=ISO-8859-1
locale.all.en_TW=x-euc-tw
locale.all.en_TW.IBM-eucTW=x-euc-tw
locale.all.en_US=ISO-8859-1
locale.all.en_US.88591=ISO-8859-1
locale.all.en_US.ISO8859-1=ISO-8859-1
# Solaris
locale.all.en_US.UTF-8=UTF-8
# Solaris
locale.all.en_US.UTF-8@euro=UTF-8
# AIX
#locale.all.En_US=IBM-850
locale.all.english.iso88591=ISO-8859-1
locale.all.es=ISO-8859-1
# Solaris
locale.all.es.ISO8859-15=ISO-8859-15
# Solaris
locale.all.es.ISO8859-15@euro=ISO-8859-15
# Solaris
locale.all.es.UTF-8=UTF-8
# Solaris
locale.all.es.UTF-8@euro=UTF-8
locale.all.es_ES=ISO-8859-1
locale.all.es_ES.ISO8859-15=ISO-8859-15
locale.all.es_ES.ISO8859-15@euro=ISO-8859-15
locale.all.es_AR.ISO8859-1=ISO-8859-1
locale.all.es_BO.ISO8859-1=ISO-8859-1
locale.all.es_CL.ISO8859-1=ISO-8859-1
locale.all.es_CO.ISO8859-1=ISO-8859-1
locale.all.es_CR.ISO8859-1=ISO-8859-1
locale.all.es_EC.ISO8859-1=ISO-8859-1
locale.all.es_GT.ISO8859-1=ISO-8859-1
locale.all.es_MX.ISO8859-1=ISO-8859-1
locale.all.es_NI.ISO8859-1=ISO-8859-1
locale.all.es_PA.ISO8859-1=ISO-8859-1
locale.all.es_PE.ISO8859-1=ISO-8859-1
locale.all.es_PY.ISO8859-1=ISO-8859-1
locale.all.es_SV.ISO8859-1=ISO-8859-1
locale.all.es_UY.ISO8859-1=ISO-8859-1
locale.all.es_VE.ISO8859-1=ISO-8859-1
# HP
locale.all.es_ES.iso885915=ISO-8859-15
# HP
locale.all.es_ES.iso885915@euro=ISO-8859-15
locale.all.es_ES.88591=ISO-8859-1
locale.all.es_ES.ISO8859-1=ISO-8859-1
# AIX
#locale.all.En_ES=IBM-850
# Solaris
locale.all.et_EE.ISO8859-15=ISO-8859-15
# AIX
#locale.all.Et_ET=IBM-922
# AIX
locale.all.ET_ET=UTF-8
locale.all.fi=ISO-8859-1
# Solaris
locale.all.fi.ISO8859-15=ISO-8859-15
# Solaris
locale.all.fi.ISO8859-15@euro=ISO-8859-15
locale.all.fi_FI=ISO-8859-1
locale.all.fi_FI.88591=ISO-8859-1
locale.all.fi_FI.ISO8859-1=ISO-8859-1
locale.all.fi_FI.ISO8859-15=ISO-8859-15
locale.all.fi_FI.ISO8859-15@euro=ISO-8859-15
# HP
locale.all.fi_FI.iso885915@euro=ISO-8859-15
# AIX
#locale.all.Fi_ES=IBM-850
locale.all.finnish.iso88591=ISO-8859-1
locale.all.fr=ISO-8859-1
# Solaris
locale.all.fr.ISO8859-15=ISO-8859-15
# Solaris
locale.all.fr.ISO8859-15@euro=ISO-8859-15
# Solaris
locale.all.fr.UTF-8=UTF-8
# Solaris
locale.all.fr.UTF-8@euro=UTF-8
locale.all.fr_BE=ISO-8859-1
# Solaris
locale.all.fr_BE.ISO8859-15=ISO-8859-15
# Solaris
locale.all.fr_BE.ISO8859-15@euro=ISO-8859-15
locale.all.fr_BE.88591=ISO-8859-1
locale.all.fr_BE.ISO8859-1=ISO-8859-1
locale.all.fr_BE.iso8859=ISO-8859-1
# AIX
#locale.all.Fr_BE=IBM-850
locale.all.fr_CA=ISO-8859-1
locale.all.fr_CA.88591=ISO-8859-1
locale.all.fr_CA.iso8859=ISO-8859-1
# HP
locale.all.fr_CA.iso885915@euro=ISO-8859-15
locale.all.fr_CA.ISO8859-1=ISO-8859-1
# AIX
#locale.all.Fr_CA=IBM-850
locale.all.fr_CH=ISO-8859-1
locale.all.fr_CH.88591=ISO-8859-1
locale.all.fr_CH.iso8859=ISO-8859-1
locale.all.fr_CH.ISO8859-1=ISO-8859-1
# Solaris
locale.all.fr_FR.ISO8859-15=ISO-8859-15
locale.all.fr_FR.ISO8859-15@euro=ISO-8859-15
# AIX
#locale.all.Fr_CH=IBM-850
locale.all.fr_FR=ISO-8859-1
locale.all.fr_FR.88591=ISO-8859-1
locale.all.fr_FR.iso8859=ISO-8859-1
# HP
locale.all.fr_FR.iso885915=ISO-8859-15
# HP
locale.all.fr_FR.iso885915@euro=ISO-8859-15
locale.all.fr_FR.ISO8859-1=ISO-8859-1
# AIX
#locale.all.Fr_FR=IBM-850
locale.all.french.iso88591=ISO-8859-1
locale.all.german.iso88591=ISO-8859-1
# Solaris
locale.all.he_HE=ISO-8859-8
locale.all.he_IL=ISO-8859-8
locale.all.hr_HR.ISO8859-2=ISO-8859-2
# AIX
locale.all.hr_HR=ISO-8859-2
locale.all.hu_HU=ISO-8859-2
locale.all.hu_HU.88592=ISO-8859-2
locale.all.hu_HU.ISO8859-2=ISO-8859-2
locale.all.hungarian=ISO-8859-2
locale.all.icelandic.iso88591=ISO-8859-1
locale.all.iso_8859_1=ISO-8859-1
locale.all.is=ISO-8859-1
locale.all.is_IS=ISO-8859-1
locale.all.is_IS.88591=ISO-8859-1
locale.all.is_IS.ISO8859-1=ISO-8859-1
# HP
locale.all.is_IS.iso885915@euro=ISO-8859-15
# AIX
#locale.all.Is_IS=IBM-850
locale.all.it=ISO-8859-1
# Solaris
locale.all.it.ISO8859-15=ISO-8859-15
# Solaris
locale.all.it.ISO8859-15@euro=ISO-8859-15
# Solaris
locale.all.it.UTF-8=UTF-8
# Solaris
locale.all.it.UTF-8@euro=UTF-8
locale.all.it_IT.ISO8859-15=ISO-8859-15
locale.all.it_IT.ISO8859-15@euro=ISO-8859-15
# AIX
#locale.all.It_IT=IBM-850
locale.all.italian.iso8859-1=ISO-8859-1
locale.all.it_CH=ISO-8859-1
locale.all.it_IT=ISO-8859-1
locale.all.it_IT.88591=ISO-8859-1
locale.all.it_IT.ISO8859-1=ISO-8859-1
# HP
locale.all.it_IT.iso885915=ISO-8859-15
# HP
locale.all.it_IT.iso885915@euro=ISO-8859-15
# AIX
locale.all.iw_IL=ISO-8859-8
# AIX
#locale.all.Iw_IL=IBM-856
locale.all.ja=EUC-JP
locale.all.Ja_JP.IBM-932=Shift_JIS
locale.all.Ja_JP=Shift_JIS
locale.all.japanese=EUC-JP
locale.all.japanese.euc=EUC-JP
locale.all.ja_JP=EUC-JP
# Solaris
locale.all.ja_JP.UTF-8=UTF-8
# Solaris
locale.all.ja_JP.UTF-8@euro=UTF-8
locale.all.ja_JP.EUC=EUC-JP
locale.all.ja_JP.eucJP=EUC-JP
locale.all.ja_JP.SJIS=Shift_JIS
locale.all.ja_JP.PCK=Shift_JIS
locale.all.ja_JP.IBM-eucJP=EUC-JP
locale.all.ja_JP.mscode=Shift_JIS
locale.all.ja_JP.ujis=EUC-JP
locale.all.katakana=Shift_JIS
locale.all.ko=EUC-KR
locale.all.ko_KR=EUC-KR
# Solaris
locale.all.ko_KR.UTF-8=UTF-8
# Solaris
locale.all.ko_KR.UTF-8@euro=UTF-8
locale.all.ko_KR.euc=EUC-KR
locale.all.ko_KR.eucKR=EUC-KR
locale.all.ko_KR.IBM-eucKR=EUC-KR
locale.all.ko_KR.EUC=EUC-KR
locale.all.ko.UTF-8=UTF-8
locale.all.korean=EUC-KR
# Solaris
locale.all.lt_LT.ISO8859-13=ISO-8859-13
# AIX
#locale.all.Lt_LT=IBM-921
# AIX
locale.all.LT_LT=UTF-8
# Solaris
locale.all.lv_LV.ISO8859-13=ISO-8859-13
# AIX
#locale.all.Lt_LV=IBM-921
# AIX
locale.all.LT_LV=UTF-8
# Solaris
locale.all.mk_MK.ISO8859-5=ISO-8859-5
# AIX
locale.all.mk_MK=ISO-8859-5
locale.all.nl=ISO-8859-1
# Solaris
locale.all.nl.ISO8859-15=ISO-8859-15
# Solaris
locale.all.nl.ISO8859-15@euro=ISO-8859-15
locale.all.nl_BE=ISO-8859-1
# Solaris
locale.all.nl_BE.ISO8859-15=ISO-8859-15
# Solaris
locale.all.nl_BE.ISO8859-15@euro=ISO-8859-15
locale.all.nl_BE.88591=ISO-8859-1
locale.all.nl_BE.ISO8859-1=ISO-8859-1
# Solaris
locale.all.nl_NL.ISO8859-15=ISO-8859-15
locale.all.nl_NL.ISO8859-15@euro=ISO-8859-15
# AIX
#locale.all.NL_BE=IBM-850
locale.all.nl_NL=ISO-8859-1
locale.all.nl_NL.88591=ISO-8859-1
locale.all.nl_NL.ISO8859-1=ISO-8859-1
# HP
locale.all.nl_NL.iso885915@euro=ISO-8859-15
# AIX
#locale.all.NL_NL=IBM-850
locale.all.no=ISO-8859-1
locale.all.no_NO=ISO-8859-1
locale.all.no_NO.88591=ISO-8859-1
locale.all.no_NO.ISO8859-1=ISO-8859-1
# Solaris
locale.all.no_NO.ISO8859-1@bokmal=ISO-8859-1
locale.all.no_NO.ISO8859-1@nynorsk=ISO-8859-1
# HP
locale.all.no_NO.iso885915@euro=ISO-8859-15
# AIX
#locale.all.No_NO=IBM-850
locale.all.norwegian.iso88591=ISO-8859-1
locale.all.pl=ISO-8859-2
locale.all.pl_PL=ISO-8859-2
locale.all.pl_PL.88592=ISO-8859-2
locale.all.pl_PL.ISO8859-2=ISO-8859-2
locale.all.polish=ISO-8859-2
locale.all.portuguese.iso88591=ISO-8859-1
locale.all.pt=ISO-8859-1
# Solaris
locale.all.pt.ISO8859-15=ISO-8859-15
# Solaris
locale.all.pt.ISO8859-15@euro=ISO-8859-15
# Solaris
locale.all.pt_BR.ISO8859-1=ISO-8859-1
locale.all.pt_PT.ISO8859-15=ISO-8859-15
locale.all.pt_PT.ISO8859-15@euro=ISO-8859-15
# AIX
#locale.all.Pt.PT=IBM-850
locale.all.pt_PT=ISO-8859-1
locale.all.pt_PT.88591=ISO-8859-1
# HP
locale.all.pt_PT.iso885915@euro=ISO-8859-15
locale.all.pt_PT.ISO8859-1=ISO-8859-1
# Solaris
locale.all.ro_RO.ISO8859-2=ISO-8859-2
# AIX
locale.all.ro_RO=ISO-8859-5
# Solaris
#locale.all.ru_RU.ANSI1251= ??? ANSI-1251 ???
locale.all.ru_RU.ISO8859-5=ISO-8859-5
# AIX
locale.all.ru_RU=ISO-8859-5
locale.all.ru_RU.KOI8-R=KOI8-R
locale.all.rumanian=ISO-8859-2
locale.all.serbocroatian=ISO-8859-2
locale.all.sh=ISO-8859-2
# Solaris
locale.all.sh_BA.ISO8859-2@bosnia=ISO-8859-2
locale.all.sl_SI.ISO8859-2=ISO-8859-2
locale.all.sq_AL.ISO8859-2=ISO-8859-2
# AIX
locale.all.sh_SP=ISO-8859-2
locale.all.sk=ISO-8859-2
locale.all.sk_SK=ISO-8859-2
locale.all.sk_SK.88592=ISO-8859-2
locale.all.sk_SK.ISO8859-2=ISO-8859-2
locale.all.slovene=ISO-8859-2
locale.all.spanish.iso88591=ISO-8859-1
# AIX
locale.all.sq_AL=ISO-8859-1
# Solaris
locale.all.sr_YU.ISO8859-5=ISO-8859-5
# AIX
locale.all.sr_SP=ISO-8859-5
locale.all.sv=ISO-8859-1
# Solaris
locale.all.sv.ISO8859-15=ISO-8859-15
# Solaris
locale.all.sv.ISO8859-15@euro=ISO-8859-15
# Solaris
locale.all.sv.UTF-8=UTF-8
# Solaris
locale.all.sv.UTF-8@euro=UTF-8
locale.all.sv_SE=ISO-8859-1
locale.all.sv_SE.88591=ISO-8859-1
locale.all.sv_SE.ISO8859-15=ISO-8859-15
locale.all.sv_SE.ISO8859-15@euro=ISO-8859-15
# HP
locale.all.sv_SE.iso885915=ISO-8859-15
# HP
locale.all.sv_SE.iso885915@euro=ISO-8859-15
locale.all.sv_SE.ISO8859-1=ISO-8859-1
locale.all.Sv_SE=IBM-850
# AIX
locale.all.swedish.iso88591=ISO-8859-1
# Solaris
locale.all.tr_TR.ISO8859-9=ISO-8859-9
# AIX
locale.all.tr_TR=ISO-8859-9
# Solaris
locale.all.th_TH=TIS-620
locale.all.th_TH.TIS620=TIS-620
locale.all.th=TIS-620
locale.all.th_TH.UTF-8=UTF-8
locale.all.tchinese=x-euc-tw
locale.all.zh=GB2312
locale.all.zh_CN=GB2312
locale.all.zh_CN.EUC=GB2312
locale.all.zh.GBK=x-gbk
locale.all.zh_CN.UTF-8=UTF-8
locale.all.zh.UTF-8=UTF-8
locale.all.zh_TW.EUC=x-euc-tw
locale.all.zh_TW.BIG5=Big5
locale.all.zh_HK.HKSCS=x-hkscs
# saw the following name from news://xcin.linux.org.tw/tlug.cle-devel
locale.all.zh_CN.GB2312=GB2312
# AIX
locale.all.ZH_CN=UTF-8
locale.all.zh_CN.ugb=GB2312
locale.all.zh_CN.GBK=x-gbk
locale.all.zh_HK.big5=Big5
locale.all.zh_HK.eucTW=x-euc-tw
locale.all.zh_TW=x-euc-tw
locale.all.zh_TW.IBM-eucTW=x-euc-tw
locale.all.zh_TW.eucTW=x-euc-tw
locale.all.zh_TW.eucTW@chuyin=x-euc-tw
locale.all.zh_TW.eucTW@radical=x-euc-tw
locale.all.zh_TW.eucTW@stroke=x-euc-tw
locale.all.zh_TW.big5=Big5
locale.all.zh_TW.big5@chuyin=Big5
locale.all.zh_TW.big5@radical=Big5
locale.all.zh_TW.big5@stroke=Big5
locale.all.zh_TW.ucns=x-euc-tw
# AIX
locale.all.Zh_TW.big5=Big5
# CLE 0.8
locale.all.zh_TW.Big5=Big5
# SunOS 5.7 according to pofeng@linux.org.tw
locale.all.zh_TW.BIG5=Big5