annotate python/lsexts.py @ 501:f9a4e1572b54

add http://pietrushnic.blogspot.com/2012/02/arbtt-as-productivity-improver-for.html#.Uh_LB5WZi1E
author Jeff Hammel <jhammel@mozilla.com>
date Thu, 29 Aug 2013 15:36:08 -0700
parents 081614c468b8
children 5f186e65da09
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
175
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
1 #!/usr/bin/env python
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
2
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
3 import os
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
4
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
5 def extensions(*filenames):
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
6 return set([os.path.splitext(f)[-1] for f in filenames
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
7 if '.' in f])
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
8
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
9 def find_extensions(*directories):
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
10 _extensions = set()
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
11 for directory in directories:
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
12 for _, _, fnames in os.walk(directory):
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
13 _extensions.update(extensions(*fnames))
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
14 return _extensions
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
15
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
16 if __name__ == '__main__':
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
17 import sys
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
18 for ext in sorted(find_extensions(*sys.argv[1:])):
081614c468b8 add a file for listing extensions
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
19 print ext