equal
deleted
inserted
replaced
249 return len(d) |
249 return len(d) |
250 |
250 |
251 def getcols(s, start, c): |
251 def getcols(s, start, c): |
252 '''Use colwidth to find a c-column substring of s starting at byte |
252 '''Use colwidth to find a c-column substring of s starting at byte |
253 index start''' |
253 index start''' |
254 for x in xrange(start + c, len(s)): |
254 for x in pycompat.xrange(start + c, len(s)): |
255 t = s[start:x] |
255 t = s[start:x] |
256 if colwidth(t) == c: |
256 if colwidth(t) == c: |
257 return t |
257 return t |
258 |
258 |
259 def trim(s, width, ellipsis='', leftside=False): |
259 def trim(s, width, ellipsis='', leftside=False): |
344 uslice = lambda i: u[i:] |
344 uslice = lambda i: u[i:] |
345 concat = lambda s: ellipsis + s |
345 concat = lambda s: ellipsis + s |
346 else: |
346 else: |
347 uslice = lambda i: u[:-i] |
347 uslice = lambda i: u[:-i] |
348 concat = lambda s: s + ellipsis |
348 concat = lambda s: s + ellipsis |
349 for i in xrange(1, len(u)): |
349 for i in pycompat.xrange(1, len(u)): |
350 usub = uslice(i) |
350 usub = uslice(i) |
351 if ucolwidth(usub) <= width: |
351 if ucolwidth(usub) <= width: |
352 return concat(usub.encode(_sysstr(encoding))) |
352 return concat(usub.encode(_sysstr(encoding))) |
353 return ellipsis # no enough room for multi-column characters |
353 return ellipsis # no enough room for multi-column characters |
354 |
354 |