Mercurial > hg > config
comparison python/tree.py @ 381:397d0ac832b6
blow this popsicle stand
| author | Jeff Hammel <jhammel@mozilla.com> |
|---|---|
| date | Fri, 26 Jul 2013 03:33:17 -0700 |
| parents | b1c43c980b05 |
| children | 5ae5ada91ac8 |
comparison
equal
deleted
inserted
replaced
| 380:5b94b85763a0 | 381:397d0ac832b6 |
|---|---|
| 22 return level | 22 return level |
| 23 | 23 |
| 24 def tree(directory): | 24 def tree(directory): |
| 25 retval = [] | 25 retval = [] |
| 26 level = depth(directory) | 26 level = depth(directory) |
| 27 pre = [] | |
| 27 directories = {} | 28 directories = {} |
| 28 lvlndctr = [] | 29 lvlndctr = [] |
| 29 last = {} | 30 last = {} |
| 30 passed_last = {} | 31 passed_last = {} |
| 31 columns = [] | 32 columns = [] |
| 32 lastdepth = depth | 33 lastdepth = depth |
| 34 indent = 0 | |
| 33 for dirpath, dirnames, filenames in os.walk(directory, topdown=True): | 35 for dirpath, dirnames, filenames in os.walk(directory, topdown=True): |
| 34 basename = os.path.basename(dirpath) | 36 basename = os.path.basename(dirpath) |
| 35 parent = os.path.abspath(os.path.dirname(dirpath)) | 37 parent = os.path.abspath(os.path.dirname(dirpath)) |
| 36 indent = depth(dirpath) - level | 38 indent = depth(dirpath) - level |
| 39 import pdb; pdb.set_trace() | |
| 37 dirnames[:] = sorted(dirnames, key=lambda x: x.lower()) | 40 dirnames[:] = sorted(dirnames, key=lambda x: x.lower()) |
| 38 last[os.path.abspath(dirpath)] = dirnames and dirnames[-1] or None | 41 last[os.path.abspath(dirpath)] = dirnames and dirnames[-1] or None |
| 39 directories[dirpath] = dirnames | 42 directories[dirpath] = dirnames |
| 40 | 43 |
| 41 retval.append('%s%s%s' % ('│' * (indent-1), | 44 retval.append('%s%s%s %s' % ('│' * (indent-1), |
| 42 ('├' if basename == basename else '└') if indent else '', | 45 ('├' if basename == basename else '└') if indent else '', |
| 43 basename)) | 46 basename)) |
| 44 filenames = sorted(filenames, key=lambda x: x.lower()) | 47 filenames = sorted(filenames, key=lambda x: x.lower()) |
| 45 retval.extend(['%s%s%s' % ('│' * (indent), | 48 retval.extend(['%s%s%s' % ('│' * (indent), |
| 46 '├' if (((index < len(filenames) -1)) or dirnames) else '└', | 49 '├' if (((index < len(filenames) -1)) or dirnames) else '└', |
| 47 name) | 50 name) |
| 48 for index, name in | 51 for index, name in |
