U
    :g!                     @   s   d dl Z d dlZd dlZd dlZddlmZ dZe jdedZej	ddd	d
ddd ej	dddddd dddZ
dd ZedejejB ZedejejB Zdd Zdd ZdS )    N   )htmldiff zR%prog [OPTIONS] FILE1 FILE2
%prog --annotate [OPTIONS] INFO1 FILE1 INFO2 FILE2 ...)usagedescriptionz-oz--outputFILEoutput-zFile to write the difference to)metavardestdefaulthelpz-az--annotation
store_true
annotationzDo an annotation)actionr   r   c              	   C   s   | d krt jdd  } t| \}} |jr4t|| S t| dkrZtd t  t 	d | \}}t
|}t
|}t|d }t|\}}}	t||}
||
 |	 }
|jdkr|
ds|
d7 }
t j|
 n"t|jd}||
 W 5 Q R X d S )Nr      zError: you must give two filesr	   
wb)sysargvparser
parse_argsr   annotatelenprint
print_helpexit	read_file
split_bodyr   r   endswithstdoutwriteopen)argsoptionsfile1file2Zinput1Zinput2Zbody1preZbody2postresultf r+   :/tmp/pip-unpacked-wheel-m1sofc2u/lxml/html/_diffcommand.pymain   s,    




r-   c              	   C   sP   | dkrt j }n8tj| s.td|  nt| d}| }W 5 Q R X |S )Nr	   zInput file %s does not existrb)r   stdinreadospathexistsOSErrorr"   )filenamecr*   r+   r+   r,   r   7   s    r   z	<body.*?>z
</body.*?>c                 C   sn   d }}t | }|r6| d |  }| | d  } t| }|rd| | d  }| d |  } || |fS )Nr   )body_start_researchendbody_end_restart)htmlr'   r(   matchr+   r+   r,   r   G   s    

r   c                 C   s   t d td d S )NzNot yet implementedr   )r   r   r   )r$   r#   r+   r+   r,   r   S   s    r   )N)optparser   rer1   Zdiffr   r   OptionParserr   
add_optionr-   r   compileISr7   r:   r   r   r+   r+   r+   r,   <module>   sH     
 
 
