Mercurial > hg > decoupage
annotate decoupage/formatters.py @ 22:a8d36caa8f09
add formatter
author | egj@socialplanning.org |
---|---|
date | Mon, 04 Jan 2010 03:28:41 +0000 |
parents | eab191e0b9b3 |
children | d1b1019d9254 |
rev | line source |
---|---|
9
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
1 #!/usr/bin/env python |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
2 |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
3 import sys |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
4 from fnmatch import fnmatch |
9
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
5 from pkg_resources import iter_entry_points |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
6 |
1
93ab6d1968bd
adding comments about what this file contains
jhammel@jhammel-laptop
parents:
0
diff
changeset
|
7 ### abstract base classes for formatters |
93ab6d1968bd
adding comments about what this file contains
jhammel@jhammel-laptop
parents:
0
diff
changeset
|
8 |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
9 class FormatterBase(object): |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
10 """ |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
11 abstract base class if you want to use __init__ methods |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
12 in the form of |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
13 'arg1, arg2, arg3, kw1=foo, kw2=bar, kw3=baz |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
14 """ |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
15 |
10 | 16 defaults = {} # default values for attrs to be set on the instance |
17 | |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
18 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
19 def __init__(self, string): |
10 | 20 args = [ i.strip() for i in string.split(',')] |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
21 for index, arg in enumerate(args): |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
22 if '=' in arg: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
23 break |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
24 else: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
25 self.args = args |
10 | 26 for key, default in self.defaults.items(): |
27 setattr(self, key, default) | |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
28 return |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
29 self.args = args[:index] |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
30 self.kw = dict([i.split('=', 1) for i in args[index:]]) |
10 | 31 for key, default in self.defaults.items(): |
32 value = self.kw.pop(key, default) | |
33 setattr(self, key, value) | |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
34 |
1
93ab6d1968bd
adding comments about what this file contains
jhammel@jhammel-laptop
parents:
0
diff
changeset
|
35 |
93ab6d1968bd
adding comments about what this file contains
jhammel@jhammel-laptop
parents:
0
diff
changeset
|
36 ### formatters |
93ab6d1968bd
adding comments about what this file contains
jhammel@jhammel-laptop
parents:
0
diff
changeset
|
37 |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
38 class Ignore(object): |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
39 """ignore files of a certain pattern""" |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
40 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
41 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
42 def __init__(self, ignore): |
12
9f91acf9874c
* split on space in formatters to be consist with everything else
k0s <k0scist@gmail.com>
parents:
10
diff
changeset
|
43 self.match = ignore.split() |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
44 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
45 def __call__(self, request, data): |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
46 _files = [] |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
47 for f in data['files']: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
48 for pattern in self.match: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
49 if fnmatch(f['name'], pattern): |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
50 break |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
51 else: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
52 _files.append(f) |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
53 data['files'] = _files |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
54 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
55 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
56 class All(object): |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
57 """ |
9
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
58 only pass files of a certain pattern; |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
59 the inverse of ignore |
12
9f91acf9874c
* split on space in formatters to be consist with everything else
k0s <k0scist@gmail.com>
parents:
10
diff
changeset
|
60 calling all with no arguments means only files with descriptions are used |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
61 """ |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
62 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
63 def __init__(self, pattern): |
12
9f91acf9874c
* split on space in formatters to be consist with everything else
k0s <k0scist@gmail.com>
parents:
10
diff
changeset
|
64 self.match = pattern.split() |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
65 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
66 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
67 def __call__(self, request, data): |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
68 _files = [] |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
69 for f in data['files']: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
70 if self.match: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
71 for pattern in self.match: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
72 if fnmatch(f['name'], pattern): |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
73 _files.append(f) |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
74 break |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
75 else: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
76 # use only files where the description is not None |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
77 if f['description'] is not None: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
78 _files.append(f) |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
79 data['files'] = _files |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
80 |
22 | 81 class Sort(object): |
82 """ determines how to sort the files in a directory """ | |
83 def __init__(self, pattern): | |
84 self.args = [i.strip() for i in pattern.split(',')] | |
85 | |
86 def __call__(self, request, data): | |
87 | |
88 data['files'] = sorted(data['files'], key=lambda x: x['name'].lower()) | |
89 | |
90 if 'reverse' in self.args: | |
91 data['files'] = reverse(data['files']) | |
92 | |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
93 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
94 class FilenameDescription(FormatterBase): |
9
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
95 """substitute the description for the filename""" |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
96 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
97 def __call__(self, request, data): |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
98 for f in data['files']: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
99 if f['description'] is None: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
100 description = f['name'] |
17
eab191e0b9b3
meaningful descriptions from filenames
k0s <k0scist@gmail.com>
parents:
16
diff
changeset
|
101 description = description.rsplit('.', 1)[0] |
eab191e0b9b3
meaningful descriptions from filenames
k0s <k0scist@gmail.com>
parents:
16
diff
changeset
|
102 decription = description.strip('_') |
eab191e0b9b3
meaningful descriptions from filenames
k0s <k0scist@gmail.com>
parents:
16
diff
changeset
|
103 if '_' in description: |
eab191e0b9b3
meaningful descriptions from filenames
k0s <k0scist@gmail.com>
parents:
16
diff
changeset
|
104 description = ' '.join([i.title() for i in description.split('_')]) |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
105 f['description'] = description |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
106 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
107 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
108 class TitleDescription(FormatterBase): |
9
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
109 """splits a description into a title and a description with a separator""" |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
110 |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
111 |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
112 defaults = { 'separator': ':' } |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
113 |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
114 def __call__(self, request, data): |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
115 for f in data['files']: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
116 if f['description'] and self.separator in f['description']: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
117 title, description = f['description'].split(self.separator, 1) |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
118 f['title'] = title |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
119 f['description'] = description |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
120 else: |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
121 f['title'] = f['description'] |
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
122 f['description'] = None |
10 | 123 |
16
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
124 class CSS(object): |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
125 """specify CSS""" |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
126 |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
127 def __init__(self, arg): |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
128 self.css = arg.split() |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
129 def __call__(self, request, data): |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
130 data['stylesheets'] = self.css |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
131 |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
132 class Include(object): |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
133 """include a file at the top of the body""" |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
134 |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
135 def __init__(self, arg): |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
136 self.include = arg |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
137 def __call__(self, request, data): |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
138 data['include'] = self.include |
985b3a7e0e88
add formatters to include css and genshi templates
k0s <k0scist@gmail.com>
parents:
12
diff
changeset
|
139 |
0
fa2005f769eb
adding decoupage from http://my-svn.assembla.com/svn/arbez/decoupage r355
k0s <k0scist@gmail.com>
parents:
diff
changeset
|
140 |
9
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
141 def formatters(): |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
142 formatters = {} |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
143 for entry_point in iter_entry_points('decoupage.formatters'): |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
144 try: |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
145 formatter = entry_point.load() |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
146 except: |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
147 continue |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
148 formatters[entry_point.name] = formatter |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
149 return formatters |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
150 |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
151 def main(args=sys.argv[1:]): |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
152 for name, formatter in formatters().items(): |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
153 print '%s%s' % (name, formatter.__doc__ and ': ' + formatter.__doc__ or '') |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
154 |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
155 if __name__ == '__main__': |
ec2d0d850b83
add ability to print formatters with decoupage-formatters console_script
k0s <k0scist@gmail.com>
parents:
1
diff
changeset
|
156 main() |