~ubuntu-branches/ubuntu/trusty/python3.4/trusty-proposed

« back to all changes in this revision

Viewing changes to Tools/unicode/listcodecs.py

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2013-11-25 09:44:27 UTC
  • Revision ID: package-import@ubuntu.com-20131125094427-lzxj8ap5w01lmo7f
Tags: upstream-3.4~b1
ImportĀ upstreamĀ versionĀ 3.4~b1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
""" List all available codec modules.
 
2
 
 
3
(c) Copyright 2005, Marc-Andre Lemburg (mal@lemburg.com).
 
4
 
 
5
    Licensed to PSF under a Contributor Agreement.
 
6
 
 
7
"""
 
8
 
 
9
import os, codecs, encodings
 
10
 
 
11
_debug = 0
 
12
 
 
13
def listcodecs(dir):
 
14
    names = []
 
15
    for filename in os.listdir(dir):
 
16
        if filename[-3:] != '.py':
 
17
            continue
 
18
        name = filename[:-3]
 
19
        # Check whether we've found a true codec
 
20
        try:
 
21
            codecs.lookup(name)
 
22
        except LookupError:
 
23
            # Codec not found
 
24
            continue
 
25
        except Exception as reason:
 
26
            # Probably an error from importing the codec; still it's
 
27
            # a valid code name
 
28
            if _debug:
 
29
                print('* problem importing codec %r: %s' % \
 
30
                      (name, reason))
 
31
        names.append(name)
 
32
    return names
 
33
 
 
34
 
 
35
if __name__ == '__main__':
 
36
    names = listcodecs(encodings.__path__[0])
 
37
    names.sort()
 
38
    print('all_codecs = [')
 
39
    for name in names:
 
40
        print('    %r,' % name)
 
41
    print(']')