Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/commands.py @ 714:29fcd195e056
Some cleanups in commands.annotate().
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Some cleanups in commands.annotate().
manifest hash: 9581ad3bb9ebc418e4772158c505e34b92496e92
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
iD8DBQFC2K+nW7P1GVgWeRoRAr3VAKCGvKbhmG4yweZTgmxIgaZlmz16HQCdFupq
BKcWfEn17Y1l6IDbGS0rDyI=
=/fR/
-----END PGP SIGNATURE-----
author | Thomas Arendsen Hein <thomas@intevation.de> |
---|---|
date | Sat, 16 Jul 2005 07:56:39 +0100 |
parents | b4f0fad0ea64 |
children | 938dd667ca21 |
comparison
equal
deleted
inserted
replaced
713:7c385bd5f993 | 714:29fcd195e056 |
---|---|
309 else: | 309 else: |
310 (c, a, d, u) = repo.changes(None, None) | 310 (c, a, d, u) = repo.changes(None, None) |
311 repo.add(u) | 311 repo.add(u) |
312 repo.remove(d) | 312 repo.remove(d) |
313 | 313 |
314 def annotate(u, repo, file1, *files, **ops): | 314 def annotate(ui, repo, file1, *files, **opts): |
315 """show changeset information per file line""" | 315 """show changeset information per file line""" |
316 def getnode(rev): | 316 def getnode(rev): |
317 return hg.short(repo.changelog.node(rev)) | 317 return hg.short(repo.changelog.node(rev)) |
318 | 318 |
319 def getname(rev): | 319 def getname(rev): |
331 bcache[rev] = name | 331 bcache[rev] = name |
332 return name | 332 return name |
333 | 333 |
334 bcache = {} | 334 bcache = {} |
335 opmap = [['user', getname], ['number', str], ['changeset', getnode]] | 335 opmap = [['user', getname], ['number', str], ['changeset', getnode]] |
336 if not ops['user'] and not ops['changeset']: | 336 if not opts['user'] and not opts['changeset']: |
337 ops['number'] = 1 | 337 opts['number'] = 1 |
338 | 338 |
339 node = repo.dirstate.parents()[0] | 339 if opts['revision']: |
340 if ops['revision']: | 340 node = repo.changelog.lookup(opts['revision']) |
341 node = repo.changelog.lookup(ops['revision']) | 341 else: |
342 node = repo.dirstate.parents()[0] | |
342 change = repo.changelog.read(node) | 343 change = repo.changelog.read(node) |
343 mmap = repo.manifest.read(change[0]) | 344 mmap = repo.manifest.read(change[0]) |
344 for f in relpath(repo, (file1,) + files): | 345 for f in relpath(repo, (file1,) + files): |
345 lines = repo.file(f).annotate(mmap[f]) | 346 lines = repo.file(f).annotate(mmap[f]) |
346 pieces = [] | 347 pieces = [] |
347 | 348 |
348 for o, f in opmap: | 349 for o, f in opmap: |
349 if ops[o]: | 350 if opts[o]: |
350 l = [f(n) for n, dummy in lines] | 351 l = [f(n) for n, dummy in lines] |
351 m = max(map(len, l)) | 352 m = max(map(len, l)) |
352 pieces.append(["%*s" % (m, x) for x in l]) | 353 pieces.append(["%*s" % (m, x) for x in l]) |
353 | 354 |
354 for p, l in zip(zip(*pieces), lines): | 355 for p, l in zip(zip(*pieces), lines): |
355 u.write(" ".join(p) + ": " + l[1]) | 356 ui.write("%s: %s" % (" ".join(p), l[1])) |
356 | 357 |
357 def cat(ui, repo, file1, rev=None, **opts): | 358 def cat(ui, repo, file1, rev=None, **opts): |
358 """output the latest or given revision of a file""" | 359 """output the latest or given revision of a file""" |
359 r = repo.file(relpath(repo, [file1])[0]) | 360 r = repo.file(relpath(repo, [file1])[0]) |
360 if rev: | 361 if rev: |