diff options
author | tkikuchi <> | 2006-10-12 00:48:48 +0000 |
---|---|---|
committer | tkikuchi <> | 2006-10-12 00:48:48 +0000 |
commit | d9e93cef4ce6096698800d61768cf490b4833293 (patch) | |
tree | 253b2487ce24a1736b292070c848456d77ad9ec6 | |
parent | 08fc6675c6b8d6358fcaf63dfa457bb0dcddf9ee (diff) | |
download | mailman2-d9e93cef4ce6096698800d61768cf490b4833293.tar.gz mailman2-d9e93cef4ce6096698800d61768cf490b4833293.tar.xz mailman2-d9e93cef4ce6096698800d61768cf490b4833293.zip |
With python2.5, importing JapaneseCodecs triggers LookupError because
'iso2022_jp' does not exist in japanese (but 'iso_2022_jp').
We try to test Japanese (and Korean) codecs before changing path order
and do not import japanese/korean if the codecs already exist in python
distribution. (as in 2.4 and 2.5) Importing japanese/korean is going away
in mailman-2.2.
-rw-r--r-- | misc/paths.py.in | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/misc/paths.py.in b/misc/paths.py.in index c58492f5..3566a12c 100644 --- a/misc/paths.py.in +++ b/misc/paths.py.in @@ -35,6 +35,19 @@ exec_prefix = '@exec_prefix@' if exec_prefix == '${prefix}': exec_prefix = prefix +# Check if ja/ko codecs are available before changing path. +try: + s = unicode('OK', 'iso-2022-jp') + jaok = True +except LookupError: + jaok = False + +try: + s = unicode('OK', 'euc-kr') + kook = True +except LookupError: + kook = False + # Hack the path to include the parent directory of the $prefix/Mailman package # directory. sys.path.insert(0, prefix) @@ -53,12 +66,14 @@ sys.path.append(sitedir) # In a normal interactive Python environment, the japanese.pth and korean.pth # files would be imported automatically. But because we inhibit the importing # of the site module, we need to be explicit about importing these codecs. -import japanese +if not jaok: + import japanese # As of KoreanCodecs 2.0.5, you had to do the second import to get the Korean # codecs installed, however leave the first import in there in case an upgrade # changes this. -import korean -import korean.aliases +if not kook: + import korean + import korean.aliases # Arabic and Hebrew (RFC-1556) encoding aliases. (temporary solution) import encodings.aliases encodings.aliases.aliases.update({ |