Mercurial > hg > mercurial-crew-with-dirclash
comparison mercurial/util.py @ 4237:da6b14877195
Merge some matcher fixes/cleanups and add some more hg locate tests
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Fri, 16 Mar 2007 22:58:49 -0300 |
parents | 0d51eb296fb9 34c4540c04c5 |
children | fe0fe0b4d73b |
comparison
equal
deleted
inserted
replaced
4232:0d51eb296fb9 | 4237:da6b14877195 |
---|---|
494 root.append(p) | 494 root.append(p) |
495 return '/'.join(root) or '.' | 495 return '/'.join(root) or '.' |
496 | 496 |
497 def normalizepats(names, default): | 497 def normalizepats(names, default): |
498 pats = [] | 498 pats = [] |
499 files = [] | |
500 roots = [] | 499 roots = [] |
501 anypats = False | 500 anypats = False |
502 for kind, name in [patkind(p, default) for p in names]: | 501 for kind, name in [patkind(p, default) for p in names]: |
503 if kind in ('glob', 'relpath'): | 502 if kind in ('glob', 'relpath'): |
504 name = canonpath(canonroot, cwd, name) | 503 name = canonpath(canonroot, cwd, name) |
505 elif kind in ('relglob', 'path'): | 504 elif kind in ('relglob', 'path'): |
506 name = normpath(name) | 505 name = normpath(name) |
506 | |
507 pats.append((kind, name)) | |
508 | |
507 if kind in ('glob', 're', 'relglob', 'relre'): | 509 if kind in ('glob', 're', 'relglob', 'relre'): |
508 pats.append((kind, name)) | |
509 anypats = True | 510 anypats = True |
511 | |
510 if kind == 'glob': | 512 if kind == 'glob': |
511 root = globprefix(name) | 513 root = globprefix(name) |
512 roots.append(root) | 514 roots.append(root) |
513 elif kind in ('relpath', 'path'): | 515 elif kind in ('relpath', 'path'): |
514 files.append((kind, name)) | 516 roots.append(name or '.') |
515 roots.append(name) | |
516 elif kind == 'relglob': | 517 elif kind == 'relglob': |
517 roots.append('.') | 518 roots.append('.') |
518 return roots, pats + files, anypats | 519 return roots, pats, anypats |
519 | 520 |
520 roots, pats, anypats = normalizepats(names, dflt_pat) | 521 roots, pats, anypats = normalizepats(names, dflt_pat) |
521 | 522 |
522 patmatch = matchfn(pats, '$') or always | 523 patmatch = matchfn(pats, '$') or always |
523 incmatch = always | 524 incmatch = always |