Mercurial > hg > config
annotate python/lsexts.py @ 928:84543f2cda0d
restore my real email that companies keep making me change
| author | Jeff Hammel <k0scist@gmail.com> | 
|---|---|
| date | Tue, 14 Oct 2025 14:20:55 -0700 | 
| parents | 5f186e65da09 | 
| children | 
| 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 | 
| 575 | 15 | 
| 175 
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 | 
| 575 | 18 for ext in sorted(find_extensions(*(sys.argv[1:] or [os.getcwd()]))): | 
| 175 
081614c468b8
add a file for listing extensions
 Jeff Hammel <jhammel@mozilla.com> parents: diff
changeset | 19 print ext | 
