Changeset 4407:b4dbab1a13e5 in livinglogic.python.xist

Show
Ignore:
Timestamp:
03/04/11 18:19:34 (9 years ago)
Author:
Walter Doerwald <walter@…>
Branch:
default
Message:

Support more than 1 char for -P and -S.

Rename long options to --padding and --separator.

Files:
2 modified

Legend:

Unmodified
Added
Removed
  • NEWS.rst

    r4404 r4407  
    1717    dot files (i.e. files whose name starts with a dot) 
    1818 
    19 *   ``ucp`` now supports to new options :option:`--padchar` and 
    20     :option:`--sepchar` which are used for column output. 
     19*   ``ucp`` now supports to new options :option:`--padding` and 
     20    :option:`--separator` which are used for column output. 
    2121 
    2222*   The unused :option:`--verbose` was removed from the script ``ucat``. 
  • src/ll/scripts/uls.py

    r4406 r4407  
    4848        when neither ``--long`` nor ``--one`` is specified). 
    4949 
    50     ``-P``, ``--padchar`` : character 
    51         The character using for padding output in multicolumn or long format. 
    52  
    53     ``-S``, ``--sepchar`` : character 
     50    ``-P``, ``--padding`` : characters 
     51        The characters using for padding output in multicolumn or long format. 
     52 
     53    ``-S``, ``--separator`` : characters 
    5454        The characters used for separating columns in long format. 
    5555 
     
    111111            s = str(s) 
    112112        if len(meas) < l: 
    113             return astyle.style_default(s, style_pad(args.padchar*(l-len(meas)))) 
     113            size = l-len(meas) 
     114            psize = len(args.padding) 
     115            repeats = (size+psize-1)//psize 
     116            padding = (args.padding*repeats)[-size:] 
     117            return astyle.style_default(s, style_pad(padding)) 
    114118        return s 
    115119 
     
    119123            s = str(s) 
    120124        if len(meas) < l: 
    121             return astyle.style_default(style_pad(args.padchar*(l-len(meas))), s) 
     125            size = l-len(meas) 
     126            psize = len(args.padding) 
     127            repeats = (size+psize-1)//psize 
     128            padding = (args.padding*repeats)[:size] 
     129            return astyle.style_default(style_pad(padding), s) 
    122130        return s 
    123131 
     
    152160    def printone(url): 
    153161        if args.long: 
    154             sep = style_pad(args.sepchar) 
     162            sep = style_pad(args.separator) 
    155163            stat = url.stat() 
    156164            owner = url.owner() 
     
    230238    p.add_argument("-r", "--recursive", dest="recursive", help="Recursive listing? (default: %(default)s)", action=misc.FlagAction, default=False) 
    231239    p.add_argument("-w", "--spacing", dest="spacing", metavar="N", help="Number of spaces between columns (default: %(default)s)", type=int, default=3) 
    232     p.add_argument("-P", "--padchar", dest="padchar", metavar="CHAR", help="Character used for padding columns (default: %(default)s)", default=" ") 
    233     p.add_argument("-S", "--sepchar", dest="sepchar", metavar="CHARS", help="Characters used for separating columns in long format (default: %(default)s)", default="  ") 
     240    p.add_argument("-P", "--padding", dest="padding", metavar="CHARS", help="Characters used for column padding (default: %(default)s)", default=" ") 
     241    p.add_argument("-S", "--separator", dest="separator", metavar="CHARS", help="Characters used for separating columns in long format (default: %(default)s)", default="  ") 
    234242    p.add_argument("-i", "--include", dest="include", metavar="PATTERN", help="Include only URLs matching PATTERN (default: %(default)s)", type=re.compile) 
    235243    p.add_argument("-e", "--exclude", dest="exclude", metavar="PATTERN", help="Exclude URLs matching PATTERN (default: %(default)s)", type=re.compile)