Mercurial > hg > config
annotate python/lsexts.py @ 437:2588ca4ae849
python/hgrc.py
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Thu, 08 Aug 2013 11:01:21 -0700 |
parents | 081614c468b8 |
children | 5f186e65da09 |
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 |