<s> from __future__ import ( division , absolute_import , print_function ) <EOL> import argparse <EOL> import sys <EOL> from itertools import chain <EOL> from powerline . lib . overrides import parsedotval , parse_override_var <EOL> from powerline . lib . dict import mergeargs <EOL> from powerline . lib . encoding import get_preferred_arguments_encoding <EOL> from powerline . lib . unicode import u , unicode <EOL> if sys . version_info < ( <NUM_LIT:3> , ) : <EOL> encoding = get_preferred_arguments_encoding ( ) <EOL> def arg_to_unicode ( s ) : <EOL> return unicode ( s , encoding , '<STR_LIT:replace>' ) if not isinstance ( s , unicode ) else s <EOL> else : <EOL> def arg_to_unicode ( s ) : <EOL> return s <EOL> def finish_args ( environ , args ) : <EOL> '''<STR_LIT>''' <EOL> args . config_override = mergeargs ( chain ( <EOL> parse_override_var ( environ . get ( '<STR_LIT>' , '<STR_LIT>' ) ) , <EOL> ( parsedotval ( v ) for v in args . config_override or ( ) ) , <EOL> ) ) <EOL> args . theme_override = mergeargs ( chain ( <EOL> parse_override_var ( environ . get ( '<STR_LIT>' , '<STR_LIT>' ) ) , <EOL> ( parsedotval ( v ) for v in args . theme_override or ( ) ) , <EOL> ) ) <EOL> if args . renderer_arg : <EOL> args . renderer_arg = mergeargs ( ( parsedotval ( v ) for v in args . renderer_arg ) , remove = True ) <EOL> if '<STR_LIT>' in args . renderer_arg : <EOL> if isinstance ( args . renderer_arg [ '<STR_LIT>' ] , ( bytes , unicode ) ) : <EOL> try : <EOL> args . renderer_arg [ '<STR_LIT>' ] = int ( args . renderer_arg [ '<STR_LIT>' ] . lstrip ( '<STR_LIT>' ) ) <EOL> except ValueError : <EOL> pass <EOL> if '<STR_LIT>' not in args . renderer_arg : <EOL> args . renderer_arg [ '<STR_LIT>' ] = args . renderer_arg [ '<STR_LIT>' ] <EOL> args . config_path = ( <EOL> [ path for path in environ . get ( '<STR_LIT>' , '<STR_LIT>' ) . split ( '<STR_LIT::>' ) if path ] <EOL> + ( args . config_path or [ ] ) <EOL> ) <EOL> args . side = args . side [ <NUM_LIT:0> ] <EOL> return args <EOL> def int_or_sig ( s ) : <EOL> if s . startswith ( '<STR_LIT>' ) : <EOL> return u ( s ) <EOL> else : <EOL> return int ( s ) <EOL> def get_argparser ( ArgumentParser = argparse . ArgumentParser ) : <EOL> parser = ArgumentParser ( description = '<STR_LIT>' ) <EOL> parser . add_argument ( <EOL> '<STR_LIT>' , nargs = <NUM_LIT:1> , <EOL> help = '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> ) <EOL> parser . add_argument ( <EOL> '<STR_LIT>' , nargs = <NUM_LIT:1> , choices = ( '<STR_LIT:left>' , '<STR_LIT:right>' , '<STR_LIT>' , '<STR_LIT>' ) , <EOL> help = '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> ) <EOL> parser . add_argument ( <EOL> '<STR_LIT>' , '<STR_LIT>' , metavar = '<STR_LIT>' , type = str , <EOL> help = '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> ) <EOL> parser . add_argument ( <EOL> '<STR_LIT>' , '<STR_LIT>' , type = int , <EOL> help = '<STR_LIT>' <EOL> ) <EOL> parser . add_argument ( <EOL> '<STR_LIT>' , metavar = '<STR_LIT>' , type = int_or_sig , <EOL> help = '<STR_LIT>' <EOL> ) <EOL> parser . add_argument ( <EOL> '<STR_LIT>' , metavar = '<STR_LIT>' , default = '<STR_LIT>' , <EOL> type = lambda s : [ int_or_sig ( status ) for status in s . split ( ) ] , <EOL> help = '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> ) <EOL> parser . add_argument ( <EOL> '<STR_LIT>' , metavar = '<STR_LIT>' , type = int , <EOL> help = '<STR_LIT>' <EOL> ) <EOL> parser . add_argument ( <EOL> '<STR_LIT:-c>' , '<STR_LIT>' , metavar = '<STR_LIT>' , type = arg_to_unicode , <EOL> action = '<STR_LIT>' , <EOL> help = '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> ) <EOL> parser . add_argument ( <EOL> '<STR_LIT>' , '<STR_LIT>' , metavar = '<STR_LIT>' , type = arg_to_unicode , <EOL> action = '<STR_LIT>' , <EOL> help = '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> ) <EOL> parser . add_argument ( <EOL> '<STR_LIT>' , '<STR_LIT>' , <EOL> metavar = '<STR_LIT>' , type = arg_to_unicode , action = '<STR_LIT>' , <EOL> help = '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> ) <EOL> parser . add_argument ( <EOL> '<STR_LIT>' , '<STR_LIT>' , action = '<STR_LIT>' , metavar = '<STR_LIT>' , <EOL> help = '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> ) <EOL> parser . add_argument ( <EOL> '<STR_LIT>' , metavar = '<STR_LIT>' , type = str , <EOL> help = '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> '<STR_LIT>' <EOL> ) <EOL> return parser <EOL> def write_output ( args , powerline , segment_info , write ) : <EOL> if args . renderer_arg : <EOL> segment_info . update ( args . renderer_arg ) <EOL> if args . side . startswith ( '<STR_LIT>' ) : <EOL> for line in powerline . render_above_lines ( <EOL> width = args . width , <EOL> segment_info = segment_info , <EOL> mode = segment_info . get ( '<STR_LIT>' , None ) , <EOL> ) : <EOL> if line : <EOL> write ( line + '<STR_LIT:\n>' ) <EOL> args . side = args . side [ len ( '<STR_LIT>' ) : ] <EOL> if args . side : <EOL> rendered = powerline . render ( <EOL> width = args . width , <EOL> side = args . side , <EOL> segment_info = segment_info , <EOL> mode = segment_info . get ( '<STR_LIT>' , None ) , <EOL> ) <EOL> write ( rendered ) </s>
