MRe @ s d d l Z d d l Z d d l m Z d d l m Z d d l m Z d d l Td d l m Z m Z m Z d d Z Gd d d e Z d d Z d S) N)Command)convert_path)log)*)edit_configoption_baseconfig_filec C sJ x$ d D] } | | k r t | Sq W| j | g k rF t | S| S)z4Quote an argument for later parsing by shlex.split()"'\#)r r r r )reprsplit)argc r 3/tmp/pip-l4uy7dan-build/setuptools/command/alias.pyshquote s r c @ sf e Z d Z d Z d Z d Z d g e j Z e j d g Z d d Z d d Z d d Z d S)aliasz3Define a shortcut that invokes one or more commandsz0define a shortcut to invoke one or more commandsTremoverremove (unset) the aliasc C s# t j | d | _ d | _ d S)N)r initialize_optionsargsr )selfr r r r s zalias.initialize_optionsc C s> t j | | j r: t | j d k r: t d n d S)N zFMust specify exactly one argument (the alias name) when using --remove)r finalize_optionsr lenr DistutilsOptionError)r r r r r " s zalias.finalize_optionsc C s" | j j d } | j sZ t d t d x$ | D] } t d t | | q6 Wd St | j d k r | j \ } | j r d } q | | k r t d t | | d St d | d Sn2 | j d } d j t t | j d d } t | j i i | | 6d 6| j d S) NaliaseszCommand Aliasesz---------------zsetup.py aliasr z No alias definition found for %rr ) distributionget_option_dictr printformat_aliasr r joinmapr r filenamedry_run)r r r commandr r r run* s&