
    	^cג                     "   d dl Z d dlZd dlZddlmZmZ ddlmZ ddlm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZ ddlmZ ddlmZmZmZ dd	d
 ed           ed	           ed
          hZej         j!        ej         j"        ej         j#        ej         j$        ej         j%        ej         j&        ej         j'        ej         j(        ej         j)        ej         j*        ej         j+        ej         j,        ej         j-        gZ.ej         j!        dej         j"        dej         j#        dej         j'        dej         j$        dej         j%        dej         j(        dej         j&        dej         j)        dej         j*        dej         j+        dej         j,        dej         j-        diZ/dZ0dZ1dZ2dZ3dZ4dZ5e0e1e2e3e4e5gZ6e0de1de2d e3d!e4d"e5d#iZ7dd%Z8d& Z9d' Z:d( Z;dd)Z<d* Z=d+ Z>d, Z?dd-Z@ eAd.g ed/           e@d.d01          fd2g ed3           e@d2d01          fd4g ed5           e@d4d01          fd6g ed7           e@d6d01          fd8g ed9           e@d8d01          fd:g ed;           e@d:d01          fdg ed<           e@dd01          fd=g ed>           e@d=d01          fd?d@g edA           e@d?d01          fdBg edC           e@dBd01          fdDg edE           e@dDd01          fdFg edG           e@dFd01          fdHg edI           e@dHd01          fdJg edK           e@dJd01          fdLg edM           e@dLd01          fg          ZBdN ZC eAdOg edP           e@dO          e3fdQg edR           e@dQ          e1fddSg edT           e@d          e2fdUg edV           e@dU          e4fdWg edX           e@dW          e1fdYg edZ           e@dY          e2fd[g ed\           e@d[          e0fd]d^g ed_           e@d]          e2fg d` eda           e@db          e0fg dc edd           e@de          e2fdfdgg edh           e@df          e0fdig edj           e@di          e1fg dk edl           e@dm          e2fg dn edo           e@dp          e1fdqg edr           e@dq          e0fd?g eds          e9e2fdtdug edv           e@dt          e3fdwg edx           e@dw          e2fdyg edz           e@dy          e3fd{d|g ed}           e@d{          e0fd~g ed           e@d~          e3fdg ed           e@d          e3fdg ed           e@d          e4fd0g ed          eCe4fdg ed           e@d          e2fg          ZDd0eBiZEi ZFd ZGddZHddZI eIdOd ejJ                                eIdfdejK                    eIdmdejL                    eIdbdejK                    eIdpdejM                    eIdpdejN                    eIdpdejO                    eIdwdejP        d           d ZQddZRd ZS eGdeQ           	 	 	 	 ddZT	 ddZUdS )    N   )_gettext)getattr)cmdutilencodingerror
extensions	fancyopts	filemergefilesetminirstpycompat	registrarrevsettemplatefilterstemplatefuncs
templatekwuiutil)webcommands)compressionresourceutil
stringutils
   (ADVANCED)s   (DEPRECATED)s   (EXPERIMENTAL)s   Repository creations   Remote repository managements   Change creations   Change navigations   Change manipulations   Change organizations   Working directory managements   File content managements   Change import/exports   Repository maintenances   Helps   Miscellaneous commandss   Uncategorized commandss   idss   outputs   configs   conceptss   miscs   nones   Mercurial identifierss   Mercurial outputs   Mercurial configurations   Conceptss   Miscellaneouss   Uncategorized topicsFc                    g }|rht          |                                          D ]F\  }|s!t          fdt          D                       r(|                    dd|z  |fz             G|r|                    dd| z             |S )z-return a text listing of the given extensionsc              3       K   | ]}|v V  	d S N .0wdescs     0/usr/lib/python3/dist-packages/mercurial/help.py	<genexpr>zlistexts.<locals>.<genexpr>   s'      )K)K!t))K)K)K)K)K)K    s
   %s:%s: %s
    r   s   
%s

)sorteditemsany_exclkeywordsappendinsert)headerextsindentshowdeprecatedrstnamer"   s         @r#   listextsr3   }   s    
C E .. 	E 	EJD$! c)K)K)K)K])K)K)K&K&K JJ~d(CCDDDD
 ,

1kF*+++Jr%   c                     t          d          |                               d          }|                    t          t	          d          t          j                    d                     |                    t          t	          d          t          j                    | j                             d	                    |          }|S )N
   extensionsT   enabled extensions:r0   s   disabled extensions:r%   )
loaddoc
splitlinesextendr3   r   r
   enableddisabledverbosejoin)r   r1   docs      r#   extshelpr@      s    
 '-
 
 
$
$
/
/
5
5CJJ$%%z'9';';D	
 	
 	
  
 JJ%&&!!:	
 	
 	
   ((3--CJr%   c                     | dd         dk    rWd}|                      |          }|dk    r<| |t          |          z   d         }| d|         |                    dd          fS dS dS )zdgiven a text 'abc (DEFAULT: def.ghi)',
    returns (b'abc', (b'def', b'ghi')). Otherwise return NoneN   )s    (DEFAULT: r      .   )findlensplit)textmarkerpositems       r#   parsedefaultmarkerrM      s     BCCyDii!88c&kk)B./D:tzz$2222  8r%   c                    g }d}|D ]}t          |          dk    r	|\  }}}	}
n|\  }}}	t          d          }
|s!t          fdt          D                       rXd}|	@t	                    }|/|\  \  }}|                    ||          rd}	t          d          }d}|rd|z   }d	|z   }|	du rd
|z   }t          |	t          j                  r|		                                }	|	rNt          |	          s?t          j        |	          }|	du rt          d          }t          d          ||z   z  z  t          |	t                    r|d|
z  z  }d}n|	t          |	t                    s|d|
z  z  }|                    ||f           |r| t          d          z  } d| z  g}|                    t#          j        |d                     d                    |          S )NF   s   VALUEc              3       K   | ]}|v V  	d S r   r   r   s     r#   r$   zoptrst.<locals>.<genexpr>   s'      @@QqDy@@@@@@r%   r%   Ts    from config   -s   --s   --[no-]s   ons    (default: %s)s    %s [+]s    %ss    ([+] can be repeated)s   
%s:

r   )rG   r   r)   r*   rM   
configbool
isinstancer   	customoptgetdefaultvaluecallabler   bytestrlistboolr+   r:   r   	maketabler>   )r-   optionsr=   r   data
multioccuroptionshortoptlongoptdefaultoptlabeldefaultstrsuffixparseresultsectionr2   solo
defaultstrr1   r"   s                      @r#   optrstri      sO   DJ *$ *$v;;!9?6Hgwhh/5,Hgw{{H 	3@@@@-@@@@@ 	?,T22K&*5'==$// :"G'('9'9$ 	!BW_d??g%Bgy233 	0--//G 	K8G,, 	K
 ")'22J$uXX
A'((J9I,IJJDgt$$ 	$*x''BJJ!:gt+D+D!&8##BRTN#### /!-...& 
!CJJw q))***88C==r%   c                 n    |                      d|z             |r|                      d|z             d S d S )Ns"   

.. container:: omitted

    %s

s%   

.. container:: notomitted

    %s

)r+   )r1   omitted
notomitteds      r#   indicateomittedrm      sM    JJ:WDEEE P

AJNOOOOOP Pr%   c                 b   | j         s|                    d          r|dk    rdS | j        sN|ssdS t          |dd          rt          |dd          sdS r"t	          fdt
          D                       rdS |dk    rt          |dd          sdS |                     d	d
|z            rdS dS )N   debugTaliasFowndocc              3       K   | ]}|v V  	d S r   r   )r    r!   r?   s     r#   r$   zfiltercmd.<locals>.<genexpr>   s'      77AqCx777777r%   	   shortlist	helpbasic   helps   hidden-command.%s)	debugflag
startswithr=   r   r)   r*   rR   )r   cmdfunckwr?   s       `r#   	filtercmdr{      s    < CNN844 xt: 	 	# 	44%(( 	x1O1O 	4 	3777777777 	4	\'$U"C"Ct	}}W2S899 t5r%   c                 6    |                      dd|z  d          S )Nru   s   hidden-topic.%sF)rR   )r   topics     r#   filtertopicr~      s    =="4u"<eDDDr%   c           	         t          j                  fd}g g g g d}t          D ]}|dd         \  }}}t          t	          ||                    s. ||          s#t          |          rO | ||                     r;|d         }	t          | |	          s#|d                             |d         |f           |j        	                                D ]\  }
}t          |          dk    r	|d         }nd}|d         }t          t          j        |                    pd}|
v s ||          s ||          ra|rt          j        |          }t!          j        |
          d         }t%          | |||          r|d                             ||f           t'          j        t+          j        d	          	                                t+          j                    	                                          D ]|\  }	}|s	|	                    d
          d         }	 ||	          s ||          r/|d                             |	t          j        |          f           	 t+          j        | |	d          }n# t4          $ r Y w xY wt7          |di           	                                D ]\  }
}|
v s$t          |          dk    r ||d                   rt!          j        |
          d         }|d         }t          j        |          }|r"t          j        t9          |                    }nt          d          }t%          | |||          r|d                             ||f           Ȑ~|S )zReturn help topics matching kw.

    Returns {'section': [(name, summary), ...], ...} where section is
    one of topics, commands, extensions, or extensioncommands.
    c                 0    t          j        |           v S r   )r   lower)	containerrz   s    r#   lowercontainsz!topicmatch.<locals>.lowercontains  s    X^I....r%   )   topics   commandsr5      extensioncommandsr      r   rE   r%   r   FrD   rB   r5   cmdtable   (no help text available)r   )r   r   	helptablesummaprV   r~   r+   tabler(   rG   r   r   getdocr   	firstliner   parsealiasesr{   	itertoolschainr
   r;   r<   
rpartitionloadImportErrorr   r   )r   commandsrz   r   resultsr}   namesr-   r?   r2   rx   entrysummaryry   docscmdnamemodcmddocs     `               r#   
topicmatchr      s    
		B/ / / / /  	 G  
> 
>"1Q3Zvs M5))**	>}V$$	> 	> #0-B"8"8	>
 8Dr4(( >	"))58V*<===n**,, < <
Uu::??AhGGGQx&&''.399g..9--2E2E9 5$.t44*3//2GWdB55 K '''(:;;;o5!!''))##%%  H H
d  	t$$R(= 	N--"5"5 	NM"))41Ed1K1K*LMMM	/"dC00CC 	 	 	H	 "#z266<<>> 	H 	HJCSyySZZ!^^eAh0G0G^!.s33A6Qx!.. <'1'&//BBFF:;;FR$F;; ,-44gv5FGGG	H Ns   )J  
JJc                       fd}|S )z+Return a delayed loader for help/topic.txt.c                    d}r|dz   z  }t          j        |dz             5 }t          |                                          }d d d            n# 1 swxY w Y   t                              g           D ]} || |          }|S )Ns   mercurial.helptextrD   s   .txt)r   open_resourcer   read	helphooksget)r   packagefpr?   rewritersubdirr}   s        r#   loaderzloaddoc.<locals>.loaderL  s    ' 	%tf}$G'AA 	%R"''))$$C	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	% 	%!eR00 	+ 	+H(2uc**CC
s   "AAAr   )r}   r   r   s   `` r#   r8   r8   I  s)          Mr%   s	   bid-merges   Bid Merge Algorithms	   internals)r   s   bundle2s   Bundle2s   bundless   Bundless   cbors   CBORs   censors   Censors   changegroupss   Changegroupss   Config Registrars   dirstate-v2s   dirstate-v2 file formatr5   	   extensions   Extension APIs
   mergestates
   Mergestates   requirementss   Repository Requirementss   revlogss   Revision Logss   wireprotocols   Wire Protocols   wireprotocolrpcs   Wire Protocol RPCs   wireprotocolv2s   Wire Protocol Version 2c                     ddg}t           D ]&\  }}}|                    d|d         |fz             'd                    |          S )z-Generate the index for the "internals" topic.s>   To access a subtopic, use "hg help internals.{subtopic-name}"
   
	    :%s: %s
r   r%   )internalstabler+   r>   )r   linesr   r-   r?   s        r#   internalshelpr     s]     	KE - 9 9vs]eAh%77888888E??r%   s
   bundlespecs   Bundle File Formatss   colors   Colorizing Outputss   hgrcs   Configuration Filess
   deprecateds   Deprecated Featuress   datess   Date Formatss   flagss   Command-line flagss   patternss   File Name Patternss   environments   envs   Environment Variables)	   revisionss   revss   revsetss   revsets	   multirevss   mrevss   Specifying Revisionsr   )   rusts   rustexts   rhgs   Rust in Mercurialr   s   filesetss   filesets   Specifying File Setss   diffss   Diff Formats)   merge-toolss
   mergetoolss	   mergetools   Merge Toolsr   )s
   templating	   templatess   templates   styles   Template Usager   s   urlss	   URL Pathss   Using Additional Featuress   subreposs   subrepos   Subrepositoriess   hgwebs   Configuring hgwebs   glossarys   Glossarys   hgignores   ignores!   Syntax for Mercurial Ignore Filess   phasess   Working with Phasess	   evolutions'   Safely rewriting history (EXPERIMENTAL)s	   scriptings+   Using Mercurial from scripts and automations   Technical implementation topicss   pagers   Pager Supportc                 b    t                               | g                               |           d S r   )r   
setdefaultr+   )r}   r   s     r#   addtopichookr   Q  s,    ##**844444r%   c                 j   g }t          |          D ]u}t          j        ||                   pd                                r'| j        s!t          fdt          D                       r[t                    |r:t          j	        
                    d                                        d                                          }|d         g}	|dd         D ]}
|
                                                    d          r nU|r(|	                    |
                                           U|	                    d|
                                z              |                    d	                    |	                     wd
                    |          }|                    ||          S )zExtract docstring from the items key to function mapping, build a
    single documentation block and use it to overwrite the marker in doc.
    r%   c              3       K   | ]}|v V  	d S r   r   )r    r!   rI   s     r#   r$   zmakeitemsdoc.<locals>.<genexpr>\  s'      -O-OAa4i-O-O-O-O-O-Or%   latin1r   r   Ns   >>>s     r   s   

)r'   r   r   rstripr=   r)   r*   r   textwrapdedentdecodeencoder9   striprw   r+   r>   replace)r   r}   r?   rJ   r(   r   entriesr2   r   doclineslrI   s              @r#   makeitemsdocr   U  s    Gu - -d,,3;;== 	2: 	#-O-O-O-O-O-O-O*O*O 	t}} 	K?4;;x#8#899@@JJD!!!H:qrr 	3 	3Awwyy##F++  3

++++		 12222uzz(++,,,,ll7##G;;vw'''r%   c                 :    fd}t          | |           d S )Nc                 .    t          | ||          S )Nr   )r   )r   r}   r?   r   rJ   symbolss      r#   addzaddtopicsymbols.<locals>.addr  s    BsFGFKKKKr%   )r   )r}   rJ   r   r   r   s    ``` r#   addtopicsymbolsr   q  sG    L L L L L L L r%   s   .. bundlecompressionmarkers   .. predicatesmarkers   .. internaltoolsmarkers   .. keywordsmarkers   .. filtersmarkers   .. functionsmarkers   .. webcommandsmarkerTr   c                     d}t           j        fd}t          j        dt          j        |          z  ||          S )Ns   .. tweakdefaultsmarkerc                 p      fd                                 D             }d                    |          S )Nc                 @    g | ]}                     d           |z   S )r   )group)r    sms     r#   
<listcomp>z.inserttweakrc.<locals>.sub.<locals>.<listcomp>  s'    ;;;Aa;;;r%   r   )r9   r>   )r   r   repls   ` r#   subzinserttweakrc.<locals>.sub  s9    ;;;;):):;;;zz%   r%   s   ( *)%s)uimodtweakrcrer   escape)r   r}   r?   rJ   r   r   s        @r#   inserttweakrcr     sM    &F=D! ! ! ! ! 6*ry000#s;;;r%   c                 2   i }i }i }|                                 D ]\  }}t          j        |          }	|	d         }
|	||
<   |d         }|r ||
          s<t          j        |          }t          | |
|||          rdt          |          }|st          d          }t          j	        |          
                                ||
<   t          |dd           pt          j        j        }|                    |g                               |
           |||fS )Nr   r   helpcategory)r(   r   r   r   r   r{   r   r   r   r   r   r   r   commandCATEGORY_NONEr   r+   )r   r   r2   selectcatshsynscefsfry   r?   cats                 r#   _getcategorizedhelpcmdsr     s3   D
AD   + +1!!$$qEQt 	&&)) 	od##RD$,, 	cll 	1/00C#C((//11!dND11 
+ 	 	R  ''****D=r%   c                 8   i }i }|D ]}|dd         \  }}}t          |          dk    r|d         r	|d         }nt          }|d         }	t          |          ||	<   t          | |	          s+|                    |g                               |	|f           ||fS )Nr   r   )rG   TOPIC_CATEGORY_NONErX   r~   r   r+   )
r   
topictable	topiccatsr   r}   r   r-   r?   category	topicnames
             r#   _getcategorizedhelptopicsr     s    ID 
K 
K"1Q3Zvsu::>>eAh>QxHH*H!H	u++Y2y)) 	K  2..55y&6IJJJd?r%   c           	          t          j                  d fd	}d fd	d fd	}	d fd	}
d fd	g }                    d          }|syt          fdD                       r]t	           pd	          }g }                    d
          r|dt          d          fgz  }                    d          r|dt          d          fgz  }|sBdt          d          fdt          d          fdt          d          fdt          d          fg}|D ]u\  }}||         rh|                    d|z             |                    t          j	        t          ||                   d                     |                    d           v|s4t          d          }t          d          }t          j        ||          nrՉdk    rg }r|gz  }                    d
          r||
gz  }                    d          r||gz  }|s|	||
f}|D ]%}	  ||          } ns# t          j        $ r Y "w xY wrt          j                  |r|}n}|r|}n}t          d          |z  }t          d          |z  }t          j        ||          nE j        st          d          dg}|                     di t          j                             d	                    |          S )z
    Generate the help for 'name' as unformatted restructured text. If
    'name' is None, describe the commands available.
    Nc                 	   	 t          j        | j                  \  }}n5# t          j        $ r#}|j        fd} |          }|cY d }~S d }~ww xY wg }t          |d         dd           rr|                    |d         j        dz              |d         j	        r@	 |
                     |d         j                             n# t          j        $ r Y nw xY w|S t          |          dk    ra|d                             d          r|                    d|d         z             nE|                    d	|d         |d         fz             n|                    d
|d         z             rZj        sSt          |          dk    r@|                    t!          d          d                    |dd                    z             |                    d           t%          t'          j        |d                             }|st!          d          }t+          j        |d         d          rv|d         j        }|d         j                            d          r)t!          d          |d         j        dd          ||fz  }n t!          d          |d         j        ||fz  }|                    d          }j        ss|                    |d                    n|
                    |           |                    d           	 t5          j        |           }	t%          t'          j        |	                    pd}d|                                v r,t!          d          | | fz  }
|                    d|
z             n# t:          $ r Y nw xY wj        sE|d         r=|                    t=          t!          d          |d         j                             j        r<|                    t=          t!          d          j         j                             j        sQs&|                    t!          d          | z             n)j        s"|                    t!          d                     |S )N)strictc                 ^    t          j        |           d                                       S )Nr   )r   r   rw   )r   prefixs    r#   <lambda>z(help_.<locals>.helpcmd.<locals>.<lambda>  s%    w3A66q9DDVLL r%   r   badaliasr   rE   s   hgs   %s
s	   hg %s %s
s   hg %s
r   s   
aliases: %s
   , r   s
   definition   !s(   shell alias for: %s

%s

defined by: %s
s%   alias for: hg %s

%s

defined by: %s
Tr%   s7   (use 'hg help -e %s' to show help for the %s extension)   
%s
s   options   global optionss$   
(use 'hg %s -h' to show more help)
s;   
(some details hidden, use --verbose to show complete help))!r   findcmdr   r	   AmbiguousCommandr   r   r+   r   
unknowncmdr:   r   UnknownCommandrG   rw   quietr   r>   r   r   r   r   safehasattrsource
definitionr9   r
   rF   r   KeyErrorri   r=   
globalopts)r2   subtopicaliasesr   instr   r1   r?   r  r   msgr   r   full
helpextcmdhelplistr   r   s              @r#   helpcmdzhelp_.<locals>.helpcmd  s   
	$_hnZ  NGUU % 	 	 	 [FLLLLF(6""CJJJJJJ	  58Z.. 	JJuQx(50111Qx" JJzz%(*:;;<<<<+   DJ u::>>Qx""5)) C

7U1X-....

=GAJa+AABBBBJJzGAJ./// 	H 	HS\\A%5%5JJq+,,uzz'!""+/F/FFGGG

5 hoeAh//00 	1/00CE!Hm44 	1X_FQx"--d33 HII!H'+M  EFF!H'J 
 nnT""8 	4 	JJs1vJJsOOO

5
	/$''C(/#..//63C		##)  4L! 

9s?+++ 	 	 	D	 x 	HE!H 	HJJva
mmU1Xrz2FFGGG: 	JJ'(((*=rz2    z 		 

1FGG$NOOOOX 

2    
s?   $ AAAA#)C CCA9N 
NNc           	      	   t          j        |           \  }g s+j        s"                    t	          d                     S j        stdk    r#                    t	          d                     nKdk    r#                    t	          d                     n"                    t	          d                     fd}dv r |           nt          |                                          t          t                    z
  }|r*                    d	t          j
        |          z             t          D ]}|                    |g           }|ret          |          d
k    r2t          t          |                   }                    d|z                                 d            ||           |j        } |d          p |d          p
 |d           }	s|	rt          t	          d          t!          j                    j                  }
|
r*                    d                               |
                               t	          d                     t)          t*                    \  }}t          |                                          t          t,                    z
  }|r*                    dt          j
        |          z             t,          D ]}|                    |g           }|r|t          |          d
k    r2t          t.          |                   }                    d|z                                 d           |D ]\  }}                    d||fz              j        rn.j        rh                    dt1          t	          d          j        j                  z             dk    r"                    t	          d                     ndk    r#                    t	          d                     nr(s&                    t	          d          z             nlr>r<                                v r&                    t	          d          z             n,                    t	          d          rdz   pdz             S )Ns   no commands defined
rs   s   basic commands:

ro   s,   debug commands (internal and unsupported):

s   list of commands:
c                     t          |           } | D ]\}|}j        rd                    |                   }|                    dd          }                    d||         fz             ]d S )Nr      :s   \:r   )r'   r=   r>   r   r+   )cmdsr   display_cmdr   r1   r   r   s      r#   
appendcmdsz+help_.<locals>.helplist.<locals>.appendcmdsQ  s    $<<D @ @: 6"'**T!W"5"5K)11$??

=K1+>>????@ @r%   )rs   ro   s/   help categories missing from CATEGORY_ORDER: %sr   s   
%s:
r   keywordr   	extensionr6   r7   s   
additional help topics:
s5   help categories missing from TOPIC_CATEGORY_ORDER: %sr   r   r   s/   
(use 'hg help' for the full list of commands)
sF   
(use 'hg help' for the full list of commands or 'hg -v' for details)
s/   
(use 'hg help %s' to show the full help text)
sF   
(use 'hg help -v -e %s' to show built-in aliases and global options)
sB   
(use 'hg help -v%s' to show built-in aliases and global options)
r&   r%   )r   r   r   r+   r   setkeysCATEGORY_ORDER	develwarnr   forcebytestrr   rG   r   CATEGORY_NAMESr3   r
   r;   r=   r:   r   r   TOPIC_CATEGORY_ORDERTOPIC_CATEGORY_NAMESri   r  )r   optsr   r  missing_orderr   catfnscatnameexanyoptsr.   r   	topicsynstopicstr"   r   r1   r   r   r	  r2   r   s                   @@@r#   r  zhelp_.<locals>.helplist=  s~   /f
 
a  	8 8

1566777J x 	6|##

13445555!!

1NOOPPPP

1344555	@ 	@ 	@ 	@ 	@ 	@ 	@ 	@ +++JqMMMM  		,,s>/B/BBM F -m<<=   & ' '#r** '4yy1}}").*=">">

:#7888JJu%%%Jv&&&X"Y--I9(HK#I 	> 	>())"$$!z  D
  !

5!!!

4   JJq788999#<R#K#K Iy  	 0 011C8L4M4MMM L -m<<=   , > >"sB// >9~~))")*>s*C"D"D

:#7888JJu%%%#) > >4

=At9#<====8 )	Z '	JJ'(((*=rz2    |##

JKK   |##

5      d 

JKK     $ 4499;;#6#6

9  	    

1  +t2s	4   
r%   c                     d\  }}r]| t           v rTt           |          D ]\  }}}|v r nt          fdt           |          D                       st          j        |           |s2t          D ]}|dd         \  }}}| |v r nt          j        |           t          j        |          g}|s%|                    dt          d          z             t          |          r*|d  |	          
                                D             z  }	j        st          d          }t          ||           	 t          j        | j                   |                    t          d	          | | fz             n# t          j        $ r Y nw xY w|S )
N)NNc              3   ,   K   | ]}|d          v V  dS )r   Nr   )r    r   r  s     r#   r$   z+help_.<locals>.helptopic.<locals>.<genexpr>  s,      AAAx1Q4'AAAAAAr%   r   r          %s
r   c                     g | ]}d |z  S )r(  r   )r    r   s     r#   r   z,help_.<locals>.helptopic.<locals>.<listcomp>  s    BBBK!OBBBr%   :   (some details hidden, use --verbose to show complete help)s4   
use 'hg help -c %s' to see help for the %s command
)	subtopicsr)   r	   r   r   r   re   r+   r   rV   r9   r=   rm   r   r   r   )
r2   r  r-   r?   r   r}   r1   rk   r   r   s
    `      r#   	helptopiczhelp_.<locals>.helptopic  s     	1	))&/o  "vsu$$E %AAAA4AAAAA 1*4000 	1" 1 1%*1Q3Z"vs5==E ! *4000v&&'  	EJJ{Q'B%C%CCDDDC== 	CBBSSWW-?-?-A-ABBBBCz 	*+ G C)))	OD(.111JJKLL,    # 	 	 	D	
s   7AE9 9F
Fc                 T   	 t          j        |           }t          t          j        |                    pt          d          }n<# t          $ r/ d }t          j        |           }|st          j	        |           Y nw xY wd|vr|d}}n|
                    dd          \  }}t          d          |                     d          d         |fz  g}|r=|                    |                    d                     |                    d           j        st          d	          }t!          ||           |rK	 |j        }n# t$          $ r i }Y nw xY wd
 |D             }	|                     
|	j                             n"|                    t          d                     |S )Ns   no help text availabler   r%   r   s   %s extension - %s

rD   rB   Tr*  c                 D    h | ]}|                     d           d         S )   |r   )	partition)r    r   s     r#   	<setcomp>z)help_.<locals>.helpext.<locals>.<setcomp>  s)    888q{{4((+888r%   B   (use 'hg help extensions' for information on enabling extensions)
)r
   rF   r   r   r   r   r  disabled_helpr	   r   rH   r   r:   r9   r+   r=   rm   r   AttributeError__contains__)r2   r  r   r?   headtailr1   rk   ctmodcmdsr  r   s             r#   helpextzhelp_.<locals>.helpext  s   	1/$''C(/#..//O15N3O3OCC 	1 	1 	1C*400C 1*40001 1	1 c$DD5!,,JD$)**dood.C.CB.G-NNO 	JJtt,,---JJuz 	*+ G C))) 	\!   88R888GJJxx 4556666JJ&    
s$   AA 6B B<E EEc                 D   t          j        |                     dd                    \  }}}t          j        |          }t          t          d          |z  ||idd          }|                    d           |                    t          d                     |S )	N   uis   stricts,   '%s' is provided by the following extension:   T)r/   r0   r   r2  )r
   disabledcmdrR   r   r   r3   r   r+   )r2   r  rx   extr?   r1   r   s         r#   r
  zhelp_.<locals>.helpextcmd  s    ".bmmE955
 
S# "3''=>>D#J	
 
 
 	

5

! 	
 	
 	
 
r%   s   keywordc              3   (   K   | ]}|         V  d S r   r   )r    or  s     r#   r$   zhelp_.<locals>.<genexpr>*  s'      !8!8a$q'!8!8!8!8!8!8r%   r%   r   r5   s
   Extensionss   commandr   s   Commandsr   s   Topicsr   s   Extension Commandss   %s:

r   r   s
   no matchess"   try 'hg help' for a list of topics)hintrs   s   no such help topic: %ss   try 'hg help --keyword %s's   Mercurial Distributed SCM
r   )r   byteskwargsr   r)   r   r   r+   r:   r   rZ   r'   r	   
InputErrorr   r   	strkwargsr>   )r   r   r2   r   r	  r  fullnamer  r  r,  r:  r1   rz   matches	helpareasr%  titler  rB  queriesr   
formatnamehintnamer
  r  s   `````  `               @@r#   help_rM    sf    %%Dc c c c c c c c c c cJ        B) ) ) ) ) ) )V( ( ( ( ( ( (T     * C	*		B	 :?T\c!8!8!8!84!8!8!888\R4;377	88L!! 	==!M*:*:;<<I88J 	9;+788I 	AiLL)ann-- 0 01%q)>'?'?@	I " 	" 	"HAuqz "

:-...

7,VGAJ-?-?CCDDD

5!!! 	3M""C:;;D"3T2222	3 
 #?$,&& 	$
|#G88L!! 	!y G88J 	!y G 	@ '7J?G 	7 	7Aah'''     7*4000 &!)JJ!%J $'HH#H122Z?677(B&s6666# ( x 	=344e<C

88==H$6t$<$<==>>>88C==s   /H==IIc                 ,   |g }nt          |          }dx}x}}	|s|                    d          }
|
                    d          }|
r|t          v r|
                    d          }|
r't	          j        d                    |
                    }	|                     dd          }|                                 dz
  }|dk    s||k     r|}t          | ||f||||d|}t          j        ||          \  }}d	|v r|                    d
           n|                    d           t          j        ||          \  }}|	rt          j        ||	          }|	r(|r|s$t          j        t!          d          |z            t          j        ||          S )zget help for a given topic (as a dotted name) as rendered rst

    Either returns the rendered help text or raises an exception.
    NrD   r   r<  s	   textwidthrE   )rF  r  r   r	  )keeps   verboses   omitteds
   notomitteds   help section not found: %s)rX   rH   popr+  r   r   r>   	configint	termwidthrM  r   parser+   filtersectionsr	   rD  r   formatplain)r   r   rF  rO  r   r	  r  r2   r  re   	nameparts	textwidthrR  rI   blockspruneds                   r#   formattedhelprZ  i  s    |Dzz !%$D$8gNN4((	}}Q 	(** }}Q''H 	;nTYYy%9%9::GUL11I"IA~~Y..	
	 	 	 	 	D ]4d333NFFVJM"""]4d333NFF 9'88
  L L4 Lq!>??(JKKKvy111r%   )r   Fr   )F)FTNN)NFT)Vr   r   r   i18nr   r   r   r    r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   hgwebr   utilsr   r   r   r*   r   CATEGORY_REPO_CREATIONCATEGORY_REMOTE_REPO_MANAGEMENTCATEGORY_COMMITTINGCATEGORY_CHANGE_MANAGEMENTCATEGORY_CHANGE_ORGANIZATIONCATEGORY_FILE_CONTENTSCATEGORY_CHANGE_NAVIGATIONCATEGORY_WORKING_DIRECTORYCATEGORY_IMPORT_EXPORTCATEGORY_MAINTENANCECATEGORY_HELPCATEGORY_MISCr   r  r  TOPIC_CATEGORY_IDSTOPIC_CATEGORY_OUTPUTTOPIC_CATEGORY_CONFIGTOPIC_CATEGORY_CONCEPTSTOPIC_CATEGORY_MISCr   r  r  r3   r@   rM   ri   rm   r{   r~   r   r8   r'   r   r   r   r+  r   r   r   r   bundlecompressiontopicsr   internalsdockeywordsfiltersfuncsr   r   r   r   rM  rZ  r   r%   r#   <module>ru     sp       				                                                 $                AmAoA
" ,5)02,00,*###& ,.D57V)+=02F02H24J02Q,.H,.E*,E#W#%>#%>"  ! ! %      0.5[)0 
 
 
 
  $3 3 35 5 5pP P P P  .E E EF F FR      NA$%%GL666	

 qq}}ggj&N&N&NO
qq}}ggj&N&N&NO
AAgJJ E E EF
aa	llGGIl$K$K$KLAoGOL999	
 KA!""GIl333	
 A())GN<888	
 L)AGM,777	
 OAmGM,777	
 A())GOL999	
 LAGJ|444	
 AGOL999	
   A"##G&|<<<	
 A())G%l;;;	
o<> >B	 	 	 F OA$%%GM""#		
 JA#$$GH!		
  A$%%GI!		
 OA$%%GM""		
 JAoGH!		
 JA#$$GH!		
 MA#$$GK  		
 V$A&''GN##!		
   A%&&GL!!	
  
 A"##GG!		
 *%A%&&GK  		
 JAoGH!		
 :99AnGN##!		
 A@@A  GL!!!		
 AAlOOWWW%5%57IJOA*++!		
 *%A !!GK  #		
 JA"##GH!		
 MAkNNGK  #		
 )$A233GK  		
 KA$%%GI#		
 NA899GL!!#		
 NA<==GL!!		
 NA011		
 JAGH!		
o]_ _	F .	 	5 5 5( ( ( (8    !'K'))  
 3W_ E E E -y/E   4fn E E E 2J4G H H H 1?3J K K K 3]5H I I I %{';D   
< < <   :  $ Y & & & 	_ _ _ _F ?C42 42 42 42 42 42r%   