319 # super crude initial version |
319 # super crude initial version |
320 for idx, isentry, ctx in entries[::-1]: |
320 for idx, isentry, ctx in entries[::-1]: |
321 |
321 |
322 symbol = None |
322 symbol = None |
323 states = [] |
323 states = [] |
324 msg = '' |
|
325 iscurrentrevision = repo.revs('%d and parents()', ctx.rev()) |
324 iscurrentrevision = repo.revs('%d and parents()', ctx.rev()) |
326 if opts.get('children'): |
325 if opts.get('children'): |
327 expr = 'children(%d) and merge() - %ld' |
326 expr = 'children(%d) and merge() - %ld' |
328 revisions = repo.revs(expr, ctx.rev(), st.revs[1:]) |
327 revisions = repo.revs(expr, ctx.rev(), st.revs[1:]) |
329 if len(revisions) > 0: |
328 if len(revisions) > 0: |
330 msg = 'external-children' |
329 states.append('external-children') |
331 |
330 |
332 if iscurrentrevision: |
331 if iscurrentrevision: |
333 symbol = '@' |
332 symbol = '@' |
334 if msg: |
333 states.append('current') |
335 states.append('current - ' + msg) |
|
336 else: |
|
337 states.append('current') |
|
338 |
334 |
339 if ctx.orphan(): |
335 if ctx.orphan(): |
340 symbol = '$' |
336 symbol = '$' |
341 if msg: |
337 states.append('orphan') |
342 states.append('orphan - ' + msg) |
|
343 else: |
|
344 states.append('orphan') |
|
345 |
338 |
346 if not isentry: |
339 if not isentry: |
347 symbol = '^' |
340 symbol = '^' |
348 # "base" is kind of a "ghost" entry |
341 # "base" is kind of a "ghost" entry |
349 states.append('base') |
342 states.append('base') |
350 |
343 |
351 # none of the above if statments get executed |
344 # none of the above if statments get executed |
352 if not symbol: |
345 if not symbol: |
353 symbol = ':' |
346 symbol = ':' |
354 if msg: |
347 |
355 states.append(msg) |
348 if not states: |
356 else: |
349 states.append('clean') |
357 states.append('clean') |
|
358 |
350 |
359 states.sort() |
351 states.sort() |
360 |
352 |
361 fm.startitem() |
353 fm.startitem() |
362 fm.data(isentry=isentry) |
354 fm.data(isentry=isentry) |