Mercurial > hg > config
comparison python/tree2.py @ 384:5ae5ada91ac8
simple numbering
| author | Jeff Hammel <jhammel@mozilla.com> |
|---|---|
| date | Fri, 26 Jul 2013 09:45:46 -0700 |
| parents | 8d1ad56761b0 |
| children | 6ef0ea2f10e3 |
comparison
equal
deleted
inserted
replaced
| 383:8d1ad56761b0 | 384:5ae5ada91ac8 |
|---|---|
| 21 break | 21 break |
| 22 return level | 22 return level |
| 23 | 23 |
| 24 def tree(directory): | 24 def tree(directory): |
| 25 | 25 |
| 26 sort_key=lambda x: x.lower()) | 26 sort_key=lambda x: x.lower() |
| 27 retval = [directory] | 27 retval = [directory] |
| 28 top = depth(directory) | 28 top = depth(directory) |
| 29 indent = [] | 29 indent = [] |
| 30 last = {} | |
| 30 for dirpath, dirnames, filenames in os.walk(directory, topdown=True): | 31 for dirpath, dirnames, filenames in os.walk(directory, topdown=True): |
| 31 | 32 |
| 32 abspath = os.path.abspath(dirpath) | 33 abspath = os.path.abspath(dirpath) |
| 33 parent = os.path.dirname(abspath)) | 34 basename = os.path.basename(abspath) |
| 35 parent = os.path.dirname(abspath) | |
| 34 level = depth(abspath) - top | 36 level = depth(abspath) - top |
| 35 | 37 |
| 36 # sort articles of interest | 38 # sort articles of interest |
| 37 for resource in (dirnames, filenames): | 39 for resource in (dirnames, filenames): |
| 38 resource[:] = sorted(resource, key=sort_key) | 40 resource[:] = sorted(resource, key=sort_key) |
| 40 # set last for current dirpath | 42 # set last for current dirpath |
| 41 if dirnames: | 43 if dirnames: |
| 42 last[os.path.abspath(dirpath)] = dirnames[-1] | 44 last[os.path.abspath(dirpath)] = dirnames[-1] |
| 43 if last.get(parent) == os.path.basename(abspath): | 45 if last.get(parent) == os.path.basename(abspath): |
| 44 pass | 46 pass |
| 47 | |
| 48 retval.append('%s%s'% (str(level) * level, basename)) | |
| 49 level += 1 | |
| 50 retval.extend([('%s%s' % (str(level) * level, filename)) | |
| 51 for filename in filenames]) | |
| 45 | 52 |
| 46 # retval.append('%s%s%s %s' % ('│' * (indent-1), | 53 # retval.append('%s%s%s %s' % ('│' * (indent-1), |
| 47 # ('├' if basename == basename else '└') if indent else '', | 54 # ('├' if basename == basename else '└') if indent else '', |
| 48 # basename)) | 55 # basename)) |
| 49 # filenames = sorted(filenames, key=lambda x: x.lower()) | 56 # filenames = sorted(filenames, key=lambda x: x.lower()) |
