@@ -1456,7 +1456,7 @@ def find_frontier_blocks(block):
14561456 )
14571457
14581458
1459- def write_diagram_with_axes (f , diagram ):
1459+ def write_diagram_with_axes (f , diagram , tip1 , tip2 ):
14601460 """Write a diagram of one-space-wide characters to file-like object f.
14611461
14621462 Include integers along the top and left sides showing the indexes
@@ -1506,7 +1506,15 @@ def write_diagram_with_axes(f, diagram):
15061506
15071507 for i1 in range (len1 ):
15081508 f .write (diagram [i1 ][i2 ])
1509- f .write ('\n ' )
1509+
1510+ if tip1 and i2 == 0 :
1511+ f .write (' - %s\n ' % (tip1 ,))
1512+ else :
1513+ f .write ('\n ' )
1514+
1515+ if tip2 :
1516+ f .write (' |\n ' )
1517+ f .write (' %s\n ' % (tip2 ,))
15101518
15111519
15121520class MergeFrontier (object ):
@@ -1749,10 +1757,10 @@ def format_diagram(self, formatter=None, diagram=None):
17491757 [formatter (diagram [i1 ][i2 ]) for i2 in range (self .block .len2 )]
17501758 for i1 in range (self .block .len1 )]
17511759
1752- def write (self , f ):
1760+ def write (self , f , tip1 = None , tip2 = None ):
17531761 """Write this frontier to file-like object f."""
17541762
1755- write_diagram_with_axes (f , self .format_diagram ())
1763+ write_diagram_with_axes (f , self .format_diagram (), tip1 , tip2 )
17561764
17571765 def write_html (self , f , name , cssfile = 'imerge.css' , abbrev_sha1 = 7 ):
17581766 class_map = {
@@ -2329,8 +2337,8 @@ def format_diagram(self, legend=None, diagram=None):
23292337 [legend [diagram [i1 ][i2 ]] for i2 in range (self .len2 )]
23302338 for i1 in range (self .len1 )]
23312339
2332- def write (self , f ):
2333- write_diagram_with_axes (f , self .format_diagram ())
2340+ def write (self , f , tip1 = '' , tip2 = '' ):
2341+ write_diagram_with_axes (f , self .format_diagram (), tip1 , tip2 )
23342342
23352343 def writeppm (self , f ):
23362344 legend = ['127 127 0' , '0 255 0' , '0 127 0' , '255 0 0' , '127 0 0' ]
@@ -3753,11 +3761,11 @@ def cmd_diagram(parser, options):
37533761
37543762 merge_state = read_merge_state (git , options .name )
37553763 if options .commits :
3756- merge_state .write (sys .stdout )
3764+ merge_state .write (sys .stdout , merge_state . tip1 , merge_state . tip2 )
37573765 sys .stdout .write ('\n ' )
37583766 if options .frontier :
37593767 merge_frontier = MergeFrontier .map_known_frontier (merge_state )
3760- merge_frontier .write (sys .stdout )
3768+ merge_frontier .write (sys .stdout , merge_state . tip1 , merge_state . tip2 )
37613769 sys .stdout .write ('\n ' )
37623770 if options .html :
37633771 merge_frontier = MergeFrontier .map_known_frontier (merge_state )
0 commit comments